Home | History | Annotate | Download | only in mac
      1 2006-02-09  Tim Omernick  <timo (a] apple.com>
      2 
      3         Reviewed by Darin Adler.
      4 
      5         <rdar://problem/4198378> Crash on a CFRelease when visiting http://www.akella.com/
      6 
      7         * Plugins/WebBaseNetscapePluginView.m:
      8         (-[WebBaseNetscapePluginView requestWithURLCString:]):
      9 	The true source of this crash is that the URL string is sometimes not NULL-terminated, which is the
     10 	Real Player plugin's fault.  That has been filed as 4439591.
     11 	However, we can be more bulletproof here by switching the URL string encoding from Windows Latin 1
     12 	to ISO Latin 1, so that any NULL-terminated string can be represented.  (As Darin and I found out
     13 	last night, Windows Latin 1 has "holes" in certain character ranges and	thus cannot encode arbitrary
     14 	C strings).
     15 
     16 2006-02-09  Maciej Stachowiak  <mjs (a] apple.com>
     17 
     18         Rubber stamped by Anders. 
     19         
     20         - Moved all the default delegate classes to their own directory.
     21 
     22         * DefaultDelegates: Added.
     23         * DefaultDelegates/WebDefaultContextMenuDelegate.h: Added.
     24         * DefaultDelegates/WebDefaultContextMenuDelegate.m: Added.
     25         * DefaultDelegates/WebDefaultEditingDelegate.h: Added.
     26         * DefaultDelegates/WebDefaultEditingDelegate.m: Added.
     27         * DefaultDelegates/WebDefaultFrameLoadDelegate.h: Added.
     28         * DefaultDelegates/WebDefaultFrameLoadDelegate.m: Added.
     29         * DefaultDelegates/WebDefaultPolicyDelegate.h: Added.
     30         * DefaultDelegates/WebDefaultPolicyDelegate.m: Added.
     31         * DefaultDelegates/WebDefaultResourceLoadDelegate.h: Added.
     32         * DefaultDelegates/WebDefaultResourceLoadDelegate.m: Added.
     33         * DefaultDelegates/WebDefaultScriptDebugDelegate.h: Added.
     34         * DefaultDelegates/WebDefaultScriptDebugDelegate.m: Added.
     35         * DefaultDelegates/WebDefaultUIDelegate.h: Added.
     36         * DefaultDelegates/WebDefaultUIDelegate.m: Added.
     37         * WebKit.xcodeproj/project.pbxproj:
     38         * WebView/WebDefaultContextMenuDelegate.h: Removed.
     39         * WebView/WebDefaultContextMenuDelegate.m: Removed.
     40         * WebView/WebDefaultEditingDelegate.h: Removed.
     41         * WebView/WebDefaultEditingDelegate.m: Removed.
     42         * WebView/WebDefaultFrameLoadDelegate.h: Removed.
     43         * WebView/WebDefaultFrameLoadDelegate.m: Removed.
     44         * WebView/WebDefaultPolicyDelegate.h: Removed.
     45         * WebView/WebDefaultPolicyDelegate.m: Removed.
     46         * WebView/WebDefaultResourceLoadDelegate.h: Removed.
     47         * WebView/WebDefaultResourceLoadDelegate.m: Removed.
     48         * WebView/WebDefaultScriptDebugDelegate.h: Removed.
     49         * WebView/WebDefaultScriptDebugDelegate.m: Removed.
     50         * WebView/WebDefaultUIDelegate.h: Removed.
     51         * WebView/WebDefaultUIDelegate.m: Removed.
     52 
     53 2006-02-08  Justin Garcia  <justin.garcia (a] apple.com>
     54 
     55         Original patch by Graham Dennis, reviewed by me:
     56         
     57         <http://bugs.webkit.org/show_bug.cgi?id=3982>
     58         webViewDidBeginEditing, webViewDidEndEditing notification methods not called on delegate
     59         
     60         Changes made by me, reviewed by thatcher:
     61         
     62         Made _setWindowHasFocus: and _setDisplaysWithFocusAttributes: into private SPI to allow
     63         for the testing of window.onFocus, window.onBlur, caret and focus halo painting, and 
     64         the focusing of content editable regions that happens as side effect of setting a selection,
     65         but only if the window has focus (7128).
     66 
     67         * WebCoreSupport/WebFrameBridge.m:
     68         (-[WebFrameBridge didBeginEditing]):
     69         (-[WebFrameBridge didEndEditing]):
     70         * WebView/WebHTMLView.m:
     71         (-[WebHTMLView updateFocusState]):
     72         (-[WebHTMLView _setWindowHasFocus:]):
     73         (-[WebHTMLView _setDisplaysWithFocusAttributes:]):
     74         * WebView/WebHTMLViewPrivate.h:
     75 
     76 2006-02-08  David Kilzer  <ddkilzer (a] kilzer.net>
     77 
     78         Reviewed by Darin.
     79 
     80         - Fix http://bugs.webkit.org/show_bug.cgi?id=3527
     81         Allow Safari to open postscript files in browser windows as well
     82 
     83         * WebView/WebPDFRepresentation.m:
     84         (+[WebPDFRepresentation postScriptMIMETypes]): Added.
     85         (+[WebPDFRepresentation supportedMIMETypes]): Include PostScript MIME types.
     86         (-[WebPDFRepresentation convertPostScriptDataSourceToPDF:]): Added.
     87         (-[WebPDFRepresentation finishedLoadingWithDataSource:]):
     88         Handle PostScript conversion using new convertPostScriptDataSourceToPDF method.
     89 
     90 2006-02-07  Alexey Proskuryakov  <ap (a] nypop.com>
     91 
     92         Reviewed by Timothy.
     93 
     94         Convert JavaScript objects to appropriate AppleScript types, instead of only strings
     95         http://bugs.webkit.org/show_bug.cgi?id=7012
     96 
     97         Tests: fast/AppleScript/*
     98 
     99         * WebView/WebView.m:
    100         (-[WebView aeDescByEvaluatingJavaScriptFromString:]): Added.
    101         * WebView/WebViewPrivate.h:
    102 
    103 2006-02-06  Maciej Stachowiak  <mjs (a] apple.com>
    104 
    105         Reviewed by Eric.
    106 
    107         - fixed "remove frame, renderer and completed flag from ChildFrame, make Frame track these"
    108         http://bugs.webkit.org/show_bug.cgi?id=7125
    109         
    110         - fixed "onload event never called for iframe element with emtpy or about:blank src"
    111         http://bugs.webkit.org/show_bug.cgi?id=3609
    112 
    113         * WebCoreSupport/WebFrameBridge.h:
    114         * WebCoreSupport/WebFrameBridge.m:
    115         (-[WebFrameBridge initWithPage:webView:renderer:frameName:view:]): Pass along renderer.
    116         (-[WebFrameBridge createChildFrameNamed:withURL:referrer:renderPart:allowsScrolling:marginWidth:marginHeight:]): Pass along renderer.
    117         * WebCoreSupport/WebPageBridge.m:
    118         (-[WebPageBridge initWithMainFrameName:webView:frameView:]): Pass null for renderer.
    119         * WebView/WebView.m:
    120         * WebView/WebViewPrivate.h:
    121 
    122 2006-02-06  John Sullivan  <sullivan (a] apple.com>
    123 
    124         Reviewed by Maciej Stachowiak.
    125 
    126         * WebView/WebPDFView.m:
    127         (-[WebPDFView menuForEvent:]):
    128         Removed use of WKExecutableLinkedInTigerOrEarlier() by modifying backward-compatibility
    129         hack involving PDF view context menus. Now we only bother to make sure that the PDFKit-
    130         supplied context menu items are present in Safari, for the benefit of the open source
    131         folks using tip of tree WebKit but older released Safari; it's possible that some other
    132         existing WebKit apps won't show all the PDF view context menu items.
    133 
    134 2006-02-06  Maciej Stachowiak  <mjs (a] apple.com>
    135 
    136         Remove remaining .subproj references to fix release build.
    137 
    138         * WebKit.xcodeproj/project.pbxproj:
    139 
    140 2006-02-06  Maciej Stachowiak  <mjs (a] apple.com>
    141 
    142         Rubber stamped by Hyatt.
    143         
    144         - renamed subproject directories to not end with .subproj
    145 
    146         * Carbon: renamed from Carbon.subproj
    147         * DOM: renamed from DOM.subproj
    148         * History: renamed from History.subproj
    149         * Misc: renamed from Misc.subproj
    150         * Panels: renamed from Panels.subproj
    151         * Plugins: renamed from Plugins.subproj
    152         * WebCoreSupport: renamed from WebCoreSupport.subproj
    153         * WebInspector: renamed from WebInspector.subproj
    154         * WebView: renamed from WebView.subproj
    155         
    156 2006-02-06  Maciej Stachowiak  <mjs (a] apple.com>
    157 
    158         Ooops, I made a last-minute change to my last patch that broke the build - fixed.
    159 
    160         * WebView.subproj/WebFrame.m:
    161         (-[WebFrame _closeOldDataSources]):
    162         (-[WebFrame _detachFromParent]):
    163         (-[WebFrame _transitionToCommitted:]):
    164         (-[WebFrame _checkLoadCompleteForThisFrame]):
    165         (-[WebFrame _handledOnloadEvents]):
    166         (-[WebFrame _loadItem:withLoadType:]):
    167         (-[WebFrame _goToItem:withLoadType:]):
    168         (-[WebFrame _continueFragmentScrollAfterNavigationPolicy:formState:]):
    169         (-[WebFrame _clientRedirectedTo:delay:fireDate:lockHistory:isJavaScriptFormAction:]):
    170         (-[WebFrame _clientRedirectCancelled:]):
    171         * WebView.subproj/WebFramePrivate.h:
    172 
    173 2006-02-05  Maciej Stachowiak  <mjs (a] apple.com>
    174 
    175         Reviewed by Darin.
    176         
    177         - shuffle things around so that WebFrame no longer has a WebView backpointer, the backpointer is
    178         at the bridge level.
    179         http://bugs.webkit.org/show_bug.cgi?id=7093
    180 
    181         * WebCoreSupport.subproj/WebFrameBridge.h:
    182         * WebCoreSupport.subproj/WebFrameBridge.m:
    183         (-[WebFrameBridge initWithPage:webView:frameName:view:]):
    184         (-[WebFrameBridge page]):
    185         (-[WebFrameBridge mainFrame]):
    186         (-[WebFrameBridge webView]):
    187         (-[WebFrameBridge createWindowWithURL:frameName:]):
    188         (-[WebFrameBridge showWindow]):
    189         (-[WebFrameBridge areToolbarsVisible]):
    190         (-[WebFrameBridge setToolbarsVisible:]):
    191         (-[WebFrameBridge isStatusbarVisible]):
    192         (-[WebFrameBridge setStatusbarVisible:]):
    193         (-[WebFrameBridge setWindowFrame:]):
    194         (-[WebFrameBridge windowFrame]):
    195         (-[WebFrameBridge setWindowContentRect:]):
    196         (-[WebFrameBridge windowContentRect]):
    197         (-[WebFrameBridge setWindowIsResizable:]):
    198         (-[WebFrameBridge windowIsResizable]):
    199         (-[WebFrameBridge firstResponder]):
    200         (-[WebFrameBridge makeFirstResponder:]):
    201         (-[WebFrameBridge closeWindowSoon]):
    202         (-[WebFrameBridge runJavaScriptAlertPanelWithMessage:]):
    203         (-[WebFrameBridge runJavaScriptConfirmPanelWithMessage:]):
    204         (-[WebFrameBridge canRunBeforeUnloadConfirmPanel]):
    205         (-[WebFrameBridge runBeforeUnloadConfirmPanelWithMessage:]):
    206         (-[WebFrameBridge runJavaScriptTextInputPanelWithPrompt:defaultText:returningText:]):
    207         (-[WebFrameBridge addMessageToConsole:]):
    208         (-[WebFrameBridge runOpenPanelForFileButtonWithResultListener:]):
    209         (-[WebFrameBridge setStatusText:]):
    210         (-[WebFrameBridge startLoadingResource:withURL:customHeaders:]):
    211         (-[WebFrameBridge startLoadingResource:withURL:customHeaders:postData:]):
    212         (-[WebFrameBridge syncLoadResourceWithURL:customHeaders:postData:finalURL:responseHeaders:statusCode:]):
    213         (-[WebFrameBridge focusWindow]):
    214         (-[WebFrameBridge createChildFrameNamed:withURL:referrer:renderPart:allowsScrolling:marginWidth:marginHeight:]):
    215         (-[WebFrameBridge userAgentForURL:]):
    216         (-[WebFrameBridge _nextKeyViewOutsideWebFrameViewsWithValidityCheck:]):
    217         (-[WebFrameBridge previousKeyViewOutsideWebFrameViews]):
    218         (-[WebFrameBridge defersLoading]):
    219         (-[WebFrameBridge setDefersLoading:]):
    220         (-[WebFrameBridge viewForPluginWithURL:attributeNames:attributeValues:MIMEType:]):
    221         (-[WebFrameBridge _preferences]):
    222         (-[WebFrameBridge selectWordBeforeMenuEvent]):
    223         (-[WebFrameBridge historyLength]):
    224         (-[WebFrameBridge canGoBackOrForward:]):
    225         (-[WebFrameBridge goBackOrForward:]):
    226         (-[WebFrameBridge print]):
    227         (-[WebFrameBridge pollForAppletInView:]):
    228         (-[WebFrameBridge respondToChangedContents]):
    229         (-[WebFrameBridge respondToChangedSelection]):
    230         (-[WebFrameBridge undoManager]):
    231         (-[WebFrameBridge issueCutCommand]):
    232         (-[WebFrameBridge issueCopyCommand]):
    233         (-[WebFrameBridge issuePasteCommand]):
    234         (-[WebFrameBridge issuePasteAndMatchStyleCommand]):
    235         (-[WebFrameBridge canPaste]):
    236         (-[WebFrameBridge overrideMediaType]):
    237         (-[WebFrameBridge isEditable]):
    238         (-[WebFrameBridge shouldChangeSelectedDOMRange:toDOMRange:affinity:stillSelecting:]):
    239         (-[WebFrameBridge shouldBeginEditing:]):
    240         (-[WebFrameBridge shouldEndEditing:]):
    241         (-[WebFrameBridge windowObjectCleared]):
    242         (-[WebFrameBridge spellCheckerDocumentTag]):
    243         (-[WebFrameBridge isContinuousSpellCheckingEnabled]):
    244         (-[WebFrameBridge didFirstLayout]):
    245         (-[WebFrameBridge dashboardRegionsChanged:]):
    246         (-[WebFrameBridge createModalDialogWithURL:]):
    247         (-[WebFrameBridge canRunModal]):
    248         (-[WebFrameBridge runModal]):
    249         * WebCoreSupport.subproj/WebPageBridge.h:
    250         * WebCoreSupport.subproj/WebPageBridge.m:
    251         (-[WebPageBridge initWithMainFrameName:webView:frameView:]):
    252         (-[WebPageBridge webView]):
    253         * WebView.subproj/WebDataSource.m:
    254         (-[WebDataSource _fileWrapperForURL:]):
    255         (-[WebDataSource _webView]):
    256         (-[WebDataSource _setLoading:]):
    257         (-[WebDataSource _startLoading:]):
    258         (-[WebDataSource _setTitle:]):
    259         (-[WebDataSource _setRequest:]):
    260         (-[WebDataSource _updateIconDatabaseWithURL:]):
    261         (-[WebDataSource _defersCallbacksChanged]):
    262         (-[WebDataSource _setWebFrame:]):
    263         * WebView.subproj/WebDataSourcePrivate.h:
    264         * WebView.subproj/WebFrame.m:
    265         (-[WebFrame _traverseNextFrameStayWithin::]):
    266         (-[WebFrame _detachFromParent]):
    267         (-[WebFrame _setDataSource:]):
    268         (-[WebFrame _loadDataSource:withLoadType:formState:]):
    269         (-[WebFrame _initWithWebFrameView:webView:bridge:]):
    270         (-[WebFrame dealloc]):
    271         (-[WebFrame finalize]):
    272         (-[WebFrame webView]):
    273         * WebView.subproj/WebFrameView.m:
    274         (-[WebFrameView _webView]):
    275         (-[WebFrameView _goBack]):
    276         (-[WebFrameView _goForward]):
    277         * WebView.subproj/WebFrameViewInternal.h:
    278         * WebView.subproj/WebView.m:
    279         (-[WebView _createFrameNamed:inParent:allowsScrolling:]):
    280         (-[WebView _commonInitializationWithFrameName:groupName:]):
    281 
    282 2006-02-04  Darin Adler  <darin (a] apple.com>
    283 
    284         Reviewed by Maciej.
    285 
    286         * Misc.subproj/WebCoreStatistics.h:
    287         * Misc.subproj/WebCoreStatistics.m:
    288         (+[WebCoreStatistics javaScriptRootObjectTypeCounts]):
    289         javaScriptRootObjecTypeCounts -> javaScriptRootObjectTypeCounts
    290 
    291 2006-02-04  Maciej Stachowiak  <mjs (a] apple.com>
    292 
    293         Reviewed by Hyatt.
    294 
    295         - change JavaScript collector statistics calls to use HashCountedSet instead
    296         of CFSet; other misc cleanup
    297         http://bugs.webkit.org/show_bug.cgi?id=7072
    298 
    299         * Misc.subproj/WebCoreStatistics.h:
    300         * Misc.subproj/WebCoreStatistics.m:
    301         (+[WebCoreStatistics javaScriptProtectedObjectsCount]): new
    302         (+[WebCoreStatistics javaScriptRootObjecTypeCounts]): new
    303         (+[WebCoreStatistics javaScriptRootObjectClasses]): deprecated
    304         (+[WebCoreStatistics javaScriptReferencedObjectsCount]): deprecated
    305         (+[WebCoreStatistics javaScriptNoGCAllowedObjectsCount]): Just return 0. Deprecated.
    306 
    307 2006-02-03  Maciej Stachowiak  <mjs (a] apple.com>
    308 
    309         Reviewed by Darin.
    310         
    311         - change spellchecker preflighting to happen via class methods instead of
    312         object methods.
    313 
    314         * WebView.subproj/WebView.m:
    315         (-[WebView setContinuousSpellCheckingEnabled:]):
    316         (+[WebView _preflightSpellCheckerNow:]):
    317         (+[WebView _preflightSpellChecker]):
    318 
    319 2006-02-03  Timothy Hatcher  <timothy (a] apple.com>
    320 
    321         Reviewed by Justin.
    322 
    323         Renamed configuration names to Debug, Release and Production.
    324 
    325         * WebKit.xcodeproj/project.pbxproj:
    326 
    327 2006-02-02  David Hyatt  <hyatt (a] apple.com>
    328 
    329 	Fix for bug 6957, rewrite image rendering in C++ and move it to
    330         WebCore.  Animation now stops lazily and just uses the CachedObject
    331         notification system to push updates so that rects no longer need to
    332         be cached (or sets of animating renderers in specific views).
    333 
    334         Reviewed by darin
    335 
    336         * Misc.subproj/WebNSPasteboardExtras.h:
    337         * Misc.subproj/WebNSPasteboardExtras.m:
    338         (-[NSPasteboard _web_writeImage:element:URL:title:archive:types:]):
    339         (-[NSPasteboard _web_declareAndWriteDragImage:element:URL:title:archive:source:]):
    340         * Misc.subproj/WebNSViewExtras.h:
    341         * Misc.subproj/WebNSViewExtras.m:
    342         (-[NSView _web_dragImage:element:rect:event:pasteboard:source:offset:]):
    343         * WebCoreSupport.subproj/WebImageData.m:
    344         (-[WebImageData init]):
    345         * WebCoreSupport.subproj/WebImageRendererFactory.m:
    346         (+[WebImageRendererFactory shouldUseThreadedDecoding]):
    347         (+[WebImageRendererFactory setShouldUseThreadedDecoding:]):
    348         (-[WebImageRendererFactory setPatternPhaseForContext:inUserSpace:]):
    349         (-[WebImageRendererFactory imageDataForName:]):
    350         * WebView.subproj/WebHTMLView.m:
    351         (-[WebHTMLView _startDraggingImage:at:operation:event:sourceIsDHTML:DHTMLWroteData:]):
    352         (-[NSArray elementAtPoint:]):
    353         * WebView.subproj/WebImageView.m:
    354         (-[WebImageView writeImageToPasteboard:types:]):
    355         (-[WebImageView elementAtPoint:]):
    356         (-[WebImageView mouseDragged:]):
    357         * WebView.subproj/WebView.m:
    358         (-[WebView _writeImageElement:withPasteboardTypes:toPasteboard:]):
    359 
    360 2006-01-31  John Sullivan  <sullivan (a] apple.com>
    361 
    362         Reviewed by Tim Omernick.
    363         
    364         - fixed <rdar://problem/4267144> REGRESSION (10.4.2): Safari pages auto-scroll too easily 
    365         during drag over content [5853]
    366         
    367         There were two issues here:
    368         (1) dragging over a non-editable webview (such as a typical Safari page) should not have
    369         auto-scrolled at all; the fact that it did was an uninentional side effect of making
    370         auto-scroll work for editable webviews a la Blot.
    371         (2) the speed & hot area of the auto-scroll changed between 10.4.1 and 10.4.2.
    372         
    373         I have a fix for (1), which is the much more important issue. I'll modify the bugzilla bug
    374         to be about the remaining issue.
    375 
    376         * WebView.subproj/WebView.m:
    377         (-[WebView _autoscrollForDraggingInfo:timeDelta:]):
    378         do nothing if not editable
    379         (-[WebView _shouldAutoscrollForDraggingInfo:]):
    380         return NO if not editable
    381 
    382 2006-01-31  John Sullivan  <sullivan (a] apple.com>
    383 
    384         Reviewed by Tim Omernick.
    385         
    386         Support for programmatic scrolling one line at a time for PDFs. (We already had support for
    387         programmatic scrolling one page at a time, and to top/end.)
    388 
    389         * WebView.subproj/WebPDFView.m:
    390         (-[WebPDFView _fakeKeyEventWithFunctionKey:]):
    391         generalized comment
    392         (-[WebPDFView scrollLineDown:]):
    393         pass a faked arrow-down key event
    394         (-[WebPDFView scrollLineUp:]):
    395         pass a faked arrow-up key event
    396 
    397 2006-01-31  Darin Adler  <darin (a] apple.com>
    398 
    399         Reviewed by Hyatt.
    400 
    401         * WebCoreSupport.subproj/WebFrameBridge.m:
    402         (-[WebFrameBridge createChildFrameNamed:withURL:referrer:renderPart:allowsScrolling:marginWidth:marginHeight:]):
    403         Updated for name change.
    404 
    405 2006-01-30  Timothy Hatcher  <timothy (a] apple.com>
    406 
    407         Reviewed by Tim O.
    408 
    409         Add -Wno-deprecated-declarations to the compile flags for WebNetscapePluginPackage.m.
    410         <rdar://problem/4427068> LMGetCurApRefNum, CloseConnection and GetDiskFragment now deprecated.
    411         When we workaround these we can remove this compile flag.
    412 
    413         * WebKit.xcodeproj/project.pbxproj:
    414 
    415 2006-01-30  Timothy Hatcher  <timothy (a] apple.com>
    416 
    417         Reviewed by Justin.
    418 
    419         Remove the only use of -[NSFont glyphPacking]. This method was deprecated in Tiger
    420         and always returns NSNativeShortGlyphPacking.
    421 
    422         * WebCoreSupport.subproj/WebTextRenderer.m:
    423         (-[WebTextRenderer initWithFont:]):
    424 
    425 2006-01-28  David Hyatt  <hyatt (a] apple.com>
    426 
    427         Clean up RenderImage, eliminating unneeded members and methods.
    428 	
    429         Reviewed by darin
    430 
    431         * WebCoreSupport.subproj/WebImageRenderer.h:
    432         * WebCoreSupport.subproj/WebImageRenderer.m:
    433         (-[WebImageRenderer copyWithZone:]):
    434         (-[WebImageRenderer size]):
    435         (-[WebImageRenderer drawImageInRect:fromRect:compositeOperator:context:]):
    436 
    437 2006-01-26  Tim Omernick  <timo (a] apple.com>
    438 
    439         Reviewed by John Sullivan.
    440 
    441 	<rdar://problem/4422365>
    442 
    443         * WebView.subproj/WebHTMLView.m:
    444         (-[NSArray addSuperviewObservers]):
    445         In addition to registering for frame/bounds change notifications, call -_frameOrBoundsChanged.
    446         It will check the current size/scroll against the previous layout's size/scroll.  We need to
    447         do this here to catch the case where the WebView is laid out at one size, removed from its
    448         window, resized, and inserted into another window.  Our frame/bounds changed notifications
    449         will not be sent in that situation, since we only watch for changes while in the view hierarchy.
    450 
    451 	I have verified that this does not cause unnecessary layouts while running the PLT.
    452 
    453 2006-01-25  Vicki Murley  <vicki (a] apple.com>
    454 
    455         Reviewed by Beth Dakin.
    456 
    457 	- fix <rdar://problem/4351664> REGRESSION (420+): extra URL in b/f list - navigating back to 
    458 	previous page fails at apple.com/retail/)
    459  
    460         * WebView.subproj/WebFrame.m:
    461         (-[WebFrame _loadURL:referrer:loadType:target:triggeringEvent:form:formValues:]): grab the 
    462 	redirect flag of the current load before calling _loadURL, which clears this flag, 
    463         (-[WebFrame _transitionToCommitted:]): remove misleading comment
    464         * History.subproj/WebHistoryItem.m:
    465         (-[WebHistoryItem setURL:]): release resources in the page cache when setting
    466         the URL on a WebHistoryItem
    467 
    468 2006-01-25  Timothy Hatcher  <timothy (a] apple.com>
    469 
    470         Move off of -[NSFont widthOfString:] since it is now deprecated.
    471         Use the NSStringDrawing -[NSString sizeWithAttributes:] API.
    472 
    473         * WebCoreSupport.subproj/WebFileButton.m:
    474         (-[WebFileChooserButton bestVisualFrameSizeForCharacterCount:]):
    475 
    476 2006-01-23  Darin Adler  <darin (a] apple.com>
    477 
    478         - fixed some small localizable strings issues
    479 
    480         * WebInspector.subproj/WebInspector.m:
    481         (-[DOMNode _nodeTypeName]): Changed so we don't have two localizable strings that
    482         are both "Document". I'm not sure we want to localize the DOM inspector UI at all,
    483         but this fixes things for now.
    484         (-[DOMNode _displayName]): Ditto.
    485 
    486         * English.lproj/Localizable.strings: Updated.
    487         * English.lproj/StringsNotToBeLocalized.txt: Updated for recent changes.
    488 
    489 2006-01-23  Justin Garcia  <justin.garcia (a] apple.com>
    490 
    491         Reviewed by thatcher
    492         
    493         Turned on -O2 for B&I build.
    494 
    495         * WebKit.xcodeproj/project.pbxproj:
    496 
    497 2006-01-22  Timothy Hatcher  <timothy (a] apple.com>
    498 
    499         Reviewed by Anders Carlsson.
    500         
    501         Makes the Inspector's Style pane take !important into account
    502         when marking overloaded properties.
    503 
    504         * WebInspector.subproj/webInspector/inspector.js:
    505 
    506 2006-01-21  Timothy Hatcher  <timothy (a] apple.com>
    507 
    508         Reviewed by Anders Carlsson.
    509 
    510         Make sure shorthand properties get striked-out if
    511         all the properties they expand into are overloaded.
    512 
    513         * WebInspector.subproj/webInspector/inspector.js:
    514 
    515 2006-01-21  Timothy Hatcher  <timothy (a] apple.com>
    516 
    517         Reviewed by Darin.
    518 
    519         Adds computed style to the Web Inspector.
    520         Adds a "mapped style" link to the mapped attributes.
    521 
    522         * WebInspector.subproj/webInspector/inspector.css:
    523         * WebInspector.subproj/webInspector/inspector.html:
    524         * WebInspector.subproj/webInspector/inspector.js:
    525 
    526 2006-01-20  Timothy Hatcher  <timothy (a] apple.com>
    527 
    528         Reviewed by John, some parts by Darin.
    529 
    530         Removes the old WebDebugDOMNode code, superseded by the ObjC DOM and the Web Inspector.
    531         Since Safari 2.0 still relies on these classes for the Debug menu's "Show DOM Tree", we remove
    532         that menu item to prevent a crash.
    533 
    534         * WebKit.exp: adds WebInspector, removes WebDebugDOMNode
    535         * WebKit.xcodeproj/project.pbxproj: added the REMOVE_SAFARI_DOM_TREE_DEBUG_ITEM define so the new WebView code doesn't build in the Default config
    536         * WebView.subproj/WebDebugDOMNode.h: Removed.
    537         * WebView.subproj/WebDebugDOMNode.m: Removed.
    538         * WebView.subproj/WebView.m:
    539         (+[WebView initialize]): check if we are in Safari and IncludeDebugMenu is true then observe for NSApplicationDidFinishLaunchingNotification and call _finishedLaunching
    540         (+[WebView _finishedLaunching]): observe for NSMenuDidAddItemNotification now that the main menu is loaded and wait for the Debug menu to be added
    541         (+[WebView _removeDOMTreeMenuItem:]): when the debug menu is added remove the "Show DOM Tree" item
    542 
    543 2006-01-20  Timothy Hatcher  <timothy (a] apple.com>
    544 
    545         Reviewed by Hyatt.
    546 
    547         Corrects the cascade order for mapped attributes.
    548         Shows "inline stylesheet" rather than "null" for rules in <style> tags.
    549 
    550         * WebInspector.subproj/webInspector/inspector.js:
    551 
    552 2006-01-19  Timothy Hatcher  <timothy (a] apple.com>
    553 
    554         Reviewed by Eric.
    555 
    556         Adds inline style reporting and mapped attribute support to the Inspector Style pane.
    557         Cleans up the node attributes area with a more natural attr = "value" look.
    558         Slight optimization to only update visible scrollbars during a window resize.
    559 
    560         * WebInspector.subproj/webInspector/inspector.css:
    561         * WebInspector.subproj/webInspector/inspector.js:
    562 
    563 2006-01-19  Timothy Hatcher  <timothy (a] apple.com>
    564 
    565         Reviewed by Darin.
    566         
    567         http://bugs.webkit.org/show_bug.cgi?id=6631
    568         Inspector window has inappropriate maximum height
    569 
    570         * WebInspector.subproj/WebInspector.m:
    571         (-[WebInspector window]): removes the maximum size constraint
    572 
    573 2006-01-19  John Sullivan  <sullivan (a] apple.com>
    574 
    575         Reviewed by Tim Omernick.
    576 
    577         * WebKit.xcodeproj/project.pbxproj:
    578         made WebNSUserDefaultsExtras.h private (SPI) so its one method can be called from
    579         Safari, so Safari can stop calling the similar method in Foundation.
    580 
    581 2006-01-19  John Sullivan  <sullivan (a] apple.com>
    582 
    583         Reviewed by Tim Omernick.
    584         
    585         Made _webKit_guessedMIMEType SPI so Safari can use it in order to stop using
    586         the similar SPI method in Foundation. This involved splitting it out of the file
    587         it was in, to avoid creating any other new SPI here. Poor svn diff got mighty
    588         confused in the process.
    589 
    590         * Misc.subproj/WebNSDataExtras.h:
    591         removed _webkit_guessedMIMEType from here
    592         * Misc.subproj/WebNSDataExtrasPrivate.h: 
    593         Added. Contains only _webkit_guessedMIMEType. This file is private (SPI), whereas
    594         WebNSDataExtras.h is project-internal. I could have renamed WebNSDateExtras.h to
    595         WebNSDateExtrasInternal.h also, but I minimized the gratuitous change level here
    596         by not doing that.
    597         
    598         * Misc.subproj/WebNSDataExtras.m:
    599         Despite the great confusion of svn diff, all I actually did here was move 
    600         _webkit_guessedMIMEType and its helper _webkit_guessedMIMETypeForXML into a new
    601         category. No lines of code were harmed while creating this patch.
    602 
    603         * WebKit.xcodeproj/project.pbxproj:
    604         updated for new file
    605 
    606         * WebView.subproj/WebView.m:
    607         Added #import for new file since WebView uses _webkit_guessedMIMEType
    608 
    609 2006-01-19  John Sullivan  <sullivan (a] apple.com>
    610 
    611         Reviewed by Tim Omernick.
    612 
    613         * Misc.subproj/WebNSURLExtras.h:
    614         added declaration of _webkit_rangeOfURLScheme so Safari can call it as a step
    615         towards weaning Safari from Foundation SPI.
    616 
    617 2006-01-17  Justin Garcia  <justin.garcia (a] apple.com>
    618 
    619         Reviewed by eric
    620         
    621         Deployment builds now use -O2
    622 
    623         * WebKit.xcodeproj/project.pbxproj:
    624 
    625 2006-01-17  Beth Dakin  <bdakin (a] apple.com>
    626 
    627         Reviewed by Darin.
    628 
    629         Fix for <rdar://problem/4112029> With Quartz scaling on, Safari incorrectly 
    630         handles mouseover effects
    631 
    632         The location of an event in the window should be converted to the superview 
    633         of the contentView to do accurate hitTesting.
    634 
    635         * WebView.subproj/WebHTMLView.m:
    636         (-[WebHTMLView _updateMouseoverWithEvent:]): Convert the point to the
    637         contentView's superview from nil. 
    638 
    639 2006-01-16  Timothy Hatcher  <timothy (a] apple.com>
    640 
    641         Rubber stamped by Maciej.
    642 
    643         Check for a new "WebKitDeveloperExtras" default when
    644         including the "Inspect Element" context menu item.
    645         We should retire the other one eventually.
    646 
    647         * WebView.subproj/WebView.m:
    648         (-[WebView _menuForElement:defaultItems:]):
    649 
    650 2006-01-17  Anders Carlsson  <andersca (a] mac.com>
    651 
    652         Reviewed by Timothy Hatcher.
    653 
    654         - http://bugs.webkit.org/show_bug.cgi?id=6594
    655         Web Inspector: finish node attributes
    656         
    657         * WebInspector.subproj/webInspector/inspector.css:
    658         * WebInspector.subproj/webInspector/inspector.html:
    659         * WebInspector.subproj/webInspector/inspector.js:
    660         Add initial support for element attributes.
    661 
    662 2006-01-16  John Sullivan  <sullivan (a] apple.com>
    663 
    664         Reviewed by Vicki Murley.
    665         
    666         - fixed <rdar://problem/4409288> REGRESSION (TOT): When no selection is present on page, 
    667         Jump to Selection doesn't beep
    668 
    669         * WebView.subproj/WebHTMLView.m:
    670         (-[WebHTMLView _hasInsertionPoint]):
    671         new helper method
    672         (-[NSArray validateUserInterfaceItem:]):
    673         Don't validate this menu item (or a couple of others) if the selection is a caret and
    674         the page isn't editable. In that state, there is no visible selection so this menu item
    675         doesn't make sense. I suspect this was broken by some editing-related change that makes
    676         selectionState return WebSelectionStateCaret here where it used to return WebSelectionStateNone.
    677 
    678 2006-01-16  Tim Omernick  <timo (a] apple.com>
    679 
    680         Reviewed by John Sullivan.
    681 
    682 	WebKit part of <rdar://problem/4211707> NPAPI ref count behavior differs with Mozilla
    683 
    684         * Plugins.subproj/WebBaseNetscapePluginView.m:
    685         (-[WebBaseNetscapePluginView getVariable:value:]):
    686 	The returned window script object is expected to be retained, as described here:
    687 	<http://www.mozilla.org/projects/plugins/npruntime.html#browseraccess>
    688 
    689 2006-01-16  Anders Carlsson  <andersca (a] mac.com>
    690 
    691         Reviewed by Darin.
    692 
    693         * WebInspector.subproj/webInspector/inspector.js:
    694         Use defined NodeType values instead of integers.
    695 
    696 2006-01-15  Timothy Hatcher  <timothy (a] apple.com>
    697 
    698         Reviewed by Darin.
    699  
    700         New DOM Inspector that lives in WebKit and is accessible from any WebView.
    701         Accessible from a contextual menu when the WebKitEnableInspectElementContextMenuItem default is
    702         true or you have a development build. Browsing the tree, serialized HTML and CSS rules work.
    703  
    704         To always enable enter the following in the Terminal (change the bundle id to affect other WebKit apps):
    705         defaults write com.apple.Safari WebKitEnableInspectElementContextMenuItem -bool true
    706  
    707         http://bugs.webkit.org/show_bug.cgi?id=6571
    708 
    709         * English.lproj/Localizable.strings:
    710         * English.lproj/StringsNotToBeLocalized.txt: reorder of the entries
    711         * Misc.subproj/WebKitNSStringExtras.h:
    712         * Misc.subproj/WebKitNSStringExtras.m:
    713         (-[NSString _webkit_stringByCollapsingWhitespaceCharacters]): collapses consecutive whitespace into a single space
    714         * WebCoreSupport.subproj/WebFrameBridge.m:
    715         (-[WebFrameBridge pluginViewWithPackage:attributeNames:attributeValues:baseURL:]): cleanup
    716         (-[WebFrameBridge viewForPluginWithURL:attributeNames:attributeValues:MIMEType:]): call the new UI delegate method
    717         * WebInspector.subproj: Added.
    718         * WebInspector.subproj/WebInspector.h: Added.
    719         * WebInspector.subproj/WebInspector.m: Added.
    720         (+[WebInspector sharedWebInspector]):
    721         (-[WebInspector init]):
    722         (-[WebInspector initWithWebFrame:]):
    723         (-[WebInspector dealloc]):
    724         (-[WebInspector window]):
    725         (-[WebInspector windowDidLoad]):
    726         (-[WebInspector windowWillClose:]):
    727         (-[WebInspector showWindow:]):
    728         (-[WebInspector setWebFrame:]):
    729         (-[WebInspector webFrame]):
    730         (-[WebInspector setRootDOMNode:]):
    731         (-[WebInspector rootDOMNode]):
    732         (-[WebInspector setFocusedDOMNode:]):
    733         (-[WebInspector focusedDOMNode]):
    734         (-[WebInspector setSearchQuery:]):
    735         (-[WebInspector searchQuery]):
    736         (-[WebInspector searchResults]):
    737         (-[WebInspector showOptionsMenu]):
    738         (-[WebInspector selectNewRoot:]):
    739         (-[WebInspector resizeTopArea:]):
    740         (-[WebInspector treeViewScrollTo:]):
    741         (-[WebInspector treeViewOffsetTop]):
    742         (-[WebInspector treeViewScrollHeight]):
    743         (-[WebInspector traverseTreeBackward]):
    744         (-[WebInspector traverseTreeForward]):
    745         (-[WebInspector _toggleIgnoreWhitespace:]):
    746         (-[WebInspector _highlightNode:]):
    747         (-[WebInspector _nodeHighlightExpired:]):
    748         (-[WebInspector _focusRootNode:]):
    749         (-[WebInspector _revealAndSelectNodeInTree:]):
    750         (-[WebInspector _showSearchResults:]):
    751         (-[WebInspector _refreshSearch]):
    752         (-[WebInspector _update]):
    753         (-[WebInspector _updateRoot]):
    754         (-[WebInspector _updateTreeScrollbar]):
    755         (+[WebInspector isSelectorExcludedFromWebScript:]):
    756         (+[WebInspector webScriptNameForSelector:]):
    757         (+[WebInspector isKeyExcludedFromWebScript:]):
    758         (-[WebInspector handleEvent:]):
    759         (-[WebInspector webView:didFinishLoadForFrame:]):
    760         (-[WebInspector webView:plugInViewWithArguments:]):
    761         (-[WebInspector outlineView:numberOfChildrenOfItem:]):
    762         (-[WebInspector outlineView:isItemExpandable:]):
    763         (-[WebInspector outlineView:child:ofItem:]):
    764         (-[WebInspector outlineView:objectValueForTableColumn:byItem:]):
    765         (-[WebInspector outlineView:willDisplayOutlineCell:forTableColumn:item:]):
    766         (-[WebInspector outlineViewItemDidCollapse:]):
    767         (-[WebInspector outlineViewSelectionDidChange:]):
    768         (-[WebInspectorPrivate dealloc]):
    769         (-[DOMHTMLElement _addClassName:]): Helper method for the Inspector to append style classes
    770         (-[DOMHTMLElement _removeClassName:]): Helper method for the Inspector to remove style classes
    771         (-[DOMNode _contentPreview]):
    772         (-[DOMNode _isAncestorOfNode:]):
    773         (-[DOMNode _isDescendantOfNode:]):
    774         (-[DOMNode _isWhitespace]):
    775         (-[DOMNode _lengthOfChildNodesIgnoringWhitespace]):
    776         (-[DOMNode _childNodeAtIndexIgnoringWhitespace:]):
    777         (-[DOMNode _nextSiblingSkippingWhitespace]):
    778         (-[DOMNode _previousSiblingSkippingWhitespace]):
    779         (-[DOMNode _firstChildSkippingWhitespace]):
    780         (-[DOMNode _lastChildSkippingWhitespace]):
    781         (-[DOMNode _firstAncestorCommonWithNode:]):
    782         (-[DOMNode _traverseNextNodeStayingWithin:]):
    783         (-[DOMNode _traverseNextNodeSkippingWhitespaceStayingWithin:]):
    784         (-[DOMNode _traversePreviousNode]):
    785         (-[DOMNode _traversePreviousNodeSkippingWhitespace]):
    786         (-[DOMNode _nodeTypeName]):
    787         (-[DOMNode _shortDisplayName]):
    788         (-[DOMNode _displayName]):
    789         * WebInspector.subproj/WebInspectorInternal.h: Added.
    790         * WebInspector.subproj/WebInspectorOutlineView.h: Added.
    791         * WebInspector.subproj/WebInspectorOutlineView.m: Added.
    792         (-[WebInspectorOutlineView isOpaque]):
    793         (-[WebInspectorOutlineView _highlightColorForCell:]):
    794         (-[WebInspectorOutlineView _highlightRow:clipRect:]):
    795         (-[WebInspectorOutlineView drawBackgroundInClipRect:]):
    796         * WebInspector.subproj/WebInspectorPanel.h: Added.
    797         * WebInspector.subproj/WebInspectorPanel.m: Added.
    798         (-[WebInspectorPanel canBecomeKeyWindow]):
    799         (-[WebInspectorPanel canBecomeMainWindow]):
    800         (-[WebInspectorPanel moveWindow:]):
    801         (-[WebInspectorPanel resizeWindow:]):
    802         (-[WebInspectorPanel sendEvent:]):
    803         * WebInspector.subproj/WebNodeHighlight.h: Added.
    804         * WebInspector.subproj/WebNodeHighlight.m: Added.
    805         (-[WebNodeHighlight initWithBounds:andRects:forView:]):
    806         (-[WebNodeHighlight dealloc]):
    807         (-[WebNodeHighlight fractionComplete]):
    808         (-[WebNodeHighlight expire]):
    809         (-[WebNodeHighlight redraw:]):
    810         * WebInspector.subproj/WebNodeHighlightView.h: Added.
    811         * WebInspector.subproj/WebNodeHighlightView.m: Added.
    812         (-[WebNodeHighlightView roundedRect:withRadius:]):
    813         (-[WebNodeHighlightView initWithHighlight:andRects:forView:]):
    814         (-[WebNodeHighlightView dealloc]):
    815         (-[WebNodeHighlightView isOpaque]):
    816         (-[WebNodeHighlightView drawRect:]):
    817         * WebInspector.subproj/webInspector: Added.
    818         * WebInspector.subproj/webInspector/Images: Added.
    819         * WebInspector.subproj/webInspector/Images/close.png: Added.
    820         * WebInspector.subproj/webInspector/Images/closePressed.png: Added.
    821         * WebInspector.subproj/webInspector/Images/downTriangle.png: Added.
    822         * WebInspector.subproj/webInspector/Images/menu.png: Added.
    823         * WebInspector.subproj/webInspector/Images/menuPressed.png: Added.
    824         * WebInspector.subproj/webInspector/Images/popupFill.png: Added.
    825         * WebInspector.subproj/webInspector/Images/popupFillPressed.png: Added.
    826         * WebInspector.subproj/webInspector/Images/popupLeft.png: Added.
    827         * WebInspector.subproj/webInspector/Images/popupLeftPressed.png: Added.
    828         * WebInspector.subproj/webInspector/Images/popupRight.png: Added.
    829         * WebInspector.subproj/webInspector/Images/popupRightPressed.png: Added.
    830         * WebInspector.subproj/webInspector/Images/rightTriangle.png: Added.
    831         * WebInspector.subproj/webInspector/Images/scrollThumbBottom.png: Added.
    832         * WebInspector.subproj/webInspector/Images/scrollThumbMiddle.png: Added.
    833         * WebInspector.subproj/webInspector/Images/scrollThumbTop.png: Added.
    834         * WebInspector.subproj/webInspector/Images/scrollTrackBottom.png: Added.
    835         * WebInspector.subproj/webInspector/Images/scrollTrackMiddle.png: Added.
    836         * WebInspector.subproj/webInspector/Images/scrollTrackTop.png: Added.
    837         * WebInspector.subproj/webInspector/Images/squareButtonRight.png: Added.
    838         * WebInspector.subproj/webInspector/Images/squareButtonRightPressed.png: Added.
    839         * WebInspector.subproj/webInspector/Images/upTriangle.png: Added.
    840         * WebInspector.subproj/webInspector/inspector.css: Added.
    841         * WebInspector.subproj/webInspector/inspector.html: Added.
    842         * WebInspector.subproj/webInspector/inspector.js: Added.
    843         * WebKit.xcodeproj/project.pbxproj: Adds Web Inspector files
    844         * WebView.subproj/WebUIDelegatePrivate.h: new UI delegate method to supply a replacement view for plugins
    845         * WebView.subproj/WebView.m:
    846         (-[WebView _menuForElement:defaultItems:]): Add a new context menu item for inspecting
    847         (-[WebView _inspectElement:]): Context menu item target for inspecting
    848 
    849 2006-01-14  Alexey Proskuryakov  <ap (a] nypop.com>
    850 
    851         Reviewed by Darin.
    852 
    853         - Fix http://bugs.webkit.org/show_bug.cgi?id=6531
    854         document.cookie="killmenothing" doesn't set the cookie
    855 
    856         * WebCoreSupport.subproj/WebCookieAdapter.m: (-[WebCookieAdapter setCookies:forURL:policyBaseURL:]):
    857         Append an '=' to the cookie string if it has none, so that 
    858         +[NSHTTPCookie cookiesWithResponseHeaderFields:forURL:] can parse it.
    859 
    860 2006-01-14  Maciej Stachowiak  <mjs (a] apple.com>
    861 
    862         Reviewed by Eric.
    863 
    864         - added bridging infrastructure for Page class
    865         
    866         * WebCoreSupport.subproj/WebPageBridge.h: Added.
    867         * WebCoreSupport.subproj/WebPageBridge.m: Added.
    868         (-[WebPageBridge initWithMainFrameName:view:]): New class, somewhat obvious.
    869         * WebKit.xcodeproj/project.pbxproj:
    870         * WebView.subproj/WebView.m:
    871         (-[WebViewPrivate dealloc]): Don't use _mainFrameBrige, use _pageBridge
    872         (-[WebView _close]): ditto
    873         (-[WebView _commonInitializationWithFrameName:groupName:]): ditto
    874         (-[WebView mainFrame]): ditto
    875 
    876 2006-01-12  Maciej Stachowiak  <mjs (a] apple.com>
    877 
    878         Rubber stamped by Eric.
    879 
    880         - rename WebBridge to WebFrameBridge
    881         
    882         - also removed all tabs from WebFrameBridge.m
    883 
    884         * DOM.subproj/WebDOMOperations.m:
    885         (-[DOMNode _bridge]):
    886         (-[DOMNode webArchive]):
    887         (-[DOMRange _bridge]):
    888         (-[DOMRange webArchive]):
    889         * DOM.subproj/WebDOMOperationsPrivate.h:
    890         * English.lproj/StringsNotToBeLocalized.txt:
    891         * Misc.subproj/WebCoreStatistics.m:
    892         * Misc.subproj/WebNSViewExtras.h:
    893         * Misc.subproj/WebNSViewExtras.m:
    894         (-[NSView _bridge]):
    895         * Plugins.subproj/WebBaseNetscapePluginView.m:
    896         * Plugins.subproj/WebNetscapePluginEmbeddedView.m:
    897         * Plugins.subproj/WebNetscapePluginStream.m:
    898         (-[WebNetscapePluginStream initWithRequest:pluginPointer:notifyData:sendNotification:]):
    899         * Plugins.subproj/WebPluginContainerCheck.m:
    900         (-[WebPluginContainerCheck _isForbiddenFileLoad]):
    901         * Plugins.subproj/WebPluginController.h:
    902         * Plugins.subproj/WebPluginController.m:
    903         (-[WebPluginController bridge]):
    904         * WebCoreSupport.subproj/WebBridge.h: Removed.
    905         * WebCoreSupport.subproj/WebBridge.m: Removed.
    906         * WebCoreSupport.subproj/WebFileButton.h:
    907         * WebCoreSupport.subproj/WebFileButton.m:
    908         (-[WebFileChooserButton initWithBridge:delegate:]):
    909         * WebCoreSupport.subproj/WebFrameBridge.h: Added.
    910         * WebCoreSupport.subproj/WebFrameBridge.m: Added.
    911         (-[WebFrameBridge mainFrame]):
    912         (-[WebFrameBridge createWindowWithURL:frameName:]):
    913         (-[WebFrameBridge canTargetLoadInFrame:]):
    914         (-[WebFrameBridge createChildFrameNamed:withURL:referrer:renderPart:allowsScrolling:marginWidth:marginHeight:]):
    915         (formDelegate):
    916         (-[WebFrameBridge createModalDialogWithURL:]):
    917         * WebCoreSupport.subproj/WebSubresourceLoader.m:
    918         * WebCoreSupport.subproj/WebTextRendererFactory.m:
    919         * WebCoreSupport.subproj/WebViewFactory.m:
    920         (-[WebViewFactory bridgeForView:]):
    921         * WebKit.xcodeproj/project.pbxproj:
    922         * WebView.subproj/WebDataSource.m:
    923         (-[WebDataSource _bridge]):
    924         (-[WebDataSource _receivedMainResourceError:complete:]):
    925         (-[WebDataSource _stringWithData:]):
    926         * WebView.subproj/WebDataSourcePrivate.h:
    927         * WebView.subproj/WebDebugDOMNode.m:
    928         * WebView.subproj/WebDefaultContextMenuDelegate.m:
    929         * WebView.subproj/WebFrame.m:
    930         (-[WebFrame _traverseNextFrameStayWithin::]):
    931         (Frame):
    932         (-[WebFrame _detachFromParent]):
    933         (-[WebFrame _bridge]):
    934         (-[WebFrame _initWithWebFrameView:webView:bridge:]):
    935         * WebView.subproj/WebFrameInternal.h:
    936         * WebView.subproj/WebFramePrivate.h:
    937         * WebView.subproj/WebFrameView.m:
    938         (-[WebFrameView webCoreBridge]):
    939         (-[WebFrameView _bridge]):
    940         * WebView.subproj/WebHTMLRepresentation.m:
    941         (+[WebHTMLRepresentation supportedMIMETypes]):
    942         (-[WebHTMLRepresentation _bridge]):
    943         (-[WebHTMLRepresentation documentSource]):
    944         * WebView.subproj/WebHTMLRepresentationPrivate.h:
    945         * WebView.subproj/WebHTMLView.m:
    946         (-[WebHTMLView _pasteWithPasteboard:allowPlainText:]):
    947         (-[WebHTMLView _deleteRange:killRing:prepend:smartDeleteOK:deletionAction:]):
    948         (-[WebHTMLView updateFocusState]):
    949         (-[NSArray validateUserInterfaceItem:]):
    950         (-[NSArray attributedString]):
    951         (-[NSArray selectedAttributedString]):
    952         (-[NSArray concludeDragForDraggingInfo:actionMask:]):
    953         (-[NSArray keyDown:]):
    954         (-[NSArray _alterCurrentSelection:direction:granularity:]):
    955         (-[NSArray _alterCurrentSelection:verticalDistance:]):
    956         (-[NSArray _expandSelectionToGranularity:]):
    957         (-[NSArray cut:]):
    958         (-[NSArray _applyStyleToSelection:withUndoAction:]):
    959         (-[NSArray _applyParagraphStyleToSelection:withUndoAction:]):
    960         (-[NSArray pasteAsPlainText:]):
    961         (-[NSArray insertNewline:]):
    962         (-[NSArray insertLineBreak:]):
    963         (-[NSArray insertParagraphSeparator:]):
    964         (-[NSArray _changeWordCaseWithSelector:]):
    965         (-[NSArray startSpeaking:]):
    966         (-[NSArray selectToMark:]):
    967         (-[NSArray swapWithMark:]):
    968         (-[NSArray transpose:]):
    969         (-[WebHTMLView characterIndexForPoint:]):
    970         (-[WebHTMLView firstRectForCharacterRange:]):
    971         (-[WebHTMLView selectedRange]):
    972         (-[WebHTMLView attributedSubstringFromRange:]):
    973         (-[WebHTMLView _selectMarkedText]):
    974         (-[WebHTMLView _selectRangeInMarkedText:]):
    975         (-[WebHTMLView setMarkedText:selectedRange:]):
    976         (-[WebHTMLView _selectionIsInsideMarkedText]):
    977         (-[WebTextCompleteController _insertMatch:]):
    978         (-[WebTextCompleteController doCompletion]):
    979         (-[WebTextCompleteController endRevertingChange:moveLeft:]):
    980         * WebView.subproj/WebHTMLViewPrivate.h:
    981         * WebView.subproj/WebImageView.m:
    982         * WebView.subproj/WebMainResourceLoader.m:
    983         * WebView.subproj/WebRenderNode.m:
    984         * WebView.subproj/WebResource.m:
    985         (-[WebResource _stringValue]):
    986         * WebView.subproj/WebScriptDebugDelegate.m:
    987         * WebView.subproj/WebTextView.m:
    988         * WebView.subproj/WebView.m:
    989         (-[WebView _createFrameNamed:inParent:allowsScrolling:]):
    990         (-[WebView _commonInitializationWithFrameName:groupName:]):
    991         (-[WebView writeSelectionWithPasteboardTypes:toPasteboard:]):
    992         (-[WebView moveDragCaretToPoint:]):
    993         (-[WebView shouldClose]):
    994         (-[WebView editableDOMRangeForPoint:]):
    995         (-[WebView setEditable:]):
    996         (-[WebView deleteSelection]):
    997         (-[WebView _bridgeForSelectedOrMainFrame]):
    998         (-[WebView _bridgeAtPoint:]):
    999 
   1000 2006-01-13  Darin Adler  <darin (a] apple.com>
   1001 
   1002         - Replaced tabs with spaces in source files that had less than 10 lines with tabs.
   1003         - Set allow-tabs Subversion property in source files that have more than 10 lines with tabs.
   1004 
   1005 2006-01-12  John Sullivan  <sullivan (a] apple.com>
   1006 
   1007         Reviewed by Tim O.
   1008         
   1009         - fixed <rdar://problem/4406994> REGRESSION (TOT): zooming window at cnn.com 
   1010         makes window fill width of screen
   1011 
   1012         * WebView.subproj/WebFrameView.m:
   1013         (-[WebFrameView _largestChildWithScrollBars]):
   1014         now skips zero-area frames, used by some evil ads
   1015 
   1016 2006-01-10  John Sullivan  <sullivan (a] apple.com>
   1017 
   1018         Reviewed by Tim H.
   1019         
   1020         - fixed <rdar://problem/4265966> PDFs continue to show a (secondary) selection 
   1021         when the focus moves elsewhere
   1022 
   1023         * WebView.subproj/WebPDFView.h:
   1024         added trackedFirstResponder ivar
   1025         
   1026         * WebView.subproj/WebPDFView.m:
   1027         (-[WebPDFView dealloc]):
   1028         assert that trackedFirstResponder is nil, as it was released/cleared in viewWillMoveToWindow:
   1029         (-[WebPDFView _trackFirstResponder]):
   1030         If the tracked first responder was the PDFView's documentView, and the current first responder isn't,
   1031         deselect all. This is equivalent to overriding resignFirstResponder in the PDFView's 
   1032         documentView and deselecting all there, as other web document view classes do. Also, keep track of
   1033         the new first responder for next time.
   1034         (-[WebPDFView viewWillMoveToWindow:]):
   1035         stop observing NSWindowDidUpdateNotification on the old window
   1036         (-[WebPDFView viewDidMoveToWindow]):
   1037         start observing NSWindowDidUpdateNotification on the new window, with _trackFirstResponder
   1038         as the callback. Ideally we'd use a notification that tells us that the first responder is
   1039         changing, but there is no such notification, so we have to use this very frequent one instead.
   1040         The archaic 2573089 tracks the desire to have a responder-changed notification.
   1041         (-[WebPDFView becomeFirstResponder]):
   1042         removed comment about this bug that's now obsolete
   1043 
   1044 2006-01-11  Darin Adler  <darin (a] apple.com>
   1045 
   1046         * English.lproj/StringsNotToBeLocalized.txt: Updated for recent changes.
   1047 
   1048 2006-01-09  Darin Adler  <darin (a] apple.com>
   1049 
   1050         * Makefile.am: Removed.
   1051 
   1052 2006-01-09  John Sullivan  <sullivan (a] apple.com>
   1053 
   1054         Reviewed by Beth Dakin.
   1055                 
   1056         - fixed <rdar://problem/4302263> CrashTracer: 504 crashes in Safari at 
   1057         com.apple.AppKit: NSTargetForSendAction + 1060
   1058         
   1059         The problem was that back/forward/stop/reload context menu items had nil targets,
   1060         and thus were relying on AppKit to start from the context menu target (the clicked-upon 
   1061         view) and use the responder chain to find the WebView to act as the target. In Tiger, 
   1062         context menus don't retain their implicit target (the clicked-upon view again), and
   1063         there was a race condition where the WebHTMLView could be dealloc'ed while the menu item
   1064         was being processed, eventually crashing in AppKit. The fix is to explicitly set the
   1065         target of these four menu items to the WebView, since the WebView is not dealloc'ed
   1066         in the loading process.
   1067         
   1068         This might be fixed in a future version of AppKit by making the context menu retain its
   1069         implicit target until it is dismissed, but with this change it will be fixed regardless
   1070         of potential AppKit changes.
   1071 
   1072         * WebView.subproj/WebDefaultContextMenuDelegate.m:
   1073         (-[WebDefaultUIDelegate menuItemWithTag:target:]):
   1074         Added target: parameter and removed code that set the target for some menu items; now the
   1075         caller is responsible for supplying the target.
   1076         (-[WebDefaultUIDelegate contextMenuItemsForElement:defaultMenuItems:]):
   1077         Supply target (or nil) in calls to menuItemWithTag:target:. This matches existing behavior
   1078         except for Back/Forward/Stop/Reload, which used to supply no target but now supply the
   1079         WebView as the target.
   1080         (-[WebDefaultUIDelegate editingContextMenuItemsForElement:defaultMenuItems:]):
   1081         Supply target (or nil) in calls to menuItemWithTag:target:
   1082 
   1083 2006-01-09  Geoffrey Garen  <ggaren (a] apple.com>
   1084 
   1085         Reviewed by Darin.
   1086         
   1087         - Second cut at fixing <rdar://problem/4268278> Submitting a form 
   1088         in onUnload event handler causes crash in 
   1089         -[WebDataSource(WebPrivate) _commitIfReady:].)
   1090 
   1091         - Fixes http://bugs.webkit.org/show_bug.cgi?id=6331
   1092         REGRESSION: form events don't fire after back/forward navigation, 
   1093         due to inconsistent load state
   1094         
   1095         * WebView.subproj/WebDataSource.m:
   1096         (-[WebDataSource _stopLoading]): 
   1097         (1) If there are no resource loaders to signal the WebView that we've
   1098         been canceled, manufacture the signal. Otherwise, the cancel gets 
   1099         ignored and nobody cleans up after the load. (We signal the WebView but
   1100         not the WebFrame because we don't want the WebFrame to tear down the 
   1101         data source.  Unlike most canceled data sources, this one has valid data 
   1102         because it's in the back/forward cache.)
   1103         (2) Update _private->stopping before returning because if the 
   1104         data source is in the back/forward cache it can be reused, so it 
   1105         needs to be in a consistent state. (We never encountered this 
   1106         situation before because we would always crash first.)
   1107         (-[WebDataSource _commitLoadWithData:]): Move _commitIfReady call 
   1108         inside retain block because the commit may cause an unload event 
   1109         to fire, which may start a new load, deallocating the current 
   1110         data source. (This is the same reason the rest of the function is 
   1111         in the retain block.)
   1112         * WebView.subproj/WebFrame.m:
   1113         (-[WebFrame _transitionToCommitted:]): If the unload handler 
   1114         started a new load, return early to avoid stomping it.
   1115         (-[WebFrame _continueLoadRequestAfterNavigationPolicy:formState:]): 
   1116         Undo previous incorrect fix.
   1117         (-[WebFrame stopLoading]): Remove misleading comment. Setting 
   1118         provisionalDataSource to nil is not optional but required for 
   1119         internal consistency.
   1120 
   1121 2006-01-09  Alexey Proskuryakov  <ap (a] nypop.com>
   1122 
   1123         Reviewed by Maciej.
   1124 
   1125         Affects many layout tests (when running with primary Russian language).
   1126 
   1127         - Fix http://bugs.webkit.org/show_bug.cgi?id=4759
   1128         'ex' length unit calculation (Some layout tests fail if the system primary language is Russian)
   1129 
   1130         * WebCoreSupport.subproj/WebTextRenderer.m:
   1131         (-[WebTextRenderer xHeight]): Use glyphForCharacter() instead of -[NSFont glyphWithName:].
   1132 
   1133 2006-01-07  Mitz Pettel  <opendarwin.org (a] mitzpettel.com>
   1134 
   1135         Reviewed by Darin, landed by ap.
   1136         
   1137         Test: fast/text/atsui-small-caps-punctuation-size.html
   1138         
   1139         - fix http://bugs.webkit.org/show_bug.cgi?id=6397
   1140           ATSUI small caps use small punctuation
   1141           
   1142         * WebCoreSupport.subproj/WebTextRenderer.m:
   1143         (createATSULayoutParameters): Changed the characters for which size must
   1144         not change from !u_isbase() to the M* categories.
   1145 
   1146 2006-01-06  John Sullivan  <sullivan (a] apple.com>
   1147 
   1148         Reviewed by Vicki Murley (full credit) and Tim Omernick (half credit).
   1149         
   1150         - fixed <rdar://problem/4401102> REGRESSION (420+): When displaying a PDF, tabbing around stops working after reaching page
   1151 
   1152         * WebView.subproj/WebPDFView.m:
   1153         (-[WebPDFView setNextKeyView:]):
   1154         Use [PDFSubview documentView] rather than PDFSubview here, since that's the view that we now hand off first-responderhood to.
   1155 
   1156 2006-01-05  Tim Omernick  <timo (a] apple.com>
   1157 
   1158         Reviewed by Geoff.
   1159 
   1160 	<rdar://problem/4400804> Client-side redirect to a non-HTTP URL confuses Safari
   1161 
   1162         * WebView.subproj/WebFrame.m:
   1163         (-[WebFrame _continueLoadRequestAfterNavigationPolicy:formState:]):
   1164 	If we were waiting for a quick redirect, but the policy delegate decided to ignore it, then we 
   1165 	need to report that the client redirect was cancelled.
   1166 	
   1167 2006-01-05  John Sullivan  <sullivan (a] apple.com>
   1168 
   1169         * WebView.subproj/WebPDFView.m:
   1170         (-[WebPDFView _fakeKeyEventWithFunctionKey:]):
   1171         Just added a FIXME comment about how to clean up this minor hack in the future.
   1172 
   1173 2006-01-05  John Sullivan  <sullivan (a] apple.com>
   1174 
   1175         Reviewed by Tim O.
   1176         
   1177         - fixed these bugs:
   1178         <rdar://problem/3021785> page up/down don't work on frameset pages unless you click        
   1179         <rdar://problem/3021788> Page Up/Down moves an unscrollable frame if you click on it first
   1180         
   1181         and the WebKit part of this (need new Safari too for complete fix):
   1182         <rdar://problem/4378905> Page up/down don't work in PDFs when address field is focused
   1183         
   1184         I moved some logic down from Safari that dealt with finding the largest scrollable child frame in a frameset,
   1185         and added support for standard scrolling-related selectors to WebPDFView. The latter was needed for 4378905;
   1186         the former was needed due to side effects of the Safari part of the change. As long as I was doing the former,
   1187         I also used that logic to fix 3021785 and 3021788.
   1188         
   1189         * WebView.subproj/WebFrameViewPrivate.h:
   1190         new currently-private methods _hasScrollBars and _largestChildWithScrollBars
   1191 
   1192         * WebView.subproj/WebFrameView.m:
   1193         (-[WebFrameView scrollToBeginningOfDocument:]):
   1194         if we don't have scroll bars, operate on our largest child with scroll bars instead
   1195         (-[WebFrameView scrollToEndOfDocument:]):
   1196         ditto
   1197         (-[WebFrameView _pageVertically:]):
   1198         ditto
   1199         (-[WebFrameView _pageHorizontally:]):
   1200         ditto
   1201         (-[WebFrameView _scrollLineVertically:]):
   1202         ditto
   1203         (-[WebFrameView _scrollLineHorizontally:]):
   1204         ditto
   1205         (-[WebFrameView keyDown:]):
   1206         where we were bailing out if ![self allowsScrolling], also check for whether there's a
   1207         child with scroll bars, and don't bail out if so
   1208         (-[WebFrameView _area]):
   1209         new helper method used to implement _largestChildWithScrollBars (code moved from Safari)
   1210         (-[WebFrameView _hasScrollBars]):
   1211         new method, just returns YES if either scroll bar is showing (code moved from Safari)
   1212         (-[WebFrameView _largestChildWithScrollBars]):
   1213         new method, returns the child with the largest area that is showing at least one scroll bar
   1214         (code moved from Safari and tweaked a little)
   1215         
   1216         * WebView.subproj/WebPDFView.m:
   1217         (-[WebPDFView _fakeKeyEventWithFunctionKey:]):
   1218         new method, hackaround for the fact that PDFView handles key downs from standard scrolling keys
   1219         but does not implement the standard responder selectors
   1220         (-[WebPDFView scrollPageDown:]):
   1221         use _fakeKeyEventWithFunctionKey: to get the PDFView to scroll appropriately
   1222         (-[WebPDFView scrollPageUp:]):
   1223         ditto
   1224         (-[WebPDFView scrollToBeginningOfDocument:]):
   1225         ditto
   1226         (-[WebPDFView scrollToEndOfDocument:]):
   1227         ditto
   1228         
   1229         * WebView.subproj/WebView.m:
   1230         add scrollToBeginningOfDocument and scrollToEndOfDocument to the list of responder operations
   1231         that we hand off appropriately to the responder chain. These two aren't defined in any header
   1232         but are generated by Home and End keys and used by the text system.
   1233 
   1234 2006-01-05  Geoffrey Garen  <ggaren (a] apple.com>
   1235 
   1236         Reviewed by Darin.
   1237 
   1238         - Fixed http://bugs.webkit.org/show_bug.cgi?id=6361
   1239         Add plugin support to DumpRenderTree
   1240 
   1241         * WebKit.exp: export WebPluginDatabase class, which DumpRenderTree
   1242         needs to add plugins to the runtime.
   1243 
   1244 2006-01-03  Maciej Stachowiak  <mjs (a] apple.com>
   1245 
   1246         Reviewed by Darin.
   1247 
   1248 	- move frame management and finding code from WebKit to WebCore
   1249 	http://bugs.webkit.org/show_bug.cgi?id=6368
   1250 
   1251         * Plugins.subproj/WebBaseNetscapePluginView.m:
   1252         (-[WebBaseNetscapePluginView loadPluginRequest:]): Set frame name straight on the bridge,
   1253 	instead of having it bubble through the view and frame.
   1254         * WebCoreSupport.subproj/WebBridge.m:
   1255         (-[WebBridge initWithFrameName:view:]): don't pass name to frame, we own it now; set it
   1256 	on ourselves directly
   1257 	(-[WebBridge findFrameNamed:]): removed
   1258         (-[WebBridge createWindowWithURL:frameName:]): set name on bridge, not webview
   1259         (-[WebBridge createChildFrameNamed:withURL:referrer:renderPart:allowsScrolling:marginWidth:marginHeight:]):
   1260         (-[WebBridge runModal]): remove excess braces
   1261         * WebKit.xcodeproj/project.pbxproj:
   1262         * WebView.subproj/WebControllerSets.h: Removed.
   1263         * WebView.subproj/WebControllerSets.m: Removed.
   1264         * WebView.subproj/WebFrame.m:
   1265         (-[WebFramePrivate name]): removed
   1266         (-[WebFramePrivate setName:]): removed
   1267         (-[WebFramePrivate dealloc]): don't release name, we no longer have one
   1268         (-[WebFrame _appendChild:]): removed
   1269         (-[WebFrame _removeChild:]): removed
   1270         (-[WebFrame _createItem:]): removed stray space
   1271         (-[WebFrame _immediateChildFrameNamed:]): Just call the bridge
   1272         (-[WebFrame _setName:]): removed
   1273         (-[WebFrame _detachFromParent]): remove bridge from parent note self
   1274         (-[WebFrame _continueLoadRequestAfterNewWindowPolicy:frameName:formState:]):
   1275         (-[WebFrame _addChild:]): Call appendChild: on bridge, not self
   1276         (-[WebFrame _nextFrameWithWrap:]): just call bridge (and moved helpers there)
   1277         (-[WebFrame _previousFrameWithWrap:]): just call bridge (and moved helpers there)
   1278         (-[WebFrame _initWithWebFrameView:webView:bridge:]): don't take a name any more
   1279         (-[WebFrame _setFrameNamespace:]): just call bridge
   1280         (-[WebFrame _frameNamespace]): just call bridge
   1281         (-[WebFrame _hasSelection]): remove excess braces
   1282         (-[WebFrame _clearSelection]): ditto
   1283         (-[WebFrame initWithName:webFrameView:webView:]): no more name
   1284         (-[WebFrame name]): just call bridge
   1285         (-[WebFrame findFrameNamed:]): just call bridge (and moved helpers there)
   1286         (-[WebFrame parentFrame]): fixed for new style
   1287         * WebView.subproj/WebFrameInternal.h:
   1288         * WebView.subproj/WebFramePrivate.h:
   1289         * WebView.subproj/WebView.m:
   1290         * WebView.subproj/WebViewPrivate.h:
   1291 
   1292 2006-01-03  Darin Adler  <darin (a] apple.com>
   1293 
   1294         Reviewed by Beth.
   1295 
   1296 	This is a fix for <rdar://problem/3710994> HiDPI: Link underlines are 
   1297 	still one pixel high even if the UI resolution is > 100%
   1298 
   1299 	This fix refactors -drawLineForCharacters to make its organization
   1300 	more logical. It changes behavior when printing to the screen by
   1301 	rounding the parameters of the line (x- and y-values, width, and 
   1302 	thickness) to integer boundaries in device space. Previously,
   1303 	this part of the routine just hardcoded a 1 pixel line.
   1304 
   1305         * WebCoreSupport.subproj/WebTextRenderer.m:
   1306         (drawHorizontalLine): This just takes care of drawing the line once everything
   1307 	has been calculated in -drawLineForCharacters
   1308         (-[WebTextRenderer drawLineForCharacters:yOffset:width:color:thickness:]):
   1309 	Now takes device space into account. Calls drawHorizontalLine
   1310 
   1311 2006-01-03  Maciej Stachowiak  <mjs (a] apple.com>
   1312 
   1313         Reviewed by Vicki.
   1314 
   1315         - moved frame traversal code across from bridge, also dropped the children
   1316 	array
   1317 
   1318         * WebCoreSupport.subproj/WebBridge.h:
   1319         * WebCoreSupport.subproj/WebBridge.m:
   1320         (-[WebBridge dealloc]): Don't release children array, that was moved
   1321 	down to WebCore.
   1322         (-[WebBridge saveDocumentState:]):
   1323 	- many methods moved to WebCore.
   1324         * WebView.subproj/WebFrame.m:
   1325         (Frame): New convenience method to get a WebFrame * from a method that
   1326 	returns WebCoreBridge *.
   1327         (-[WebFrame _firstChildFrame]): use Frame()
   1328         (-[WebFrame _lastChildFrame]): ditto
   1329         (-[WebFrame _previousSiblingFrame]): ditto
   1330         (-[WebFrame _nextSiblingFrame]): ditto
   1331         (-[WebFrame _traverseNextFrameStayWithin:]): ditto
   1332 
   1333 2006-01-03  Anders Carlsson  <andersca (a] mac.com>
   1334 
   1335         Reviewed by Darin.
   1336 
   1337         - Fix http://bugs.webkit.org/show_bug.cgi?id=6357
   1338         REGRESSION: iframe and target is broken
   1339         
   1340         * WebView.subproj/WebFrame.m:
   1341         (-[WebFrame _descendantFrameNamed:sourceFrame:]):
   1342         Return the correct frame.
   1343 
   1344 2006-01-02  Maciej Stachowiak  <mjs (a] apple.com>
   1345 
   1346         Reviewed by Eric.
   1347 
   1348 	    - moved frame traversal logic from WebFrame to WebBridge
   1349 	    http://bugs.webkit.org/show_bug.cgi?id=6341
   1350 
   1351 	    To do this, I had to invert the ownership so that WebBridge now
   1352 	    owns WebFrame instead of vice versa. As a result, WebView now owns
   1353 	    a WebBridge pointer and does not have a direct WebFrame pointer.
   1354 
   1355         * WebCoreSupport.subproj/WebBridge.h:
   1356         * WebCoreSupport.subproj/WebBridge.m:
   1357         (-[WebBridge initWithFrameName:view:]): The initializer is now responsible for creating
   1358 	the frame, so pass it what it needs to do that.
   1359         (-[WebBridge dealloc]): The bridge now owns the frame, so release it.
   1360         (-[WebBridge close]): ditto
   1361         (-[WebBridge firstChild]): Moved from WebFrame
   1362         (-[WebBridge lastChild]): ditto
   1363         (-[WebBridge childCount]): ditto
   1364         (-[WebBridge previousSibling]): ditto
   1365         (-[WebBridge nextSibling]): ditto
   1366         (-[WebBridge isDescendantOfFrame:]): ditto
   1367         (-[WebBridge traverseNextFrameStayWithin:]): ditto
   1368         (-[WebBridge appendChild:]): ditto
   1369         (-[WebBridge removeChild:]): ditto
   1370         * WebView.subproj/WebFrame.m:
   1371         (-[WebFrame _removeChild::]): Call WebBridge version
   1372         (-[WebFramePrivate dealloc]): ditto
   1373         (-[WebFrame _firstChildFrame]): ditto
   1374         (-[WebFrame _lastChildFrame]): ditto
   1375         (-[WebFrame _childFrameCount]): ditto
   1376         (-[WebFrame _previousSiblingFrame]): ditto
   1377         (-[WebFrame _nextSiblingFrame]): ditto
   1378         (-[WebFrame _traverseNextFrameStayWithin:]): ditto
   1379         (-[WebFrame _appendChild:]): ditto
   1380         (-[WebFrame _removeChild:]): ditto
   1381         (-[WebFrame _isDescendantOfFrame:]): ditto,
   1382         (-[WebFrame _detachFromParent]): reorder a bit to avoid losing our bridge
   1383 	pointer before the bridge is due to release us, and don't release the
   1384 	bridge any more since it now owns us
   1385         (-[WebFrame _initWithName:webFrameView:webView:bridge:]): new initializer,
   1386 	we no longer create the bridge, instead it is passed in
   1387         (-[WebFrame initWithName:webFrameView:webView:]): Call the new designated
   1388 	initializer, but this method is no longer viable and should be deprecated.
   1389         * WebView.subproj/WebFrameInternal.h:
   1390         
   1391 	* WebView.subproj/WebView.m: WebView was changed to hold onto
   1392 	the WebBridge for the main frame instead of the WebFrame.
   1393 	
   1394         (-[WebViewPrivate dealloc]): update for the fact that we hold
   1395 	a bridge now, not a frame.
   1396         (-[WebView _close]): ditto
   1397         (-[WebView _createFrameNamed:inParent:allowsScrolling:]): Create
   1398 	a bridge, not a frame.
   1399         (-[WebView _commonInitializationWithFrameName:groupName:]): ditto.
   1400         (-[WebView setDefersCallbacks:]): get mainFrame via method
   1401         (-[WebView mainFrame]): Update to get the main frame properly
   1402 
   1403 2005-12-30  Mitz Pettel  <opendarwin.org (a] mitzpettel.com>
   1404 
   1405         Reviewed by Darin, landed by ap.
   1406         
   1407         Test: fast/text/justified-text-rect.html
   1408         
   1409         - WebKit part of fix for
   1410           http://bugs.webkit.org/show_bug.cgi?id=5461
   1411           Text width measured incorrectly when text-align: justify
   1412 
   1413         * WebCoreSupport.subproj/WebTextRenderer.m:
   1414         (-[WebTextRenderer selectionRectForRun:style:geometry:]): Added.
   1415         (CG_drawHighlight): Use new function CG_selectionRect.
   1416         (CG_selectionRect): New function to compute the selection rect.
   1417         Eliminated rounding hackery that was required for keeping the highlight
   1418         rect within the selection rect computed by
   1419         InlineTextBox::selectionRect, since the latter uses this function now.
   1420         The new selection rect is wider and matches AppKit more closely,
   1421         although the right hand side is roundf()ed instead of cielf()ed for
   1422         optimal caret positioning.
   1423         (ATSU_drawHighlight): Use new function ATSU_selectionRect.
   1424         (ATSU_selectionRect): New function to compute the selection rect.
   1425         Much like CG_selectionRect.
   1426 
   1427 2005-12-29  Geoffrey Garen  <ggaren (a] apple.com>
   1428 
   1429         Reviewed by Eric.
   1430 
   1431         Manual testcase added:
   1432         WebCore/manual-tests/onunload-form-submit-crash.html
   1433 
   1434         - Fixed <rdar://problem/4268278> Submitting a form in onUnload event 
   1435         handler causes crash in -[WebDataSource(WebPrivate) _commitIfReady:] 
   1436 
   1437         The problem is that the form submission in the unload event kicks off 
   1438         a new load in the midst of the load that caused the unload event to 
   1439         fire in the first place, so the two loads stomp each other.
   1440 
   1441         The solution is to cancel the first load and let the unload handler's 
   1442         load win. (Firefox does the same.)
   1443 
   1444         * WebView.subproj/WebFrame.m:
   1445         (-[WebFrame _transitionToCommitted:]): Moved call to -closeURL up
   1446         the call stack to _continueLoadRequest. (See below.) This has the 
   1447         side-effect of always firing the unload event, even if the new 
   1448         datasource never becomes committed, which seems like a good thing. 
   1449 
   1450         (-[WebFrame _continueLoadRequestAfterNavigationPolicy:formState:]):
   1451         Call -closeURL here, instead of in _transitionToCommitted,  so that the
   1452         unload handler can fire before we initialize any part of the load.
   1453         
   1454         Check provisionalDataSource for nil to discover if the unload event
   1455         kicked off its own load.
   1456 
   1457         Cleared up some coments.
   1458 
   1459         (-[WebFrame _detachFromParent]):
   1460         It turns out that if you close the window instead of just navigating
   1461         to a new page, you get an alternate assertion failure/crash because
   1462         the load kicked off by the unload event handler generates resource
   1463         loader callbacks after the associated WebFrame/WebView has disappeared.
   1464 
   1465         The nifty solution here is just to reverse the order of calls to
   1466         -stopLoading and -closeURL, thus guaranteeing that -stopLoading has the
   1467         last word when you close a window.
   1468 
   1469 2005-12-30  Mitz Pettel  <opendarwin.org (a] mitzpettel.com>
   1470 
   1471         Reviewed by Eric, committed by Maciej.
   1472         
   1473         - fix for http://bugs.webkit.org/show_bug.cgi?id=6288
   1474           HEAD build broken 12/29/2005
   1475 
   1476         * WebCoreSupport.subproj/WebTextRenderer.m:
   1477         (overrideLayoutOperation): Use previous character from the buffer
   1478         instead of ch which may be uninitialized on the first iteration.
   1479 
   1480 2005-12-29  Maciej Stachowiak  <mjs (a] apple.com>
   1481 
   1482         Reviewed by Eric.
   1483 
   1484         - finished frame traversal cleanup
   1485         http://bugs.webkit.org/show_bug.cgi?id=6293
   1486 
   1487         * WebCoreSupport.subproj/WebBridge.m:
   1488         (-[WebBridge childFrames]): Removed (this was unused)
   1489         * WebView.subproj/WebFrame.m:
   1490         (-[WebFrame _removeChild::]): Moved to FrameTraversal category.
   1491         (-[WebFrame _childFrameCount]): New frame traversal method to avoid
   1492 	getting the count from the array directly.
   1493         (-[WebFrame _appendChild:]): Factored out the parts of addChild: that
   1494 	seem directly relevant to adding a child.
   1495         (-[WebFrame _removeChild:]): Moved to FrameTraversal category.
   1496         (-[WebFrame _detachChildren]): Don't deallocate children array because
   1497 	there's no particular need to.
   1498         (-[WebFrame _setDataSource:]): make the assert use _childFrameCount
   1499         (-[WebFrame _opened]):
   1500         (-[WebFrame _checkLoadComplete]): Instead of checking all frames starting
   1501 	from the main frame, check this frame and all ancestors. If a resource
   1502 	for a frame completes, that con only possibly finish loading for that
   1503 	frame and its ancestors, not any other frame in the tree.
   1504 	(-[WebFrame _recursiveCheckLoadComplete]): Removed, no longer needed.
   1505         (-[WebFrame _childFramesMatchItem:]): Get child frame count in the new 
   1506 	approved way.
   1507         (-[WebFrame _internalChildFrames]): removed
   1508 	(-[WebFrame _addChild:]): Use _appendChild: for most of the work.
   1509         (-[WebFrame _generateFrameName]): Get child frame count in the new 
   1510 	approved way.
   1511         (-[WebFrame _stopLoadingSubframes]): Use new frame traversal mechanisms,
   1512 	upon further consideration there's no need to copy part of the frame tree here.
   1513         (-[WebFrame findFrameNamed:]): Remove extra braces.
   1514         (-[WebFrame childFrames]): Make a new array using the frame traversal methods.
   1515         * WebView.subproj/WebFramePrivate.h: Remove some methods.
   1516         * WebView.subproj/WebMainResourceLoader.m:
   1517         (-[WebMainResourceLoader didReceiveResponse:]): Do _checkLoadComplete on the current
   1518 	frame not the main frame (before there was no difference and now the new version is
   1519 	what is desired).
   1520         * WebView.subproj/WebView.m:
   1521         (-[WebView _finishedLoadingResourceFromDataSource:]): Remove stray space
   1522         (-[WebView _mainReceivedBytesSoFar:fromDataSource:complete:]): Remove stray spaces
   1523 	and update FIXME comment.
   1524         (-[WebView _receivedError:fromDataSource:]): Remove stray space
   1525 
   1526 2005-12-29  Maciej Stachowiak  <mjs (a] apple.com>
   1527 
   1528         Reviewed by Darin.
   1529 
   1530 	- abstract frame traversal in WebFrame more
   1531 	http://bugs.webkit.org/show_bug.cgi?id=6283
   1532 	
   1533 	Rewrote most of the frame traversal code in WebFrame to use DOM-style 
   1534 	first/last/next/previous methods, to abstract access better in preparation 
   1535 	for moving it down. 
   1536 
   1537 	As an added bonus, many formerly recursive methods are now iterative.
   1538 
   1539         * WebKit.xcodeproj/project.pbxproj: Use gnu99 dialect of C, so that
   1540 	variables can be declared in for loop initializers.
   1541 
   1542 	- added new frame traversal methods, to avoid dealing with the children array
   1543 	directly:
   1544 	
   1545         * WebView.subproj/WebFrame.m:
   1546         (-[WebFrame _firstChildFrame]): New method.
   1547         (-[WebFrame _lastChildFrame]): New method.
   1548         (-[WebFrame _previousSiblingFrame]): New method.
   1549         (-[WebFrame _nextSiblingFrame]): New method.
   1550         (-[WebFrame _traverseNextFrameStayWithin:]): Like traverseNextNode() in the DOM;
   1551 	uses some of the previous.
   1552 
   1553 	- apply the new methods
   1554 	
   1555         (-[WebFrame _createItemTreeWithTargetFrame:clippedAtTarget:]): Rewrite loop
   1556 	to use new traversal methods.
   1557         (-[WebFrame _immediateChildFrameNamed:]): ditto, also added FIXME
   1558         (-[WebFrame _setName:]): Improved comment, removed gratuitous brace
   1559         (-[WebFrame _isDescendantOfFrame:]): Rewrote to chase parent pointers instead
   1560 	of looking in child arrays (duh)
   1561         (-[WebFrame _detachChildren]): Rewrite loop to use new traversal methods,
   1562 	still walk backwards for now.
   1563         (-[WebFrame _closeOldDataSources]): Rewrite using new traversal methods.
   1564         (-[WebFrame _childFramesMatchItem:]): ditto
   1565         (-[WebFrame _defersCallbacksChanged]): ditto
   1566         (-[WebFrame _viewWillMoveToHostWindow:]): ditto
   1567         (-[WebFrame _viewDidMoveToHostWindow]): ditto
   1568         (-[WebFrame _addChild:]): don't use childFrames method
   1569         (-[WebFrame _removeChild:]): Clear out the sibling pointers after unlinking from the list, 
   1570 	not obvious if anything needs this but it seems like the right thing to do.
   1571         (-[WebFrame _generateFrameName]): don't bother to nil-check children array, since
   1572 	calling count on nil still gives 0.
   1573         (-[WebFrame _saveDocumentAndScrollState]): Rewrite to use frame traversal methods
   1574         (-[WebFrame _deepLastChildFrame]): renamed from _lastChildFrame, rewrite to use child
   1575 	traversal methods.
   1576         (-[WebFrame _nextFrameWithWrap:]): Use new frame traversal stuff (mostly just
   1577 	a thin wrapper on _traverseNextFrameStayWithin: 
   1578         (-[WebFrame _previousFrameWithWrap:]): Use new traversal functions
   1579         (-[WebFrame _numPendingOrLoadingRequests:]): Rewrite loop with new tracrsal functions
   1580         (-[WebFrame _reloadForPluginChanges]): ditto
   1581         (-[WebFrame _recursive_pauseNullEventsForAllNetscapePlugins]): ditto
   1582         (-[WebFrame _recursive_resumeNullEventsForAllNetscapePlugins]): ditto
   1583         (-[WebFrame _documentViews]): ditto
   1584         (-[WebFrame _updateDrawsBackground]): ditto
   1585         (-[WebFrame _unmarkAllMisspellings]): ditto
   1586         (-[WebFrame _atMostOneFrameHasSelection]): ditto
   1587         (-[WebFrame _findFrameWithSelection]): ditto
   1588         (-[WebFrame _stopLoadingSubframes]): ditto
   1589         (-[WebFrame _subframeIsLoading]): ditto
   1590         (-[WebFrame _descendantFrameNamed:sourceFrame:]): ditto
   1591 
   1592 2005-12-29  Darin Adler  <darin (a] apple.com>
   1593 
   1594         * WebView.subproj/WebFrameView.m: (-[WebFrameViewPrivate dealloc]):
   1595         Removed unused "draggingTypes" instance variable.
   1596 
   1597 2005-12-29  Mitz Pettel  <opendarwin.org (a] mitzpettel.com>
   1598 
   1599         Reviewed by darin 
   1600         
   1601         Test: fast/text/atsui-spacing-features.html
   1602 
   1603         - WebKit part of fix for
   1604           http://bugs.webkit.org/show_bug.cgi?id=3922
   1605           Variable word/letter spacing and full justification not supported for
   1606           ATSUI-rendered text
   1607 
   1608         * WebCoreSupport.subproj/WebTextRenderer.m:
   1609         (overrideLayoutOperation): Add letter- and word-spacing and padding for
   1610         justification.
   1611         (createATSULayoutParameters): Compute padding per space.
   1612 
   1613 2005-12-27  Mitz Pettel  <opendarwin.org (a] mitzpettel.com>
   1614 
   1615         Reviewed by Maciej, landed by Darin.
   1616 
   1617         - fix http://bugs.webkit.org/show_bug.cgi?id=4844
   1618         Render "simple" Hebrew using the CG codepath
   1619 
   1620         * WebCoreSupport.subproj/WebTextRenderer.m: (shouldUseATSU): Exclude Hebrew letters and maqaf.
   1621 
   1622 2005-12-25  Maciej Stachowiak  <mjs (a] apple.com>
   1623 
   1624         Reviewed by Geoff
   1625 
   1626         - Remove WebFrame's parent frame pointer, instead rely on WebCore's parent concept
   1627         http://bugs.webkit.org/show_bug.cgi?id=6241
   1628 
   1629         * WebCoreSupport.subproj/WebBridge.h:
   1630         * WebCoreSupport.subproj/WebBridge.m:
   1631         (-[WebBridge canTargetLoadInFrame:]): Use bridge parent method instead of needlessly
   1632 	asking for parent via WebFrame
   1633         (-[WebBridge frameDetached]): Don't call _removeChild on the parent frame any more
   1634 	because WebFame's _detachFromParent takes care of that now.
   1635         * WebView.subproj/WebFrame.m:
   1636         (-[WebFrame _createItemTreeWithTargetFrame:clippedAtTarget:]): Fix stray spaces
   1637         (-[WebFrame _detachChildren]): Don't remove children as we loop any more, they
   1638 	can remove themselves.
   1639         (-[WebFrame _detachFromParent]): Remove self from parent; don't nil out bridge
   1640 	until we are done with it.
   1641         (-[WebFrame _transitionToCommitted:]): Remove some extra braces.
   1642         (-[WebFrame _goToItem:withLoadType:]): Use parentFrame method in assert instead of parent
   1643 	field directly.
   1644         (-[WebFrame _addChild:]): Don't poke at parent frame pointer in _private
   1645 	since it is not there any more.
   1646         (-[WebFrame _removeChild:]): Remove extra braces and don't clear parent pointer
   1647 	explicitly any more.
   1648         (-[WebFrame _addFramePathToString:]): Get parentFrame from method, not field.
   1649         (-[WebFrame _loadDataSource:withLoadType:formState:]): Remove extra braces.
   1650         (-[WebFrame _nextFrameWithWrap:]): Get parent in the proper way and clean up the
   1651 	coding style.
   1652         (-[WebFrame _previousFrameWithWrap:]): Ditto.
   1653         (-[WebFrame parentFrame]): Get parent from the bridge.
   1654 
   1655 2005-12-25  Maciej Stachowiak  <mjs (a] apple.com>
   1656 
   1657         Reviewed by Hyatt.
   1658 
   1659 	- fixed REGRESSION: world leak of WebDataSource
   1660 	http://bugs.webkit.org/show_bug.cgi?id=6242
   1661 
   1662         * WebView.subproj/WebDataSource.m:
   1663         (-[WebDataSource _stopLoading]): don't retain self until after
   1664 	the possible early return.
   1665 
   1666 2005-12-24  Maciej Stachowiak  <mjs (a] apple.com>
   1667 
   1668         Reviewed by Geoff.
   1669 
   1670 	- rearrange some code in WebDataSource so that more of the frame traversal logic
   1671 	is in WebFrame, in preparation for moving it down to WebBridge.
   1672 	http://bugs.webkit.org/show_bug.cgi?id=6239
   1673 
   1674         * WebView.subproj/WebDataSource.m:
   1675         (-[WebDataSource _archiveWithMarkupString:nodes:]): Assert that the
   1676 	data source is committed, doesn't make sense to archive otherwise.
   1677         (-[WebDataSource _subframeArchivesWithCurrentState:]): New helper method.
   1678         (-[WebDataSource _archiveWithCurrentState:]): Assert that the data source
   1679 	is committed. Use the helper.
   1680         (-[WebDataSource _setWebView:]): Comment that we won't tell subframes that
   1681 	defers callback changed.
   1682         (-[WebDataSource _startLoading]): Remove stray space.
   1683         (-[WebDataSource _stopLoading]): Only handle local _stopLoading business.
   1684 	Cound on WebFrame to tell subframes to stop loading. Fold in _stopLoadingInternal
   1685 	and remove _recursiveStopLoading.
   1686         (-[WebDataSource _startLoading:]): Clean up an assert slightly.
   1687         (-[WebDataSource _setTitle:]): Remove stray spaces.
   1688         (-[WebDataSource _defersCallbacksChanged]): Don't call subframes. WebFrame
   1689 	can do that.
   1690         (-[WebDataSource isLoading]): Move checking of subframes down to WebFrame.
   1691         (-[WebDataSource webArchive]): Return nil if the data source is not yet
   1692 	committed. It makes no sense to archive a provisional data source since it
   1693 	has no data yet.
   1694         (-[WebDataSource addSubresource:]): Replace an assert with an early return,
   1695 	ASSERT is not an appropriate way to flag problems with the argument of a public
   1696 	method.
   1697         * WebView.subproj/WebDataSourcePrivate.h:
   1698         * WebView.subproj/WebFrame.m:
   1699         (-[WebFrame _setLoadType:]): Remove stray space.
   1700         (-[WebFrame _checkLoadCompleteForThisFrame]): Stop loading subframes
   1701 	manually and add a FIXME about confusingness of stopping loading here.
   1702         (-[WebFrame _defersCallbacksChanged]): Tell our subframes.
   1703         (-[WebFrame _addChild:]): Remove stray space.
   1704         (-[WebFrame _stopLoadingSubframes]): New helper method.
   1705         (-[WebFrame _subframeIsLoading]): New helper method, code moved
   1706 	from WebDataSource.
   1707         (-[WebFrame stopLoading]): Tell subframes to stop loading.
   1708         (-[WebFrame reload]): Remove extra braces.
   1709         * WebView.subproj/WebFrameInternal.h:
   1710 
   1711 2005-12-23  Maciej Stachowiak  <mjs (a] apple.com>
   1712 
   1713         Reviewed by John.
   1714 
   1715 	- move more frame tree traversal code from WebView to WebFrame
   1716 
   1717         * WebView.subproj/WebFrame.m:
   1718         (-[WebFrame _atMostOneFrameHasSelection]): Moved this debug
   1719 	method from WebView, renamed it and changed it to return a boolean
   1720 	so it is appropriate for use in assertions instead of giving its own
   1721 	errors.
   1722         (-[WebFrame _accumulateFramesWithSelection:]): Helper for the above.
   1723         (-[WebFrame _findFrameWithSelection]):  Moved from WebView and renamed from
   1724 	_findSelectedFrame, also removed the skipping variant.
   1725         (-[WebFrame _clearSelectionInOtherFrames]): Moved from WebView and
   1726 	changed how the logic works. Instead of clearing selection in any frame
   1727 	but the focus frame, it clears selection in all but this one.
   1728         * WebView.subproj/WebFrameInternal.h:
   1729         * WebView.subproj/WebHTMLView.m:
   1730         (-[WebHTMLView becomeFirstResponder]): Call _clearSelectionInOtherFrames
   1731         * WebView.subproj/WebPDFView.m:
   1732         (-[WebPDFView PDFViewWillClickOnLink:withURL:]): Stop getting WebFrame
   1733 	in needlessly roundabout way.
   1734         (-[WebPDFView becomeFirstResponder]): Call _clearSelectionInOtherFrames
   1735         * WebView.subproj/WebTextView.m:
   1736         (-[WebTextView _webFrame]): New helper method.
   1737         (-[WebTextView _elementAtWindowPoint:]): Use it.
   1738         (-[WebTextView becomeFirstResponder]): Call _clearSelectionInOtherFrames
   1739         (-[WebTextView resignFirstResponder]): Fix style issue
   1740         (-[WebTextView clickedOnLink:atIndex:]): Use new helkper
   1741         * WebView.subproj/WebView.m:
   1742         (-[WebView selectedFrame]): Call to WebFrame as appropriate
   1743         (-[WebView _selectedOrMainFrame]): Fix style issue
   1744         * WebView.subproj/WebViewInternal.h:
   1745 
   1746 2005-12-22  Maciej Stachowiak  <mjs (a] apple.com>
   1747 
   1748         Reviewed by Eric.
   1749 
   1750 	- move a few more methods from WebView to WebFrame.	
   1751 
   1752         * WebView.subproj/WebFrame.m:
   1753         (-[WebFrame _hasSelection]): Renamed from _frameIsSelected: and moved from
   1754 	WebView.
   1755         (-[WebFrame _clearSelection]): Renamed from _deselectFrame: and moved from 
   1756 	WebView.
   1757         * WebView.subproj/WebFrameInternal.h:
   1758         * WebView.subproj/WebView.m:
   1759         (-[WebView searchFor:direction:caseSensitive:wrap:]): Update for renames.
   1760         (-[WebView _findSelectedFrameStartingFromFrame:skippingFrame:]): Ditto.
   1761         (-[WebView _debugCollectSelectedFramesIntoArray:startingFromFrame:]): Ditto.
   1762         (-[WebView _selectedFrameDidChange]):
   1763 
   1764 2005-12-21  Timothy Hatcher  <timothy (a] apple.com>
   1765 
   1766         * WebKit.xcodeproj/project.pbxproj:
   1767           Set tab width to 8, indent width to 4 and uses tabs to false per file.
   1768 
   1769 2005-12-20  Alexey Proskuryakov  <ap (a] nypop.com>
   1770 
   1771         Reviewed by justin
   1772         
   1773         <http://bugs.webkit.org/show_bug.cgi?id=4682>
   1774         -[WebHTMLView firstRectForCharacterRange:] is using _selectedRange instead of the given range if no marked text
   1775 
   1776         * WebView.subproj/WebHTMLView.m:
   1777         (-[WebHTMLView firstRectForCharacterRange:]): 
   1778         Handle some large unsigned values the way NSTextView does.
   1779         Actually use the range passed in instead of _selectedRange,
   1780         use of _selectedRange was a workaround that is no longer necessary.
   1781 
   1782 2005-12-20  John Sullivan  <sullivan (a] apple.com>
   1783 
   1784         Reviewed by Darin Adler.
   1785         
   1786         - fixed http://bugs.webkit.org/show_bug.cgi?id=6146
   1787           (REGRESSION: Bold font used for Google search result pages is too thick)
   1788           
   1789         This is a problem with a particular font that was installed by Microsoft Office X. Though the
   1790         font and/or lower levels of font-handling code in the system are buggy, this bad symptom will
   1791         occur for users of Safari and other WebKit clients who happen to have one of these bad fonts.
   1792         This adds a workaround to avoid the problem.
   1793 
   1794         * WebCoreSupport.subproj/WebTextRendererFactory.m:
   1795         (-[WebTextRendererFactory fontWithFamilies:traits:size:]):
   1796         When we're going to synthesize bold or italic, yet the font we looked up was apparently a
   1797         match for the traits, try to look up a font that without the to-be-synthesized traits.
   1798         This way, instead of applying synthetic bold over Arial Bold, we'll apply synthetic
   1799         bold over Arial Regular, which is uglier than just using Arial Bold, but far less ugly
   1800         than using Arial Bold with synthetic bold too.
   1801 
   1802  2005-12-16  Justin Garcia  <justin.garcia (a] apple.com>
   1803  
   1804          <rdar://problem/4103393> Frequent Safari crash on lexisnexus.com (khtml::Selection::xPosForVerticalArrowNavigation)
   1805          <rdar://problem/4330451> CrashTracer: [REGRESSION] 2235 crashes in Safari at com.apple.WebCore: khtml::Selection::xPosForVerticalArrowNavigation const  436
   1806          
   1807          Reviewed by darin
   1808          
   1809          WebCore will crash when a selection that starts or ends in a node 
   1810          that has been removed from the document is modify()d.  This can occur:
   1811          (1) in non-editable regions (4103393 and 4330451), (2) in editable 
   1812          regions (4383146) as the result of arbitrary DOM operations, and (3) in 
   1813          Mail (4099739) as the result of an editing operation that sets a 
   1814          bad ending selection.
   1815          
   1816          Crashes of type (1) can occur when the user uses the arrow keys 
   1817          to interact with a web app, or when the user tries to use 
   1818          command-shift-arrow to switch tabs (this is a depricated
   1819          combo that will work if no one else responds to it). The easiest 
   1820          way to fix these crashes is to disallow editing'ish selection changes 
   1821          like moveDown:, selectWord:, pageDown:, etc, when the selection 
   1822          is in a non-editable region.
   1823          
   1824          Crashes of type (2) will require a more complicated fix (but occur 
   1825          much less often than type (1)).  Crashes of type (3) must be 
   1826          fixed by tracking down the editing operation that sets bad selections.
   1827          
   1828          Added a layout-test:
   1829          * editing/selection/selection-actions.html
   1830  
   1831          * WebView.subproj/WebHTMLView.m:
   1832          (-[WebHTMLView _canAlterCurrentSelection]):
   1833          (-[WebHTMLView _alterCurrentSelection:direction:granularity:]):
   1834          (-[WebHTMLView _alterCurrentSelection:verticalDistance:]):
   1835          (-[WebHTMLView _expandSelectionToGranularity:]):
   1836          * WebView.subproj/WebHTMLViewPrivate.h:
   1837 
   1838 2005-12-20  Justin Garcia  <justin.garcia (a] apple.com>
   1839 
   1840         Reviewed by mitz
   1841         
   1842         Fixed more uninitialized variable warnings, and 
   1843         removed an extra semicolon.
   1844 
   1845         * WebCoreSupport.subproj/WebTextRenderer.m:
   1846         (overrideLayoutOperation):
   1847         (createATSULayoutParameters):
   1848 
   1849 2005-12-20  Maciej Stachowiak  <mjs (a] apple.com>
   1850 
   1851         Reviewed by Darin.
   1852 
   1853 	- push more of frame lookup and management from WebView to
   1854 	WebFrame, this is in preparation for shifting this to WebCore
   1855 	http://bugs.webkit.org/show_bug.cgi?id=6163
   1856 	
   1857         * WebCoreSupport.subproj/WebBridge.m:
   1858         (-[WebBridge closeWindowSoon]): Adjust for change to WebFrameNamespaces
   1859         (-[WebBridge runModal]): ditto
   1860         * WebView.subproj/WebControllerSets.h:
   1861         * WebView.subproj/WebControllerSets.m:
   1862         (+[WebFrameNamespaces addFrame:toNamespace:]): This now operates in terms
   1863 	of WebFrames (expected to be the main frame) not WebViews.
   1864         (+[WebFrameNamespaces framesInNamespace:]): Ditto.
   1865         * WebView.subproj/WebFrame.m:
   1866         (-[WebFrame _setFrameNamespace:]): Set self, not WebView.
   1867         (-[WebFrame _shouldAllowAccessFrom:]): Moved this code above use
   1868 	to avoid prototyping the method.
   1869         (-[WebFrame _descendantFrameNamed:sourceFrame:]): Ditto.
   1870         (-[WebFrame _frameInAnyWindowNamed:sourceFrame:]): Copied logic
   1871 	over from WebView.
   1872         (-[WebFrame findFrameNamed:]): Do it all here, don't call WebView.
   1873         * WebView.subproj/WebFramePrivate.h:
   1874         * WebView.subproj/WebView.m:
   1875         * WebView.subproj/WebViewPrivate.h:
   1876 
   1877 2005-12-20  Geoffrey Garen  <ggaren (a] apple.com>
   1878 
   1879         Reviewed by adele.
   1880 
   1881         Fixed build failure due to missing 'b's in my last checkin.
   1882 
   1883         * WebCoreSupport.subproj/WebBridge.m:
   1884         (-[WebBridge isStatusbarVisible]): changed 'B' to 'b'
   1885         (-[WebBridge setStatusbarVisible:]): ditto
   1886 
   1887 2005-12-20  Mitz Pettel  <opendarwin.org (a] mitzpettel.com>
   1888 
   1889         Reviewed by Darin, committed by Adele.
   1890 
   1891         - fix deployment builds broken by the ATSUI multiple renderers patch
   1892         http://bugs.webkit.org/show_bug.cgi?id=6153
   1893 
   1894         * WebCoreSupport.subproj/WebTextRenderer.m:
   1895         (createATSULayoutParameters): Assign initial values, which will never be used,
   1896         to substituteRenderer and firstSmallCap, to avoid uninitialized variable warnings.
   1897 
   1898 2005-12-20  Geoffrey Garen  <ggaren (a] apple.com>
   1899 
   1900         Reviewed by John.
   1901 
   1902         Part of fix for <rdar://problem/4310363> JavaScript window.open: Height
   1903         is 1 pixel short, and related bugs. See WebCore ChageLog.
   1904 
   1905         * WebCoreSupport.subproj/WebBridge.m:
   1906         (-[WebBridge webView]): Added method.
   1907 
   1908 2005-12-20  Eric Seidel  <eseidel (a] apple.com>
   1909 
   1910         Reviewed by mjs.
   1911 
   1912         Development-only build fix.
   1913 
   1914         * WebView.subproj/WebFrame.m:
   1915         (-[WebFramePrivate dealloc]): fixed typo
   1916 
   1917 2005-12-20  Maciej Stachowiak  <mjs (a] apple.com>
   1918 
   1919         Not reviewed.
   1920 
   1921 	- revert accidental commit of this file.
   1922 
   1923 2005-12-19  Maciej Stachowiak  <mjs (a] apple.com>
   1924 
   1925         Reviewed by Eric.
   1926 
   1927 	- Move handling of frame namespaces down to WebFrame.
   1928 	- Put some internal class declarations in the implementation file.
   1929 
   1930         * WebView.subproj/WebControllerSets.m:
   1931         (+[WebFrameNamespaces addWebView:toFrameNamespace:]):
   1932         (+[WebFrameNamespaces webViewsInFrameNamespace:]):
   1933         * WebView.subproj/WebFrame.m:
   1934         (-[WebFramePrivate dealloc]):
   1935         (-[WebFrame _setFrameNamespace:]):
   1936         (-[WebFrame _frameNamespace]):
   1937         * WebView.subproj/WebFrameInternal.h:
   1938         * WebView.subproj/WebFramePrivate.h:
   1939         * WebView.subproj/WebView.m:
   1940         (-[WebView _close]):
   1941         (-[WebView _findFrameNamed:sourceFrame:]):
   1942         (-[WebView setGroupName:]):
   1943         (-[WebView groupName]):
   1944         * WebView.subproj/WebViewInternal.h:
   1945 
   1946 2005-12-19  Mitz Pettel  <opendarwin.org (a] mitzpettel.com>
   1947 
   1948         Reviewed by Darin, committed by Adele.
   1949         
   1950         Test: fast/text/atsui-multiple-renderers.html
   1951 
   1952         - fix http://bugs.webkit.org/show_bug.cgi?id=6139
   1953           ATSUI code path should implement small caps, synthetic bold and oblique and correct metrics for fallback fonts
   1954 
   1955         * WebCoreSupport.subproj/WebTextRenderer.m:
   1956         (overrideLayoutOperation): Fetch renderer info from the renderers array;
   1957         add synthetic bold offset; render only synthetic bold in the synthetic bold pass.
   1958         (drawGlyphs): Replaced 14 with new SYNTHETIC_OBLIQUE_ANGLE define.
   1959         (initializeATSUStyle): Apply a skewing transform for synthetic oblique.
   1960         (createATSUTextLayout): Merged into createATSUTextLayout.
   1961         (createATSULayoutParameters): Merged in createATSUTextLayout; allocate
   1962         and fill a renderers array and a character buffer for small caps and mirroring;
   1963         (applyMirroringToRun): Merged into createATSULayoutParameters.
   1964         (ATSU_drawHighlight): Deleted mirroring code.
   1965         (ATSU_draw): Deleted mirroring code; added second pass for synthetic bold.
   1966         (ATSU_pointToOffset): Deleted mirroring code.
   1967 
   1968 2005-12-19  Mitz Pettel  <opendarwin.org (a] mitzpettel.com>
   1969 
   1970         Reviewed by Darin, committed by Adele.
   1971         
   1972         Test: fast/text/atsui-kerning-and-ligatures.html
   1973 
   1974         - fix http://bugs.webkit.org/show_bug.cgi?id=6137
   1975           Disable kerning and some ligatures in the ATSUI code path
   1976 
   1977         * WebCoreSupport.subproj/WebTextRenderer.m:
   1978         (initializeATSUStyle): Disable kerning; disable ligatures unless the font
   1979         does not contain 'a', in which case it is assumed to never be rendered
   1980         by the CG code path.
   1981 
   1982 2005-12-19  Mitz Pettel  <opendarwin.org (a] mitzpettel.com>
   1983 
   1984         Reviewed by Darin, committed by Adele.
   1985         
   1986         Test: fast/text/should-use-atsui.html
   1987 
   1988         - fix for http://bugs.webkit.org/show_bug.cgi?id=6132
   1989           Incorrect selection highlighting for ATSUI text when selected range is "CG-safe"
   1990 
   1991         * WebCoreSupport.subproj/WebTextRenderer.m:
   1992         (shouldUseATSU): Always start scanning from 0 since drawing and
   1993         highlighting also measure everything up to run->from.
   1994 
   1995 2005-12-17  Maciej Stachowiak  <mjs (a] apple.com>
   1996 
   1997         Rubber stamped by Eric.
   1998 
   1999 	- remove some unused SPI headers.
   2000 
   2001         * DOM.subproj/WebDOMDocument.h: Removed.
   2002         * DOM.subproj/WebDOMElement.h: Removed.
   2003         * DOM.subproj/WebDOMNode.h: Removed.
   2004         * WebKit.xcodeproj/project.pbxproj:
   2005 
   2006 2005-12-17  Mitz Pettel  <opendarwin.org (a] mitzpettel.com>
   2007 
   2008         Reviewed and landed by Darin.
   2009 
   2010         - fix http://bugs.webkit.org/show_bug.cgi?id=5479
   2011           Can't select text with RTL override rendered by ATSUI
   2012 
   2013         * WebCoreSupport.subproj/WebTextRenderer.m:
   2014         (overrideLayoutOperation): Update since the layout only includes from -> to now.
   2015         (-[WebTextRenderer pointToOffset:style:position:includePartialGlyphs:]): Remove
   2016         reversed parameter.
   2017         (CG_floatWidthForRun): Add code to handle RTL case.
   2018         (addDirectionalOverride): Put the override around the entire run.
   2019         (ATSU_drawHighlight): Rearrange and reuse ATSU_floatWidthForRun for more of the work.
   2020         Also round.
   2021         (ATSU_pointToOffset): Remove reversed parameter and run swapping.
   2022         (CG_pointToOffset): Remove reversed parameter, using rtl flag in style instead.
   2023 
   2024 2005-12-16  Evan Gross  <evan (a] rainmakerinc.com>
   2025 
   2026         Reviewed and landed by Darin.
   2027 
   2028         - fix http://bugs.webkit.org/show_bug.cgi?id=4680
   2029           WebHTMLView (WebNSTextInputSupport) - attributedSubstringFromRange "not yet implemented"
   2030 
   2031         * WebView.subproj/WebHTMLView.m: (-[WebHTMLView attributedSubstringFromRange:]):
   2032         Implement by calling the same RTF conversion used when copying to the pasteboard.
   2033 
   2034 2005-12-16  Mitz Pettel  <opendarwin.org (a] mitzpettel.com>
   2035 
   2036         Reviewed and landed by Darin.
   2037 
   2038         - fix http://bugs.webkit.org/show_bug.cgi?id=6090
   2039           REGRESSION: Assertion failure when choosing Copy from a WebImageView's contextual menu
   2040 
   2041         * WebView.subproj/WebImageView.m:
   2042         (-[WebImageView elementAtPoint:]): Use WebCoreElementImageRendererKey
   2043         for the image renderer and WebElementImageKey for the image.
   2044 
   2045 2005-12-15  Maciej Stachowiak  <mjs (a] apple.com>
   2046 
   2047         Reviewed by Darin.
   2048 
   2049 	- remove _frameForView: method from WebView and replace with a direct pointer on the WebFrameView in the WebFrame
   2050 
   2051         * Misc.subproj/WebNSViewExtras.m:
   2052         * WebView.subproj/WebFrame.m:
   2053         (-[WebFrame _detachFromParent]):
   2054         (-[WebFrame _loadDataSource:withLoadType:formState:]):
   2055         (-[WebFrame initWithName:webFrameView:webView:]):
   2056         * WebView.subproj/WebFrameView.m:
   2057         (-[WebFrameView _setWebFrame:]):
   2058         (-[WebFrameView webFrame]):
   2059         * WebView.subproj/WebFrameViewInternal.h:
   2060         * WebView.subproj/WebView.m:
   2061         * WebView.subproj/WebViewPrivate.h:
   2062 
   2063 2005-12-13  Maciej Stachowiak  <mjs (a] apple.com>
   2064 
   2065         Reviewed by Darin.
   2066 
   2067 	- remove the dead _frameForDataSource: method (WebDataSource now knows its WebFrame)
   2068 	http://bugs.webkit.org/show_bug.cgi?id=6072
   2069 	
   2070         * WebView.subproj/WebView.m:
   2071         * WebView.subproj/WebViewPrivate.h:
   2072 
   2073 === Safari-521~5 ===
   2074 
   2075 2005-12-12  Timothy Hatcher  <timothy (a] apple.com>
   2076 
   2077         Reviewed by nobody, simple build fix.
   2078 
   2079         Fixes a couple ambiguous selector build errors when building with GCC 3.3.
   2080 
   2081         * Misc.subproj/WebIconDatabase.m:
   2082         (-[WebIconDatabase releaseIconForURL:]):
   2083         * WebView.subproj/WebHTMLView.m:
   2084         (-[NSView _web_layoutIfNeededRecursive:testDirtyRect:]):
   2085         (-[NSArray elementAtPoint:]):
   2086 
   2087 2005-12-12  Mitz Pettel  <opendarwin.org (a] mitzpettel.com>
   2088 
   2089         Reviewed and checked in by John Sullivan.
   2090         
   2091         Fix for: http://bugs.webkit.org/show_bug.cgi?id=6053
   2092         WebIconDatabase returns the Accessibility Verifier app icon instead of
   2093         a generic document icon
   2094         
   2095         * Misc.subproj/WebIconDatabase.m:
   2096         (-[WebIconDatabase _iconForFileURL:withSize:]):
   2097         use file type iconForFileType:NSFileTypeForHFSTypeCode(kGenericDocumentIcon) instead of '????'
   2098         to get the generic document icon.
   2099 
   2100 2005-12-12  John Sullivan  <sullivan (a] apple.com>
   2101 
   2102         Reviewed by Tim Omernick.
   2103         
   2104         - Made protocol <WebDocumentSelection> include protocol <WebDocumentText>, for clarity.
   2105         This required moving some methods from WebTextView, which conformed to <WebDocumentText>,
   2106         up into superclass WebSearchableTextView, which conformed to <WebDocumentSelection>.
   2107 
   2108         * Misc.subproj/WebSearchableTextView.m:
   2109         (-[NSString supportsTextEncoding]):
   2110         moved this method (unchanged) from subclass WebTextView
   2111         (-[NSString string]):
   2112         ditto
   2113         (-[NSString attributedString]):
   2114         ditto
   2115         (-[NSString selectedString]):
   2116         ditto
   2117         (-[NSString selectedAttributedString]):
   2118         ditto
   2119         (-[NSString selectAll]):
   2120         ditto
   2121         (-[NSString deselectAll]):
   2122         ditto
   2123         
   2124         * WebView.subproj/WebDocumentPrivate.h:
   2125         made <WebDocumentSelection> incorporate <WebDocumentText> rather than just <NSObject>
   2126         * WebView.subproj/WebHTMLView.h:
   2127         removed <WebDocumentText> from protocol list since it's covered by <WebDocumentSelection>
   2128         * WebView.subproj/WebPDFView.h:
   2129         ditto
   2130         * WebView.subproj/WebTextView.h:
   2131         ditto
   2132         * WebView.subproj/WebTextView.m:
   2133         removed the methods that were moved into WebSearchableTextView.m
   2134 
   2135 2005-12-10  Darin Adler  <darin (a] apple.com>
   2136 
   2137         Reviewed by John Sullivan.
   2138 
   2139         - fix http://bugs.webkit.org/show_bug.cgi?id=6032
   2140           REGRESSION: Uncaught exception when image is dragged out of webpage
   2141 
   2142         * WebView.subproj/WebHTMLView.m:
   2143         (-[WebHTMLView _startDraggingImage:at:operation:event:sourceIsDHTML:DHTMLWroteData:]):
   2144         Pass the image renderer, not the NSImage.
   2145         (-[WebHTMLView elementAtPoint:]): Add an NSImage to the dictionary, which now comes from
   2146         WebCore with only an image renderer.
   2147         * WebView.subproj/WebView.m: (-[WebView _writeImageElement:withPasteboardTypes:toPasteboard:]):
   2148         Pass the image renderer, not the NSImage.
   2149 
   2150 2005-12-10  Darin Adler  <darin (a] apple.com>
   2151 
   2152         Was getting build failures related to "count" methods.
   2153         Made Tim's build fix Leopard-only.
   2154 
   2155         * WebView.subproj/WebPreferencesPrivate.h: Go back to <PDFKit/PDFKit.h> on Tiger.
   2156 
   2157 2005-12-09  John Sullivan  <sullivan (a] apple.com>
   2158 
   2159         Reviewed by Adele Peterson.
   2160         
   2161         - fixed <rdar://problem/4373905> Cannot paste in Tiger Mail using TOT WebKit
   2162 
   2163         * WebView.subproj/WebView.m:
   2164         (-[WebView _frameForCurrentSelection]):
   2165         I removed this method many moons ago when restructuring the code involving frames and selection.
   2166         Too bad Mail was still using it (d'oh!). In Leopard Mail has updated to use newer SPI (which should
   2167         become API), but to continue to work with Mail on Tiger we need this method to be around. Now it's
   2168         just a cover for the method _selectedOrMainFrame, to which it was renamed so very long ago.
   2169 
   2170 2005-12-09  Tim Omernick  <timo (a] apple.com>
   2171 
   2172         Reviewed by John Sullivan.
   2173 
   2174         * Carbon.subproj/HIWebView.m:
   2175         (UpdateCommandStatus):
   2176 	Don't call -performSelector:withObject: on a method that returns a BOOL; this is not guaranteed to work on all architectures.
   2177 	-performSelector:withObject:'s return value should only be checked if the method returns an object.
   2178 
   2179 2005-12-09  Timothy Hatcher  <timothy (a] apple.com>
   2180 
   2181         Reviewed by nobody, build fix.
   2182 
   2183         Using <PDFKit/PDFKit.h> was causing build failures for the Mail team.
   2184         The comment about getting an ambiguous signature conflict anywhere the
   2185         method "count" is used seems to no longer be an issue.
   2186 
   2187         * WebView.subproj/WebPreferencesPrivate.h: Use <Quartz/Quartz.h>
   2188 
   2189 2005-12-08  John Sullivan  <sullivan (a] apple.com>
   2190 
   2191         Reviewed by Tim Hatcher.
   2192         
   2193         Some cleanup of how selection rects are associated with NSViews.
   2194 
   2195         * WebView.subproj/WebDocumentPrivate.h:
   2196         Added a -selectionView method to <WebDocumentSelection>, and clarified that the
   2197         selectionRect is in the coordinate system of this view.
   2198 
   2199         * Misc.subproj/WebSearchableTextView.m:
   2200         (-[WebSearchableTextView selectionView]):
   2201         new method, returns self
   2202         
   2203         * WebView.subproj/WebHTMLView.m:
   2204         (-[WebHTMLView selectionView]):
   2205         new method, returns self
   2206         
   2207         * WebView.subproj/WebPDFView.m:
   2208         (-[WebPDFView selectionRect]):
   2209         translate result into coordinate system of [PDFSubview documentView]
   2210         (-[WebPDFView selectionView]):
   2211         new method, returns [PDFSubview documentView]
   2212 
   2213 2005-12-08  John Sullivan  <sullivan (a] apple.com>
   2214 
   2215         Reviewed by Tim Omernick and Dave Hyatt.
   2216         
   2217         - fixed these semi-legendary bugs:
   2218         <rdar://problem/4032405> Inline PDF doesn't get keyboard focus like web pages do, so can't scroll with keys without clicking
   2219         <rdar://problem/4265684> PDFs use secondary selection when displaying found text (4748)
   2220 
   2221         * WebView.subproj/WebPDFView.m:
   2222         (-[WebPDFView becomeFirstResponder]):
   2223         Discovered that there is indeed PDFKit API for accessing the view that becomes focused; now
   2224         passes the focus down to that view.
   2225 
   2226 2005-12-08  John Sullivan  <sullivan (a] apple.com>
   2227 
   2228         Reviewed by Tim Omernick.
   2229         
   2230         - Added WebKit mechanism to help correctly pass the first responder into the PDF view hierarchy,
   2231         in order to start addressing keyboard focus and selection highlight issues. Unfortunately this 
   2232         doesn't actually have any user effect yet due to problems that must be fixed in PDFKit.
   2233 
   2234         * WebView.subproj/WebPDFView.m:
   2235         (-[WebPDFView acceptsFirstResponder]):
   2236         Overridden to returns YES. Needed so NSClipView knows it's OK to pass focus down to this level.
   2237         (-[WebPDFView becomeFirstResponder]):
   2238         With setNextKeyView:, splices the PDF view into the focus-passing mechanism in much the same
   2239         way as NSScrollView and NSClipView.
   2240         (-[WebPDFView setNextKeyView:]):
   2241         With becomeFirstResponder:, splices the PDF view into the focus-passing mechanism in much the same
   2242         way as NSScrollView and NSClipView.
   2243         (-[WebPDFView resignFirstResponder]):
   2244         Removed this method because the WebPDFView itself is never first responder except transiently.
   2245 
   2246 2005-12-08  Maciej Stachowiak  <mjs (a] apple.com>
   2247 
   2248         Reviewed by John.
   2249 
   2250 	- some small changes towards frame tree refactoring
   2251 
   2252 	Renamed WebViewSets to WebFrameNamespaces, and put the method for
   2253 	performing a selector on all extant WebViews to WebView itself,
   2254 	with a separate set tracking live WebViews. This should allow
   2255 	moving the storage of this info down to WebCore more easily.
   2256 
   2257         * WebCoreSupport.subproj/WebBridge.m:
   2258         (-[WebBridge closeWindowSoon]):
   2259         (-[WebBridge runModal]):
   2260         * WebCoreSupport.subproj/WebViewFactory.m:
   2261         (-[WebViewFactory refreshPlugins:]):
   2262         * WebView.subproj/WebControllerSets.h:
   2263         * WebView.subproj/WebControllerSets.m:
   2264         (+[WebFrameNamespaces addWebView:toFrameNamespace:]):
   2265         (webView::if):
   2266         (+[WebFrameNamespaces webViewsInFrameNamespace:]):
   2267         * WebView.subproj/WebView.m:
   2268         (+[WebView _makeAllWebViewsPerformSelector:]):
   2269         (-[WebView _removeFromAllWebViewsSet]):
   2270         (-[WebView _addToAllWebViewsSet]):
   2271         (-[WebView _close]):
   2272         (-[WebView _findFrameNamed:sourceFrame:]):
   2273         (-[WebView _commonInitializationWithFrameName:groupName:]):
   2274         (-[WebView setGroupName:]):
   2275         * WebView.subproj/WebViewInternal.h:
   2276 
   2277 2005-12-08  Darin Adler  <darin (a] apple.com>
   2278 
   2279         Reviewed by Eric.
   2280 
   2281         - fixed http://bugs.webkit.org/show_bug.cgi?id=5689
   2282           add support for CSS "custom cursors" (cursor images)
   2283 
   2284         * WebCoreSupport.subproj/WebImageRenderer.h: Remove declaration of TIFFRepresentation and
   2285         image methods since both are required by the WebCoreImageRenderer protocol now and we don't
   2286         have to re-declare them.
   2287 
   2288         * Misc.subproj/WebNSPasteboardExtras.m: Add an import of the WebCoreImageRenderer.h file
   2289         since we need to use methods inherited from that protocol.
   2290         * Misc.subproj/WebNSViewExtras.m: Ditto.
   2291         * WebCoreSupport.subproj/WebImageRenderer.m: Ditto. (Use and implement.)
   2292 
   2293 2005-12-07  Mitz Pettel  <opendarwin.org (a] mitzpettel.com>
   2294 
   2295         Reviewed by Maciej, landed by Darin.
   2296 
   2297         - fix http://bugs.webkit.org/show_bug.cgi?id=5878
   2298           REGRESSION (WebTextRenderer.m r1.201): pointToOffset always takes the CG code path
   2299 
   2300         * WebCoreSupport.subproj/WebTextRenderer.m:
   2301         (-[WebTextRenderer pointToOffset:style:position:reversed:includePartialGlyphs:]):
   2302         Added the missing "return".
   2303 
   2304 2005-12-07  John Sullivan  <sullivan (a] apple.com>
   2305 
   2306         Reviewed by Tim Omernick.
   2307         
   2308         - <rdar://problem/4331488> TOT Assertion failure in -[WebHTMLView nextValidKeyView] 
   2309         @ home.netscape.com
   2310 
   2311         * WebView.subproj/WebHTMLView.m:
   2312         (-[NSArray nextValidKeyView]):
   2313         Removed assert that I added a while back. In this case at least, the assertion is
   2314         overzealous, and I can't recreate the tortured chain of logic that led me to adding
   2315         this assertion in the first place.
   2316 
   2317 2005-12-06  David Harrison  <harrison (a] apple.com>
   2318 
   2319 	Reviewed by Darin.
   2320 
   2321 	- fix <rdar://problem/4365308> Glendale Regression: Floating dictionary doesn't work well in Safari text areas/fields
   2322 	
   2323 	Add use of NSAccessibilityHitTest to the list of exceptions.
   2324 
   2325 	* WebView.subproj/WebHTMLView.m:
   2326 	(-[WebHTMLView hitTest:]): check for NSFlagsChanged event. 
   2327 
   2328 2005-12-05  John Sullivan  <sullivan (a] apple.com>
   2329 
   2330         Reviewed by Darin Adler.
   2331 
   2332         * WebView.subproj/WebHTMLView.m:
   2333         (-[NSArray validateUserInterfaceItem:]):
   2334         one more tweak: moved jumpToSelection: to be validated the same way as
   2335         centerSelectionInVisibleArea:, since it now calls the same code. Might not
   2336         make a difference in any real code, but you never know.
   2337 
   2338 2005-12-05  John Sullivan  <sullivan (a] apple.com>
   2339 
   2340         Reviewed by Darin Adler.
   2341 
   2342         * WebView.subproj/WebHTMLView.m:
   2343         (-[NSArray validateUserInterfaceItem:]):
   2344         removed double handling of centerSelectionInVisibleArea
   2345 
   2346 2005-12-05  John Sullivan  <sullivan (a] apple.com>
   2347 
   2348         Reviewed by Tim Omernick.
   2349         
   2350         - WebKit part of fix for 
   2351         <rdar://problem/4365690> Find > Jump to Selection does nothing on plain-text documents (inc. source HTML)        
   2352 
   2353         * WebView.subproj/WebHTMLView.m:
   2354         (-[WebHTMLView jumpToSelection:]):
   2355         Reimplement jumpToSelection: to call centerSelectionInVisibleArea:, and added a comment explaining why
   2356         jumpToSelection: exists at all. Note that centerSelectionInVisibleArea: was already implemented here; it
   2357         was added as part of HTML editing implementation without us realizing that it was the API replacement
   2358         for jumpToSelection:.
   2359         (-[WebHTMLView validateUserInterfaceItem:]):
   2360         validate centerSelectionInVisibleArea: the same way we validate jumpToSelection: (we should have done
   2361         this when centerSelectionInVisibleArea: was implemented)
   2362         
   2363         * WebView.subproj/WebPDFView.m:
   2364         (-[WebPDFView centerSelectionInVisibleArea:]):
   2365         new method, same code that jumpToSelection: used to have
   2366         (-[WebPDFView jumpToSelection:]):
   2367         now calls centerSelectionInVisibleArea:, and there's now a comment about why it exists at all.
   2368         (-[WebPDFView validateUserInterfaceItem:]):
   2369         validate centerSelectionInVisibleArea: the same way we validate jumpToSelection:
   2370 
   2371 2005-12-04  Tim Omernick  <timo (a] apple.com>
   2372 
   2373         Reviewed by Dave Harrison, John Sullivan.
   2374 
   2375 	<rdar://problem/4364847> REGRESSION: QuickTime movies open without controller or don't open at all (5928)
   2376 
   2377 	I changed WebFrameView on 2005-11-29 so that it avoids creating duplicate WebPluginDocumentViews.
   2378 	Unfortunately, this change caused a regression due to the fact that it subtly changed when plugins are
   2379 	initialized.  Certain plugins (e.g. QuickTime) expect to be initialized after the WebPluginDocumentView
   2380 	has been "committed" (inserted into the view hierarchy).
   2381 
   2382 	My fix is to ensure that the plugin is initialized where we previously would have created that second
   2383 	WebPluginDocumentView -- that is, the plugin is created after the WebPluginDocumentView has been committed.
   2384 	
   2385         * Plugins.subproj/WebPluginDocumentView.m:
   2386         (-[WebPluginDocumentView setDataSource:]):
   2387 	Don't initialize the plugin if the WebPluginDocumentView has not been inserted into the view hierarchy.
   2388 	We assume here that a later call to -setDataSource: will pass this conditional, once the WebDocumentView
   2389 	has been committed.
   2390 	
   2391 2005-12-02  Justin Garcia <justin.garcia (a] apple.com>
   2392 
   2393         <rdar://problem/4345030>
   2394         Denver REGRESSION (10.4.2-10.4.3): Two identical warnings on "Back" from Amazon's package tracker
   2395         
   2396         Before checking the navigation policy for a request, the request is compared
   2397         against the last checked request.  If the two are the same, no check is done.
   2398         In the bug, the two requests are identical except for the boolean on
   2399         NSURLRequests that tells Foundation to support multipart loads for that request.
   2400         One request was the one that was used to start servicing "Back" operation, and
   2401         the second was being used to start loading the page (it needed to be reloaded 
   2402         because it was the result of a form submission). Set the boolean on all 
   2403         NSURLRequests, not just one's that are about to be used to start a load.   
   2404 
   2405         Reviewed by harrison
   2406 
   2407         * WebView.subproj/WebDataSource.m:
   2408         (-[WebDataSource _startLoading:]):
   2409         (-[WebDataSource initWithRequest:]):
   2410         * WebView.subproj/WebDataSourcePrivate.h:
   2411 
   2412 2005-12-01  Darin Adler <darin (a] apple.com>
   2413 
   2414         Reviewed by Vicki.
   2415 	
   2416 	- fix <rdar://problem/4349721> Regression: Hovering over menu item doesn't highlight menu item or 
   2417 	mousing up on menu item in applet does not open URL in new window at smartmoney.com
   2418 
   2419 	Since Java depends on doing a hit test inside it's mouse moved handling, let hit testing on Java 
   2420 	applets go through the standard NSView code path. Since this should only happen for Java, add a global
   2421 	so that we can Use our own WebHTMLView hit testing when calling from _updateMouseoverWithEvent.
   2422 
   2423         * WebView.subproj/WebHTMLView.m:
   2424         (-[WebHTMLView _hitViewForEvent:]): rename forceRealHitTest to forceNSViewHitTest
   2425         (-[WebHTMLView _updateMouseoverWithEvent:]): set global variable  to force a WebHTMLView-style hit test from here
   2426         (-[WebHTMLView hitTest:]): perform the appropriate hit test based on global variables 
   2427 
   2428 2005-11-29  Andrew Wellington  <proton (a] wiretapped.net>
   2429 
   2430         Reviewed by darin.  Committed by eseidel.
   2431 
   2432         Fix for: http://bugs.webkit.org/show_bug.cgi?id=4726
   2433         Drop of multiple non-image file URLs only yields one item
   2434 
   2435         * WebView.subproj/WebHTMLView.m:
   2436         (-[WebHTMLView _documentFragmentWithPaths:]):
   2437 
   2438 2005-11-29  Tim Omernick  <timo (a] apple.com>
   2439 
   2440         Reviewed by John Sullivan, Eric Seidel
   2441 
   2442 	<rdar://problem/4340787> Safari & Dashcode create 2 instances of the QC plug-in
   2443 	
   2444         * WebView.subproj/WebFrameView.m:
   2445         (-[WebFrameView _makeDocumentViewForDataSource:]):
   2446 	Instead of creating a new WebDocumentView, use the WebDataSource's representation if it is a WebDocumentView
   2447 	of the appropriate class.  Right now, this can only happen when the loading document is a standalone WebKit
   2448 	plugin, because WebPluginDocumentView is both the WebDocumentView and the WebDocumentRepresentation for that
   2449 	kind of page load.
   2450 	
   2451 	I have verified that this does not affect other kinds of page loads; in all other cases, the representation
   2452 	class is distinct from the document view class.
   2453 
   2454 	I talked with Chris Blumenberg about this change (he knows this code), and he agreed that this is the right
   2455 	approach.
   2456 
   2457 2005-11-28  Alexey Proskuryakov  <ap (a] nypop.com>
   2458 
   2459         Reviewed by Darin. Committed by Maciej.
   2460 
   2461 	- fixed "Word completion doesn't work at end of word (unless last word)"
   2462 	(http://bugs.webkit.org/show_bug.cgi?id=4062)
   2463 
   2464         * WebView.subproj/WebHTMLView.m:
   2465         (-[WebTextCompleteController doCompletion]):
   2466 
   2467 2005-11-28  John Sullivan  <sullivan (a] apple.com>
   2468 
   2469         Reviewed by Tim Omernick.
   2470         
   2471         Probable fix for <rdar://problem/4356060> crash in -[WebHistoryItem _mergeAutoCompleteHints:]
   2472 
   2473         * History.subproj/WebHistory.m:
   2474         (-[WebHistoryPrivate addItem:]):
   2475         retain/release oldEntry until we're done with it, since removing it from dictionary might
   2476         cause it to be dealloc'ed otherwise.
   2477         
   2478         * History.subproj/WebHistoryItem.m:
   2479         (-[WebHistoryItem _mergeAutoCompleteHints:]):
   2480         added an assert
   2481 
   2482 2005-11-26  Alexey Proskuryakov  <ap (a] nypop.com>
   2483 
   2484         Reviewed by mjs.  Committed by eseidel.
   2485 
   2486         Fix for http://bugs.webkit.org/show_bug.cgi?id=5230
   2487         "characterIndexForPoint: not yet implemented"
   2488 
   2489         * WebView.subproj/WebHTMLView.m:
   2490         (-[WebHTMLView characterIndexForPoint:]):
   2491         (-[WebHTMLView firstRectForCharacterRange:]):
   2492 
   2493 2005-11-22  Darin Adler  <darin (a] apple.com>
   2494 
   2495         * WebView.subproj/WebView.h: Fixed incorrect comment in public header.
   2496 
   2497 2005-11-18  Vicki Murley  <vicki (a] apple.com>
   2498 
   2499 	Changes by Tim H, reviewed by Vicki.
   2500 
   2501 	- call shouldClose on the bridge for the main frame
   2502 
   2503         * WebView.subproj/WebView.m:
   2504         (-[WebView shouldClose]):
   2505 
   2506 2005-11-18  Vicki Murley  <vicki (a] apple.com>
   2507 
   2508         Changes by Darin, reviewed by Beth and Vicki.
   2509 
   2510         - fix <rdar://problem/3939265> support "before unload" event and onbeforeunload handler (supported by both IE and Mozilla)
   2511 
   2512         * WebCoreSupport.subproj/WebBridge.m:
   2513         (-[WebBridge canRunBeforeUnloadConfirmPanel]):
   2514         (-[WebBridge runBeforeUnloadConfirmPanelWithMessage:]):
   2515         * WebView.subproj/WebFrame.m:
   2516         (-[WebFrame _checkNavigationPolicyForRequest:dataSource:formState:andCall:withSelector:]):
   2517         (-[WebFrame _continueLoadRequestAfterNavigationPolicy:formState:]):
   2518         * WebView.subproj/WebUIDelegatePrivate.h:
   2519         * WebView.subproj/WebView.m:
   2520         (-[WebView shouldClose]):
   2521         * WebView.subproj/WebViewPrivate.h:
   2522 
   2523 2005-11-10  Maciej Stachowiak  <mjs (a] apple.com>
   2524 
   2525         Build fix, not reviewed.
   2526 
   2527         * Plugins.subproj/WebBaseNetscapePluginViewInternal.h: Added.
   2528 
   2529 2005-11-10  Tim Omernick  <timo (a] apple.com>
   2530 
   2531         Reviewed by Geoff.
   2532 
   2533 	<rdar://problem/4237941> Dashboard needs a way to stop Netscape plug-ins from getting null events
   2534 
   2535         * Plugins.subproj/WebBaseNetscapePluginViewInternal.h: Added.
   2536 	Added WebInternal category, with -stopNullEvents and -restartNullEvents.  These methods already exist on WebBaseNetscapePluginView.
   2537 	I am just exposing them	to callers elsewhere within WebKit.
   2538 
   2539         * WebKit.xcodeproj/project.pbxproj:
   2540 	Added WebBaseNetscapePluginViewInternal.h.
   2541 
   2542         * WebView.subproj/WebFrame.m:
   2543         (-[WebFrame _recursive_pauseNullEventsForAllNetscapePlugins]):
   2544 	Walks down the web frame hierarchy and calls -_pauseNullEventsForAllNetscapePlugins on each WebHTMLView.
   2545         (-[WebFrame _recursive_resumeNullEventsForAllNetscapePlugins]):
   2546 	Same as above, but calls -_resumeNullEventsForAllNetscapePlugins.
   2547 	
   2548         * WebView.subproj/WebFramePrivate.h:
   2549 	Declared -_recursive_pauseNullEventsForAllNetscapePlugins and -_recursive_pauseNullEventsForAllNetscapePlugins.
   2550 	
   2551         * WebView.subproj/WebHTMLView.m:
   2552         (-[WebHTMLView _pauseNullEventsForAllNetscapePlugins]):
   2553 	Checks subviews for WebBaseNetscapePluginViews, and calls -stopNullEvents on them.
   2554         (-[WebHTMLView _resumeNullEventsForAllNetscapePlugins]):
   2555 	Same as above, but calls -restartNullEvents.
   2556 
   2557         * WebView.subproj/WebHTMLViewInternal.h:
   2558 	Declared -_pauseNullEventsForAllNetscapePlugins and -_resumeNullEventsForAllNetscapePlugins.
   2559 
   2560 2005-11-07  Geoffrey Garen  <ggaren (a] apple.com>
   2561 
   2562         Darin reviewed this a while back.
   2563 
   2564         - Fixed <rdar://problem/4161660> window.close followed by window.print
   2565         in onload handler crashes Safari in KJS::ScopeChain::bottom
   2566         (redmccombstoyota.com)
   2567         
   2568         Added a call to stopLoading inside closeWindowSoon to prevent load
   2569         events from firing after a window has torn down.
   2570         
   2571         Manual test case: WebCore/manual-tests/window-close-during-parsing.html
   2572 
   2573         * WebCoreSupport.subproj/WebBridge.m:
   2574         (-[WebBridge closeWindowSoon]):
   2575 
   2576 2005-11-03  Timothy Hatcher  <timothy (a] apple.com>
   2577 
   2578         Reviewed by Darin and Vicki.
   2579 
   2580         * WebKit.xcodeproj/project.pbxproj:
   2581           Change to use $(SYSTEM_LIBRARY_DIR) consistently and place
   2582           $(NEXT_ROOT) in a few spots to make build-root work.
   2583 
   2584 2005-11-01  Tim Omernick  <timo (a] apple.com>
   2585 
   2586         Reviewed by John Sullivan.
   2587 
   2588 	<rdar://problem/4318632>
   2589 
   2590 	I've added a new notification, WebPluginWillPresentNativeUserInterfaceNotification.  Plugins are expected to post this
   2591 	notification before presenting "native UI", such as dialog boxes.  A Dashboard client can observe this notification to
   2592 	hide the Dashboard layer when plugins present external UI.
   2593 	
   2594         * English.lproj/StringsNotToBeLocalized.txt:
   2595 	Added "WebPluginWillPresentNativeUserInterface".
   2596 
   2597         * Plugins.subproj/WebPluginsPrivate.h: Added.
   2598         * Plugins.subproj/WebPluginsPrivate.m: Added.
   2599 	Declare WebPluginWillPresentNativeUserInterfaceNotification.
   2600 
   2601         * WebKit.xcodeproj/project.pbxproj:
   2602 	Added WebPluginsPrivate.[hm]
   2603 
   2604 	* WebKit.exp:
   2605 	Added _WebPluginWillPresentNativeUserInterfaceNotification.
   2606 
   2607 2005-11-01  John Sullivan  <sullivan (a] apple.com>
   2608 
   2609         Reviewed by Darin Adler.
   2610         
   2611         fixed deployment build by hiding local variables used only in ASSERTs on builds for
   2612         which ASSERT_DISABLED is true.
   2613 
   2614         * History.subproj/WebHistory.m:
   2615         (-[WebHistoryPrivate removeItemForURLString:]):
   2616         (-[WebHistoryPrivate setLastVisitedTimeInterval:forItem:]):
   2617 
   2618 2005-11-01  John Sullivan  <sullivan (a] apple.com>
   2619 
   2620         Reviewed by Tim Omernick.
   2621         
   2622         - fixed <rdar://problem/4324104> Assertion failure (foundDate) in WebHistory
   2623         
   2624         WebFrame was updating the last visited date on a WebHistoryItem behind WebHistory's
   2625         back, causing WebHistory's caches of items by date to get out of sync with reality.
   2626         Changed to set the date through WebHistory rather than directly.
   2627 
   2628         * History.subproj/WebHistory.m:
   2629         (-[WebHistoryPrivate _removeItemFromDateCaches:]):
   2630         New method, extracted from removeItemForURLString.
   2631         (-[WebHistoryPrivate removeItemForURLString:]):
   2632         Now calls extracted method. Cleaned up white space a little.
   2633         (-[WebHistoryPrivate _addItemToDateCaches:]):
   2634         New method, extracted from addItem:
   2635         (-[WebHistoryPrivate addItem:]):
   2636         Now calls extracted method. Cleaned up white space a little.
   2637         (-[WebHistoryPrivate setLastVisitedTimeInterval:forItem:]):
   2638         New method, removes item from date caches, changes date, then adds item back to
   2639         date caches and sends notification.
   2640         (-[WebHistory setLastVisitedTimeInterval:forItem:]):
   2641         New method, cover for WebHistoryPrivate version.
   2642         
   2643         * History.subproj/WebHistoryItem.m:
   2644         (-[WebHistoryItem _setLastVisitedTimeInterval:]):
   2645         Don't send notification here; send from new WebHistory method instead.
   2646         
   2647         * History.subproj/WebHistoryItemPrivate.h:
   2648         Added comment about avoiding incorrect use of _setLastVisitedTimeInterval:
   2649         * History.subproj/WebHistoryPrivate.h:
   2650         Added declarations for WebHistory and WebHistoryPrivate versions of 
   2651         setLastVisitedTimeInterval:forItem:
   2652         
   2653         * WebView.subproj/WebFrame.m:
   2654         (-[WebFrame _transitionToCommitted:]):
   2655         change history item's date via new WebHistory method rather than directly
   2656 
   2657 2005-10-25  Timothy Hatcher  <timothy (a] apple.com>
   2658 
   2659         Reviewed by Darin.
   2660 
   2661         Remove the use of a stamp file in the Frameworks symlink build phase.
   2662         This lets us pass the build verification.
   2663 
   2664         * WebKit.xcodeproj/project.pbxproj:
   2665 
   2666 2005-10-24  Darin Adler  <darin (a] apple.com>
   2667 
   2668         Reviewed by Geoff.
   2669 
   2670         - change internal methods in WebTextRenderer to be functions in case this
   2671           has any effect on speed (also makes things a bit clearer, in my opinion)
   2672 
   2673         * WebCoreSupport.subproj/WebTextRenderer.h: Made all fields public, which is
   2674         OK since this is really a private class. Made setAlwaysUseATSU: class method
   2675         public too for the same reason.
   2676 
   2677         * WebCoreSupport.subproj/WebTextRenderer.m: Change all methods to functions.
   2678         (destroy): Function name for method free.
   2679         (-[WebTextRenderer drawLineForCharacters:yOffset:width:color:thickness:]): Removed code to first subtract
   2680         lineSpacing - descent, then later add it back.
   2681         (getSmallCapsRenderer): Function name for method smallCapsRenderer.
   2682         (findSubstituteFont): Function name for method substituteFontForString:families:.
   2683         (findSubstituteRenderer): Function name for method substituteRendererForCharacters:length:families:.
   2684         (updateGlyphMapEntry): Function name for method updateGlyphEntryForCharacter:glyphID:substituteRenderer:.
   2685         (extendGlyphMap): Function name for method extendCharacterToGlyphMapToInclude:.
   2686         (extendWidthMap): Function name for method extendGlyphToWidthMapToInclude:.
   2687         (getTextBounds): Function name for method trapezoidForRun:style:atPoint:.
   2688 
   2689 2005-10-24  Mitz Pettel  <opendarwin.org (a] mitzpettel.com>
   2690 
   2691         Reviewed by Darin.  Committed by David Harrison.
   2692 
   2693         http://bugs.webkit.org/show_bug.cgi?id=5415
   2694         "Left border of selection highlight leaves behind a trail"
   2695         
   2696         * manual-tests/drag_select_highlighting.html: Added.
   2697         (this test case was added to WebCore)
   2698    
   2699         * WebCoreSupport.subproj/WebTextRenderer.m:
   2700         (overrideLayoutOperation):
   2701         (-[WebTextRenderer CG_drawHighlightForRun:style:geometry:]):
   2702         (-[WebTextRenderer ATSU_drawHighlightForRun:style:geometry:]):
   2703         (advanceWidthIterator):
   2704 
   2705 
   2706 2005-10-23  Tim Omernick  <tomernick (a] apple.com>
   2707 
   2708         Reviewed by Dave Hyatt.
   2709 
   2710 	<http://bugs.webkit.org/show_bug.cgi?id=5365>
   2711 
   2712 	Send -webPlugInStop (or -pluginStop) and -webPluginDestroy (or -pluginDestroy)
   2713 	to complying plugins right when they're removed from the WebHTMLView, and also
   2714 	release them from the plugin controller's arrays.
   2715 	
   2716 	I think this patch makes WebKit behave more like plugins expect it to, which is
   2717 	the way it already behaves with Netscape plugins.
   2718 	
   2719 	I expect complying plugins to stop making noise when receiving the stop
   2720 	message, but QuickTime doesn't. If it's lucky, then it will be deallocated
   2721 	because of the release and will stop then. However, JS, for one, can retain the
   2722 	plugin (e.g. if you execute <javascript:document.getElementById('obj').width;>
   2723 	before clicking Remove OBJECT), in which case it will just keep playing.
   2724 	
   2725         * Plugins.subproj/WebPluginController.h:
   2726         * Plugins.subproj/WebPluginController.m:
   2727         (-[WebPluginController destroyPlugin:]):
   2728 	Stop and destroy the plugin.
   2729         * WebView.subproj/WebHTMLView.m:
   2730         (-[NSArray willRemoveSubview:]):
   2731 	Destroy plugins when they are removed from the HTML view.
   2732 	
   2733 2005-10-23  Geoffrey Garen  <ggaren (a] apple.com>
   2734 
   2735         Reviewed by Maciej.
   2736 
   2737         For better abstraction, made the tokenizer -- instead of the 
   2738         data source -- responsible for calling [WebFrame _checkLoadComplete]
   2739         when the tokenizer stops.
   2740 
   2741         * WebView.subproj/WebDataSource.m:
   2742         (-[WebDataSource _stopLoadingInternal]):
   2743 
   2744 2005-10-21  Geoffrey Garen  <ggaren (a] apple.com>
   2745 
   2746         Reviewed by darin.
   2747         
   2748         WebKit side of the fix for <rdar://problem/4184719> window.print() followed by 
   2749         window.close() causes world leak
   2750         
   2751         No test case added because I have another reviewed patch that will include a test
   2752         for this bug as well as many others.
   2753 
   2754         Under some conditions, [WebDataSource stopLoading] did not set [WebDataSource isLoading]
   2755         to false, so the didFInishLoad delegates never fired.
   2756         
   2757         The reason isLoading didn't become false was that the tokenizer was still running.
   2758         The fix here is to move the call to [WebCoreBridge stopLoading] above the early return
   2759         inside [WebDataSource stopLoading] -- since the tokenizer may still be running even if the
   2760         loader is finished loading -- and then to call [WebFrame _checkLoadComplete] to 
   2761         give the frame a chance to fire its delegates.
   2762         
   2763         * WebView.subproj/WebDataSource.m:
   2764         (-[WebDataSource _stopLoadingInternal]):
   2765 
   2766 2005-10-21  Beth Dakin  <bdakin (a] apple.com>
   2767 
   2768         Reviewed by Darin??
   2769 
   2770 	Fix for <rdar://problem/3853672> Malformed HTML using crashes Safari in NSFireTimer
   2771 
   2772 	The webFrame was being deleted prematurely by a call to stop(), so we changed it
   2773 	so that the calls to _receivedMainResourceError and _mainReceivedError happen 
   2774 	before the stop(), and we retain the bridge.
   2775 
   2776         * WebView.subproj/WebDataSource.m:
   2777         (-[WebDataSource _receivedMainResourceError:complete:]):
   2778 
   2779 2005-10-21  Geoffrey Garen  <ggaren (a] apple.com>
   2780 
   2781         Patch by TimO, Reviewed by hyatt, tested and landed by me.
   2782 
   2783         Found what appears to be a misguided optimization that actually causes a measurable performance problem.
   2784         A fixed-size buffer was allocated on the stack to pass into CFURLGetBytes(), presumably to avoid malloc()
   2785         for URLs less than 2048 bytes.  There was also a fallback which malloc()'ed a buffer in case the fixed-size
   2786         buffer was too small to hold the URL's bytes.  This malloc()'ed buffer was then wrapped in an NSData using
   2787         +dataWithBytesNoCopy:length:, avoiding a memory copy (yay!)
   2788 
   2789         The problem with this approach is two-fold:
   2790     
   2791         1. Regardless of how the buffer was allocated and filled, it is immediately wrapped in an NSData using
   2792         +dataWithBytes:length:, which copies the input bytes.  This is pretty much unavoidable; we need to get
   2793         the data into a malloc()'ed buffer to return it to the caller, unless the caller provides its own storage
   2794         (which would be super inconvenient).
   2795     
   2796         2. The size of the fixed buffer was large enough that it fit most (if not all) URLs involved in our Page
   2797         Load Test.  This means the unintentionally-inefficient case was by far the most *common* case!
   2798         
   2799         My fix is to malloc() the buffer from the start, and then use +[NSData dataWithBytes:length:freeWhenDone:]
   2800         to wrap the buffer in an NSData.  This avoids a memory copy for the normal case where a URL is less than
   2801         2048 bytes, and keeps the efficient behavior for the uncommon long URL case.
   2802 
   2803         * Misc.subproj/WebNSURLExtras.m:
   2804         (-[NSURL _web_originalData]):
   2805 
   2806 2005-10-21  Mitz Pettel  <opendarwin.org (a] mitzpettel.com>
   2807 
   2808         Reviewed and landed by Darin.
   2809 
   2810         - fixed a couple regressions caused by my last check-in
   2811           http://bugs.webkit.org/show_bug.cgi?id=5437
   2812           http://bugs.webkit.org/show_bug.cgi?id=5443
   2813 
   2814         * WebCoreSupport.subproj/WebTextRenderer.m:
   2815         (-[WebTextRenderer CG_drawHighlightForRun:style:geometry:]): Compute background width
   2816         correctly, by subtracting position after run from position before run.
   2817         (addDirectionalOverride): Make the range include only the characters between the
   2818         directional override characters, not the directional override characters themselves.
   2819         (initializeWidthIterator): Correctly compute "widthToStart" based on the offset to
   2820         the beginning of the run, not to the end of the run!
   2821 
   2822 2005-10-19  Darin Adler  <darin (a] apple.com>
   2823 
   2824         Reviewed by Maciej.
   2825 
   2826         - optimizations for a total of about 1% speed-up on PLT
   2827 
   2828         * WebCoreSupport.subproj/WebTextRenderer.h: Updated to use bool instead of BOOL,
   2829         since BOOL is a signed char (which is not so efficient, at least on PPC).
   2830         * WebCoreSupport.subproj/WebTextRenderer.m:
   2831         (isSpace): Changed BOOL to bool and UniChar to UChar32. This actually fixes a
   2832         potential bug when the passed-in character is a non-BMP character (> FFFF).
   2833         (isRoundingHackCharacter): Ditto.
   2834         (widthForGlyph): Merged getUncachedWidth, widthFromMap, and widthForGlyph into
   2835         one function. Marked it inline. Changed to include syntheticBoldOffset in the
   2836         cached widths to save an add in the cached case. Instead of the special constant
   2837         UNINITIALIZED_GLYPH_WIDTH, just check for a width >= 0. This allows us to use
   2838         a negative number or NAN for the uninitialized width value -- I chose NAN.
   2839         (overrideLayoutOperation): Use bool instead of Boolean in one place.
   2840         (-[WebTextRenderer initWithFont:]): Use lroundf instead of ROUND_TO_INT.
   2841         (-[WebTextRenderer floatWidthForRun:style:]): Put the code to choose the ATSU
   2842         vs. CG code path back in here, because there are no callers inside the class
   2843         that need to call both.
   2844         (-[WebTextRenderer drawLineForCharacters:yOffset:width:color:thickness:]):
   2845         Use bool instead of BOOL.
   2846         (+[WebTextRenderer setAlwaysUseATSU:]): Ditto.
   2847         (fontContainsString): Ditto.
   2848         (-[WebTextRenderer computeWidthForSpace]): Ditto. Also use roundf instead of
   2849         using ROUND_TO_INT.
   2850         (-[WebTextRenderer setUpFont]): Use bool instead of BOOL.
   2851         (drawGlyphs): Ditto.
   2852         (-[WebTextRenderer CG_drawHighlightForRun:style:geometry:]): Restructure the
   2853         code so it can use the new advanceWidthIterator function instead of the old
   2854         widthForNextCharacter function.
   2855         (-[WebTextRenderer CG_drawRun:style:geometry:]): Use malloc instead of calloc
   2856         since we don't need initialization. Call CG_floatWidthForRun instead of
   2857         floatWidthForRun -- no need to re-check whether to use the CG or ATSU code path.
   2858         Removed code to handle a renderer of 0 since we no longer generate that in
   2859         the renderers array in advanceWidthIterator.
   2860         (CG_floatWidthForRun): Changed to call the new advanceWidthIterator instead of
   2861         the old widthForNextCharacter.
   2862         (-[WebTextRenderer extendCharacterToGlyphMapToInclude:]): Use malloc instead of
   2863         calloc and explicitly initialize the one field that needs it. Fixed a potential
   2864         storage leak by adding a call to WKClearGlyphVector. Initialize the renderers
   2865         to self instead of to 0.
   2866         (-[WebTextRenderer extendGlyphToWidthMapToInclude:]): Initialize the widths to
   2867         NAN instead of UNINITIALIZED_GLYPH_WIDTH.
   2868         (addDirectionalOverride): Fixed bug where the first and last character in the buffer
   2869         could be uninitialized and where characters before and after the direction override
   2870         could be incorrect.
   2871         (-[WebTextRenderer ATSU_drawRun:style:geometry:]): Use bool instead of BOOL.
   2872         (-[WebTextRenderer ATSU_pointToOffset:style:position:reversed:includePartialGlyphs:]):
   2873         Ditto.
   2874         (advanceWidthIteratorOneCharacter): Added new helper function for CG_pointToOffset.
   2875         (-[WebTextRenderer CG_pointToOffset:style:position:reversed:includePartialGlyphs:]):
   2876         Reimplemented to use advanceWidthIteratorOneCharacter instead of widthForNextCharacter.
   2877         Also call CG_floatWidthForRun instead of floatWidthForRun since we don't need to
   2878         reconsider whether to use CG or ATSU.
   2879         (glyphForCharacter): Removed the map parameter and changed the renderer parameter to
   2880         be an in-out one. Removed uneeded special case for when map is 0 and always get the
   2881         renderer from the map. Also call extendCharacterToGlyphMapToInclude in here instead of
   2882         making that the caller's responsibility.
   2883         (initializeWidthIterator): Renamed to make the name shorter (removed "Character").
   2884         Streamlned common cases like "no padding" and removed some unneeded casts. Changed to
   2885         use advanceWidthIterator to compute width fo the first part of the run.
   2886         (normalizeVoicingMarks): Factored this out into a separate function, since it's not part
   2887         of the common case.
   2888         (advanceWidthIterator): Changed widthForNextCharacter to this, eliminating per-character
   2889         function overhead for iterating past a few characters. Merged the handling of surrogate
   2890         pairs and of voicing marks so that we typically only have to do one "if" to rule out both.
   2891         Merged the mirroring for RTL and uppercasing for small caps into a single boolean so that
   2892         we only need one "if" to rule out both. Call the new glyphForCharacter. Check for the
   2893         character '\t' first since that's cheaper than looking at tabWidth. Check tabWidth for 0
   2894         first so that we don't have to convert it to floating point when not using it. Changed
   2895         the special case for spaces to first check width, so that we don't bother with the rest
   2896         of the code for glyphs not the same width as spaces. Fixed substitution code to call
   2897         CG_floatWidthForRun -- no need to reconsider whether to use CG or ATSU. Also changed to
   2898         properly get width from the result of that function. Merged the handling of letter spacing,
   2899         padding, and word spacing into a single boolean so that we typically only have to do one
   2900         "if" to rule out all three. Check for letterSpacing of 0 first so that we don't have to
   2901         convert it to floating point when not using it. Same for padding and wordSpacing.
   2902         Move the work from ceilCurrentWidth in line into this function. Assume that either we have
   2903         all three pointers (widths, renderers, glyphs), or none of the three, to cut down on branches.
   2904         (fillStyleWithAttributes): Use bool instead of BOOL.
   2905         (shouldUseATSU): Ditto.
   2906 
   2907         * Misc.subproj/WebKitNSStringExtras.m: (-[NSString _web_widthWithFont:]): Update since
   2908         the floatWidthForRun method no longer takes a widths parameter.
   2909         * Misc.subproj/WebStringTruncator.m: (stringWidth): Ditto.
   2910 
   2911 2005-10-19  Tim Omernick  <tomernick (a] apple.com>
   2912 
   2913         Reviewed by eseidel & darin.
   2914 
   2915 	Changed some of the run measurement methods to C functions
   2916         to avoid overhead associated with objc_msgSend().
   2917 		
   2918         * WebCoreSupport.subproj/WebTextRenderer.m:
   2919         (-[WebTextRenderer floatWidthForRun:style:widths:]):
   2920 	Updated to call new run measurement functions instead
   2921         of calling ObjC methods.
   2922         (-[WebTextRenderer CG_drawRun:style:geometry:]): ditto
   2923         (floatWidthForRun): ditto
   2924         (CG_floatWidthForRun): ditto
   2925         (ATSU_floatWidthForRun): ditto
   2926         (widthForNextCharacter): ditto
   2927 
   2928 2005-10-14  Vicki Murley  <vicki (a] apple.com>
   2929 
   2930 	Changes by Mitz Pettel, reviewed by Maciej.
   2931 
   2932 	Fix http://bugs.webkit.org/show_bug.cgi?id=5029 (Assertion failure in -[NSPasteboard(WebExtras) 
   2933 	_web_writeImage:URL:title:archive:types:] when trying to drag an image from a site with no favicon)
   2934 
   2935         * Misc.subproj/WebNSPasteboardExtras.m:
   2936         (-[NSPasteboard _web_writeImage:URL:title:archive:types:]): Prefer the main resource if it is an image
   2937 
   2938 2005-10-12  Vicki Murley  <vicki (a] apple.com>
   2939 
   2940         Reviewed by Darin.
   2941 
   2942 	- fix <rdar://problem/4043643> iframe swallows events for overlapping elements (3449)
   2943 
   2944         * WebView.subproj/WebHTMLView.m:
   2945         (-[WebHTMLView hitTest:]): 
   2946         (-[WebHTMLView _updateMouseoverWithEvent:]): eliminate _hitViewForEvent hackery and self
   2947 	dependency from this function
   2948 
   2949 2005-10-12  Timothy Hatcher  <timothy (a] apple.com>
   2950 
   2951         Reviewed by Darin.
   2952         
   2953         Define WebNSInt and WebNSUInt to wrap around NSInt on Leopard and still build on Tiger
   2954         Once building on Tiger isn't needed we will drop WebNSInt and use NSInt
   2955 
   2956         * WebView.subproj/WebDefaultResourceLoadDelegate.m:
   2957         (-[WebDefaultResourceLoadDelegate webView:resource:didReceiveContentLength:fromDataSource:]):
   2958         * WebView.subproj/WebFrame.m:
   2959         (-[WebFrame _sendRemainingDelegateMessagesWithIdentifier:response:length:error:]):
   2960         * WebView.subproj/WebLoader.m:
   2961         (-[NSURLProtocol didReceiveData:lengthReceived:]):
   2962         * WebView.subproj/WebResourceLoadDelegate.h:
   2963         * WebView.subproj/WebUIDelegate.h:
   2964         * WebView.subproj/WebView.h:
   2965         * WebView.subproj/WebView.m:
   2966         (-[WebView _mouseDidMoveOverElement:modifierFlags:]):
   2967         (-[WebView spellCheckerDocumentTag]):
   2968         * WebView.subproj/WebViewInternal.h:
   2969         * WebView.subproj/WebViewPrivate.h:
   2970 
   2971 2005-10-12  Darin Adler  <darin (a] apple.com>
   2972 
   2973         * WebView.subproj/WebPolicyDelegate.h: Fix a comment.
   2974 
   2975 2005-10-11  Timothy Hatcher  <timothy (a] apple.com>
   2976 
   2977         Reviewed by Darin.
   2978         
   2979         Test for 10.4 because of <rdar://problem/4243463>
   2980 
   2981         * WebView.subproj/WebHTMLView.m:
   2982         (-[WebHTMLView conversationIdentifier]):
   2983 
   2984 2005-10-11  Adele Peterson  <adele (a] apple.com>
   2985 
   2986         Rolling out fix for http://bugs.webkit.org/show_bug.cgi?id=5195
   2987         since it caused:
   2988 
   2989         REGRESSION text areas draw focus ring around each glyph, no caret in text fields
   2990         http://bugs.webkit.org/show_bug.cgi?id=5335
   2991 
   2992         * WebView.subproj/WebHTMLView.m:
   2993         (-[WebHTMLView _propagateDirtyRectsToOpaqueAncestors]):
   2994         (-[WebHTMLView _recursiveDisplayRectIfNeededIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:topView:]):
   2995         (-[WebHTMLView _recursiveDisplayAllDirtyWithLockFocus:visRect:]):
   2996 
   2997 2005-10-09  Darin Adler  <darin (a] apple.com>
   2998 
   2999         Reviewed by Maciej.
   3000 
   3001         - fixed http://bugs.webkit.org/show_bug.cgi?id=5195
   3002           Would like API to flush rendering of pending DOM changes
   3003 
   3004         This was actually a Tiger regression. When AppKit added a new code path for rendering
   3005         NSView, our special hack for doing layout when we draw didn't work any more. So we
   3006         were able to fix this without adding any API.
   3007 
   3008         * WebView.subproj/WebHTMLView.m:
   3009         (-[WebHTMLView _recursiveDisplayRectIgnoringOpacity:inContext:topView:]): Added.
   3010         Does the same thing that other _recursiveDisplay methods do.
   3011 
   3012 2005-10-08  Alexey Proskuryakov  <ap (a] nypop.com>
   3013 
   3014         Reviewed by Maciej.
   3015 
   3016         - fixed http://bugs.webkit.org/show_bug.cgi?id=5187
   3017           UTF-8 in long text files breaks at some point
   3018 
   3019         * WebView.subproj/WebTextRepresentation.m:
   3020         (-[WebTextRepresentation finishedLoadingWithDataSource:]):
   3021         Call flushReceivedData on the WebTextView so it can decode any final bytes.
   3022 
   3023         * WebView.subproj/WebTextView.h: Added WebCoreTextDecoder field and flushReceivedData method.
   3024         * WebView.subproj/WebTextView.m:
   3025         (-[WebTextView dealloc]): Release WebCoreTextDecoder.
   3026         (-[WebTextView appendReceivedData:fromDataSource:]): Create a WebCoreTextDecoder to decode
   3027         the text; use the textEncodingName from the data source. Use it to decode instead of the
   3028         data source's stringWithData.
   3029         (-[WebTextView flushReceivedData]): Call flush on the decoder and append any last bytes to
   3030         the text view.
   3031 
   3032 2005-10-07  John Sullivan  <sullivan (a] apple.com>
   3033 
   3034         Reviewed by Tim Omernick.
   3035         
   3036         WebKit support for allowing clients to know which frame originated a particular JavaScript alert/dialog.
   3037 
   3038         * WebView.subproj/WebUIDelegatePrivate.h:
   3039         New optional delegate methods for the three JavaScript alert/dialogs. These are just like the existing
   3040         ones in WebUIDelegate.h except that each adds a parameter specifying the frame that the JavaScript was
   3041         running in. Eventually we'll deprecate the old three methods in favor of these in the public API.
   3042         
   3043         * WebCoreSupport.subproj/WebBridge.m:
   3044         (-[WebBridge runJavaScriptAlertPanelWithMessage:]):
   3045         Call version of the delegate method that has the frame parameter if the delegate supports it.
   3046         (-[WebBridge runJavaScriptConfirmPanelWithMessage:]):
   3047         ditto
   3048         (-[WebBridge runJavaScriptTextInputPanelWithPrompt:defaultText:returningText:]):
   3049         ditto
   3050         
   3051         * WebView.subproj/WebDefaultUIDelegate.m:
   3052         (-[WebDefaultUIDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:]):
   3053         Now implements the new version of the delegate method that includes the frame parameter. (Still
   3054         doesn't do anything though.)
   3055         (-[WebDefaultUIDelegate webView:runJavaScriptConfirmPanelWithMessage:initiatedByFrame:]):
   3056         Now implements the new version of the delegate method that includes the frame parameter. (Still
   3057         doesn't do anything though.)
   3058         (-[WebDefaultUIDelegate webView:runJavaScriptTextInputPanelWithPrompt:defaultText:initiatedByFrame:]):
   3059         Now implements the new version of the delegate method that includes the frame parameter. Doesn't
   3060         actually use the frame parameter here yet though.
   3061         
   3062 2005-10-06  Darin Adler  <darin (a] apple.com>
   3063 
   3064         - fixed compiling on Deployment
   3065 
   3066         * WebCoreSupport.subproj/WebTextRenderer.m: (-[WebTextRenderer initWithFont:]):
   3067         Put initialFont inside !LOG_DISABLED.
   3068 
   3069 2005-10-06  Darin Adler  <darin (a] apple.com>
   3070 
   3071         Reviewed by Eric.
   3072 
   3073         - tweaked formatting
   3074 
   3075         * WebCoreSupport.subproj/WebTextRenderer.m: Changed function names to remove underscores;
   3076         fixed formatting to match our coding guidelines, other related tweaks.
   3077 
   3078 2005-10-06  Darin Adler  <darin (a] apple.com>
   3079 
   3080         Reviewed by Eric.
   3081 
   3082         - fixed regression in drawing of text in non-flipped contexts from my last check-in
   3083 
   3084         * WebCoreSupport.subproj/WebTextRenderer.m:
   3085         (drawGlyphs): Only flip the matrix if the NSGraphicsContext is flipped.
   3086         (-[WebTextRenderer _ATSU_drawRun:style:geometry:]): Use -[NSGraphicsContext isFlipped]
   3087         instead of [[NSView focusView] isFlipped].
   3088 
   3089 2005-10-06  Darin Adler  <darin (a] apple.com>
   3090 
   3091         Reviewed by Hyatt.
   3092 
   3093         - fixed <rdar://problem/3217793> Monaco bold comes out as Helvetica bold, very bad if you choose Monaco as your fixed-width font
   3094         - fixed <rdar://problem/3256269> CSS1: bold/italic font styles not programmatically created if font doesn't include them (3231)
   3095           also <http://bugs.webkit.org/show_bug.cgi?id=3231>
   3096 
   3097         * WebCoreSupport.subproj/WebTextRenderer.h: Removed public declarations of private structures that are not
   3098         used in the header. Removed the separate 16-bit character map; the difference in code size is only a few
   3099         bytes per page and there's no measurable performance difference by always using the 32-bit character version.
   3100         Removed substitute font width maps altogether, since we now use the width map in the substitute font's renderer.
   3101         Also removed a few more now-unused fields and methods. Changed initWithFont to take WebCoreFont. Changed
   3102         the setAlwaysUseATSU: method to remove the underscore prefix.
   3103 
   3104         * WebCoreSupport.subproj/WebTextRenderer.m:
   3105         (getUncachedWidth): Get font from WebCoreFont directly instead of taking a parameter, since we now use only
   3106         one NSFont per WebTextRenderer.
   3107         (widthFromMap): Removed NSFont parameter for same reason as above; simplified.
   3108         (widthForGlyph): Ditto.
   3109         (overrideLayoutOperation): Updated for change to WebCoreFont.
   3110         (-[WebTextRenderer initWithFont:]): Changed to use WebCoreFont. Removed code to deal with substitute font maps.
   3111         Changed lineGap computation to use floats instead of doubles. Added code to compute a synthetic bold offset.
   3112         Currently this is the font size divided by 24 and then rounded up to an integer.
   3113         (-[WebTextRenderer dealloc]): Updated for change to WebCoreFont and other related changes.
   3114         (-[WebTextRenderer finalize]): Ditto.
   3115         (-[WebTextRenderer xHeight]): Ditto.
   3116         (-[WebTextRenderer drawRun:style:geometry:]): Remove small caps case here; no longer needed. Also updated as above.
   3117         (-[WebTextRenderer floatWidthForRun:style:widths:]): Ditto.
   3118         (-[WebTextRenderer drawHighlightForRun:style:geometry:]): Ditto.
   3119         (-[WebTextRenderer pointToOffset:style:position:reversed:includePartialGlyphs:]): Ditto.
   3120         (+[WebTextRenderer setAlwaysUseATSU:]): Renamed to remove underscore prefix.
   3121         (-[WebTextRenderer smallCapsRenderer]): Ditto. Changed to create a renderer for the smaller sized font.
   3122         (-[WebTextRenderer _substituteFontForString:families:]): Reorganized this to be more readable and to call
   3123         the new rendererForAlternateFont method.
   3124         (-[WebTextRenderer rendererForAlternateFont:]): Added. Used to select an alternate font taking into account
   3125         bold and italic synthesis.
   3126         (-[WebTextRenderer substituteRendererForCharacters:length:families:]): Renamed to remove underscore prefix.
   3127         Updated to use rendererForAlternateFont.
   3128         (-[WebTextRenderer _computeWidthForSpace]): Updated for name changes and to remove unnecessary parameters.
   3129         (-[WebTextRenderer setUpFont]): Renamed to remove underscore prefix. Added code to get printer or screen
   3130         font as specified by WebCoreFont so calers don't need to do this.
   3131         (drawGlyphs): Renamed to remove underscore prefix. Added code for synthetic oblique (14 degree slant), and
   3132         synthetic bold (add offset and draw text a second time).
   3133         (-[WebTextRenderer _CG_drawRun:style:geometry:]): Keep an array of substitute renderers instead of fonts.
   3134         Changed around the loop to reverse the run to be a single loop instead of 3.
   3135         (-[WebTextRenderer floatWidthForRun:style:widths:substituteRenderers:glyphs:startPosition:numGlyphs:]):
   3136         Renamed to remove the underscore prefix.
   3137         (-[WebTextRenderer _CG_floatWidthForRun:style:widths:substituteRenderers:glyphs:startPosition:numGlyphs:]):
   3138         Changed to use subsitute renderers rather than fonts.
   3139         (-[WebTextRenderer updateGlyphEntryForCharacter:glyphID:substituteRenderer:]): Renamed to remove underscore
   3140         prefix and changed to use a substitute renderer rather than a substitute NSFont.
   3141         (-[WebTextRenderer extendCharacterToGlyphMapToInclude:]): Updated to work with all characters, both ones
   3142         that fit into 16-bit and ones that don't.
   3143         (-[WebTextRenderer _extendGlyphToWidthMapToInclude:]): Removed NSFont parameter and simplified. This fixes
   3144         a bug where numberOfGlyphs was accidentally used from the main font instead of "subFont".
   3145         (glyphForCharacter): Changed to use subsitute renderers instead of substitute fonts.
   3146         (widthForNextCharacter): Ditto. Also removed small caps code no longer needed here and replaced it with
   3147         simpler small caps code that no longer assumes glyphs match.
   3148         (shouldUseATSU): Changed the code to check ranges in order to slightly reduce the number of cases and
   3149         to create earlier exit for lower character codes.
   3150 
   3151         * WebCoreSupport.subproj/WebTextRendererFactory.h: Added caches for synthesized font and oblique
   3152         variants so we can still use the NSFont as the dictionary key. Removed coalesceTextDrawing methods.
   3153         Changed methods to use WebCoreFont as the parameters and results instead of NSFont.
   3154         * WebCoreSupport.subproj/WebTextRendererFactory.m:
   3155         (-[WebTextRendererFactory clearCaches]): Clear all 8 caches.
   3156         (-[WebTextRendererFactory isFontFixedPitch:]): Changed code slightly so there's only one call to
   3157         the CFDictionarySetValue function.
   3158         (-[WebTextRendererFactory init]): Create all 8 caches.
   3159         (-[WebTextRendererFactory dealloc]): Release all 8 caches.
   3160         (-[WebTextRendererFactory rendererWithFont:]): Select the appropriate cache based on 3 booleans:
   3161         synthetic bold, synthetic oblique, and printer. Use WebCoreFont instead of NSFont.
   3162         (-[WebTextRendererFactory fontWithFamilies:traits:size:]): Set the synthetic bold and oblique flags
   3163         when returning a WebCoreFont based on requested traits that are not present in the NSFont.
   3164         (acceptableChoice): Ignore the synthesizable traits when deciding if a chosen font is acceptable.
   3165         (betterChoice): Rather than assuming that every font has all the desired traits, implement a rule
   3166         that says a font with an unwanted trait loses out over a font that does not have an unwanted trait.
   3167         This lets us chose a bold font over a non-bold font that could use synthesized bold but treat both
   3168         as candidates.
   3169 
   3170         * WebCoreSupport.subproj/WebGlyphBuffer.h: Removed.
   3171         * WebCoreSupport.subproj/WebGlyphBuffer.m: Removed.
   3172         * WebKit.xcodeproj/project.pbxproj: Removed WebGlyphBuffer source files.
   3173 
   3174         * Misc.subproj/WebKitNSStringExtras.m:
   3175         (-[NSString _web_drawAtPoint:font:textColor:]): Update to use WebCoreFont.
   3176         (-[NSString _web_widthWithFont:]): Ditto.
   3177         * Misc.subproj/WebStringTruncator.m:
   3178         (truncateString): Ditto.
   3179         (+[WebStringTruncator widthOfString:font:]): Ditto.
   3180 
   3181         * WebView.subproj/WebHTMLView.m: (-[WebHTMLView drawRect:]): Removed text drawing coalesce method calls.
   3182         * WebView.subproj/WebTextView.m: (-[WebTextView setFixedWidthFont]): Updated to use cachedFontFromFamily
   3183         method, which we still have, rather than fontWithFamilies method which we don't (since it now uses WebCoreFont).
   3184         * WebView.subproj/WebView.m: (+[WebView _setAlwaysUseATSU:]): Updated for name change to underlying method.
   3185 
   3186 2005-10-05  Maciej Stachowiak  <mjs (a] apple.com>
   3187 
   3188         Reviewed by Eric.
   3189 
   3190 	<rdar://problem/4158439> Safari appears to hang when sending synchronous XMLHttpRequest that gets no server response
   3191 
   3192 	No testcase - not testable w/o network.
   3193 	
   3194         * WebCoreSupport.subproj/WebBridge.m:
   3195         (-[WebBridge syncLoadResourceWithURL:customHeaders:postData:finalURL:responseHeaders:statusCode:]): Set a timeout of 10.
   3196 
   3197 2005-10-04  Beth Dakin  <bdakin (a] apple.com>
   3198 
   3199         Reviewed by Darin
   3200 
   3201 	Fix for <rdar://problem/4285538> TOT fix for Denver Regression: Drawing glitch in the transparent dialog's cancel/ok 
   3202 	button in the widget manager. 
   3203 
   3204         * WebCoreSupport.subproj/WebImageData.m: Calls WKSetPatternPhaseInUserSpace() which is a new function that lies in 
   3205 						WebKitSystemInterface that and takes care of pattern-setting. Prevents 
   3206 						regression that occurred with image tiling in transparency layers. 
   3207         (-[WebImageData tileInRect:fromPoint:context:]):
   3208 
   3209 2005-10-03  Tim Omernick  <tomernick (a] apple.com>
   3210 
   3211         Reviewed by John Sullivan.
   3212 
   3213 	<rdar://problem/4281095> Denver regression: Seed: Safari HTML 4.01 <object ...> tag problem
   3214 
   3215         * WebCoreSupport.subproj/WebBridge.m:
   3216         (-[WebBridge determineObjectFromMIMEType:URL:]):
   3217 	If no view class is registered to handle the MIME type, check to see if there is a plugin registered which can handle it.
   3218 	This check is required because the Java plugin does not register an NSView class, so that Java files are downloaded when
   3219 	not embedded.
   3220 
   3221 	Prior to this fix, -determineObjectFromMIMEType:URL: would always return ObjectElementNone for Java applets (MIME type
   3222 	"application/x-java-applet"), which would cause Java applets embedded in <OBJECT> elements to not be loaded.
   3223 
   3224 	This broke on 05-03-2005, when we changed how we handle fallback content for <OBJECT> elements so that we could pass the
   3225 	Acid2 test.
   3226 
   3227 2005-09-28  Justin Garcia  <justin.garcia (a] apple.com>
   3228 
   3229         Reviewed by geoff
   3230         
   3231         Fixed <rdar://problem/4276596> multipart/x-mixed-replace: saved inline images appear only partially loaded
   3232         Fixed <rdar://problem/4265439> progress bar should look complete even if there is some more multipart content being loaded
   3233 
   3234         * WebCoreSupport.subproj/WebSubresourceLoader.h:
   3235         * WebCoreSupport.subproj/WebSubresourceLoader.m:
   3236         (-[WebSubresourceLoader didReceiveResponse:]):
   3237         Now calls signalFinish and saveResource.
   3238         
   3239         (-[WebSubresourceLoader signalFinish]): 
   3240         Added.  Does the part of didFinishLoading that signals to the WebDataSource and load delegates that the load is finished.
   3241         
   3242         (-[WebSubresourceLoader didFinishLoading]):
   3243         * WebView.subproj/WebLoader.h:
   3244         * WebView.subproj/WebLoader.m:
   3245         (-[NSURLProtocol signalFinish]):
   3246         Similar to above
   3247         
   3248         (-[NSURLProtocol didFinishLoading]):
   3249 
   3250 2005-09-28  Adele Peterson  <adele (a] apple.com>
   3251 
   3252         Reviewed by John.
   3253 
   3254         Moved _downloadWithLoadingConnection and _downloadWithRequestfrom WebDownload.h to WebDownloadInternal.h
   3255 
   3256         * Misc.subproj/WebDownload.h:
   3257         * Misc.subproj/WebDownloadInternal.h: Added.
   3258         * WebKit.xcodeproj/project.pbxproj: Added WebDownloadInternal.h
   3259         * WebView.subproj/WebMainResourceLoader.m: Added import of WebDownloadInternal.h
   3260         * WebView.subproj/WebView.m: ditto.
   3261 
   3262 2005-09-27  Adele Peterson  <adele (a] apple.com>
   3263 
   3264         Reviewed by Maciej.
   3265 
   3266         Changed ints to size_t where appropriate.
   3267 
   3268         * Misc.subproj/WebCoreStatistics.h:
   3269         * Misc.subproj/WebCoreStatistics.m:
   3270         (+[WebCoreStatistics javaScriptObjectsCount]):
   3271         (+[WebCoreStatistics javaScriptInterpretersCount]):
   3272         (+[WebCoreStatistics javaScriptNoGCAllowedObjectsCount]):
   3273         (+[WebCoreStatistics javaScriptReferencedObjectsCount]):
   3274         * WebView.subproj/WebPreferences.m:
   3275         (-[WebPreferences _pageCacheSize]):
   3276         (-[WebPreferences _objectCacheSize]):
   3277         * WebView.subproj/WebPreferencesPrivate.h:
   3278 
   3279 2005-09-26  John Sullivan  <sullivan (a] apple.com>
   3280 
   3281         Reviewed by Tim Omernick.
   3282 
   3283         - fixed <rdar://problem/4118126> Drag-and-drop text with text containing a colon causes a crash
   3284         
   3285         There were two problems here. One is that dragging and dropping text within the same WebTextView
   3286         should have done nothing rather than try to navigate. The other is that navigating while processing
   3287         the end of the drag would dealloc the drag-initiating WebTextView, leading to a crash. Fixing the
   3288         former doesn't fix all cases of the latter, since dropping onto (e.g.) Safari's location field
   3289         could cause a navigation during the drag. So these two issues needed to be fixed separately.
   3290 
   3291         * WebView.subproj/WebTextView.m:
   3292         (-[WebTextView dragSelectionWithEvent:offset:slideBack:]):
   3293         Before drag, retain self, and tell WebView that the drag is self-initiated. After drag, do the
   3294         opposite. This is the same approach as WebImageView, but it can all be contained in one method
   3295         here due to NSTextView's dragging API, which wraps up some of the drag-machinery guts.
   3296 
   3297 2005-09-24  Mitz Pettel  <opendarwin.org (a] mitzpettel.com>
   3298 
   3299         Reviewed and landed by Darin.
   3300 
   3301         - fixed http://bugs.webkit.org/show_bug.cgi?id=5100
   3302           -[WebTextRenderer _ATSU_drawRun:...] does not check view flippedness
   3303 
   3304         * WebCoreSupport.subproj/WebTextRenderer.m: (-[WebTextRenderer _ATSU_drawRun:style:geometry:]):
   3305         Set up a the CGContext with a matrix that flips the text if the view is not flipped.
   3306 
   3307 2005-09-24  Mitz Pettel  <opendarwin.org (a] mitzpettel.com>
   3308 
   3309         Reviewed, tweaked a tiny bit, and landed by Darin.
   3310 
   3311         - fixed http://bugs.webkit.org/show_bug.cgi?id=4940
   3312           CG and ATSUI give different width to the same text
   3313 
   3314         * WebCoreSupport.subproj/WebTextRenderer.m:
   3315         (overrideLayoutOperation): Added. ATSU callback to do the rounding.
   3316         (-[WebTextRenderer _trapezoidForRun:style:atPoint:]): Use the new createATSULayoutParameters
   3317         function instead of calling _createATSUTextLayoutForRun.
   3318         (-[WebTextRenderer _ATSU_drawHighlightForRun:style:geometry:]): Use createATSULayoutParameters,
   3319         and also compute the width in a way that works for any direction combination.
   3320         (-[WebTextRenderer _ATSU_drawRun:style:geometry:]): Use createATSULayoutParameters.
   3321         (-[WebTextRenderer _ATSU_pointToOffset:style:position:reversed:includePartialGlyphs:]):
   3322         Use createATSULayoutParameters. Also put in code that seems to work around an ATSU bug.
   3323         (createATSULayoutParameters): Added.
   3324         (disposeATSULayoutParameters): Added.
   3325 
   3326 2005-09-24  Mitz Pettel  <opendarwin.org (a] mitzpettel.com>
   3327 
   3328         Reviewed by Dave.
   3329         Landed by Darin.
   3330 
   3331         - fixed http://bugs.webkit.org/show_bug.cgi?id=4862
   3332           Incorrect layout of bidi overrides
   3333 
   3334         * WebCoreSupport.subproj/WebTextRenderer.m:
   3335         (addDirectionalOverride): Renamed, and made it work in both directions.
   3336         (-[WebTextRenderer _ATSU_drawHighlightForRun:style:geometry:]): Updated to call addDirectionalOverride.
   3337         (-[WebTextRenderer _ATSU_drawRun:style:geometry:]): More of the same.
   3338         (-[WebTextRenderer _ATSU_pointToOffset:style:position:reversed:includePartialGlyphs:]): Ditto.
   3339 
   3340 2005-09-24  Alexey Proskuryakov  <ap (a] nypop.com>
   3341 
   3342         Tweaked, reviewed, and landed by Darin.
   3343 
   3344         - fixed http://bugs.webkit.org/show_bug.cgi?id=4394
   3345           Mouse clicks ignored in inline input areas
   3346 
   3347         * WebView.subproj/WebHTMLView.m:
   3348         (-[NSArray mouseDown:]): Removed misleading comment and added code to send mouse event to input manager.
   3349         (-[NSArray mouseDragged:]): Added code to send mouse event to input manager.
   3350         (-[NSArray mouseUp:]): Ditto.
   3351         (-[WebHTMLView _discardMarkedText]): Umnmark text before calling markedTextAbandoned: to match behavior
   3352         of NSTextView (not sure why we did things in the opposite order before).
   3353         (-[WebHTMLView _updateSelectionForInputManager]): Ditto.
   3354 
   3355         - unrelated tweak
   3356 
   3357         * WebView.subproj/WebView.m:
   3358         (-[WebView _performTextSizingSelector:withObject:onTrackingDocs:selForNonTrackingDocs:newScaleFactor:]):
   3359         Fix typecast that used ... for no good reason.
   3360 
   3361 2005-09-23  Duncan Wilcox  <duncan (a] mclink.it>
   3362 
   3363         Reviewed and landed by Darin.
   3364 
   3365         - name changes to prepare for fixing bugzilla bug 4582
   3366 
   3367         * WebView.subproj/WebHTMLView.m: Changed names to match WebCore changes.
   3368 
   3369 2005-09-20  John Sullivan  <sullivan (a] apple.com>
   3370 
   3371         Reviewed by Tim Omernick.
   3372 
   3373         - fixed <rdar://problem/3228554> We should enforce one selection per WebView instead of per window
   3374         
   3375         Note that this checkin does not mean that we will always maintain a selection in a WebView when
   3376         the focus is elsewhere. Instead it means that there should never be more than one frame containing
   3377         a selection in a WebView, and that it's possible to maintain a selection in a WebView when the focus 
   3378         is elsewhere.
   3379 
   3380         * WebView.subproj/WebView.m:
   3381         (-[WebView searchFor:direction:caseSensitive:wrap:]):
   3382         removed unnecessary and somewhat confusing comment
   3383         (-[WebView selectedFrame]):
   3384         now calls the extracted method -_focusedFrame
   3385         (-[WebView _focusedFrame]):
   3386         new method, extracted from -selectedFrame; returns frame containing first responder, if any
   3387         (-[WebView _findSelectedFrameStartingFromFrame:skippingFrame:]):
   3388         added skippingFrame parameter, which is never returned
   3389         (-[WebView _findSelectedFrameSkippingFrame:]):
   3390         new method, starts from main frame and passes a frame to skip
   3391         (-[WebView _findSelectedFrame]):
   3392         now calls _findSelectedFrameSkippingFrame:nil
   3393         (-[WebView _selectedFrameDidChange]):
   3394         new method, called by WebDocumentText protocol implementors; calls -deselectAll on frame that
   3395         formerly displayed a selection, if any
   3396 
   3397         * WebView.subproj/WebViewInternal.h:
   3398         added category WebDocumentSelectionExtras, with the one method _selectedFrameDidChange
   3399 
   3400         * WebView.subproj/WebHTMLView.m:
   3401         (-[WebHTMLView becomeFirstResponder]):
   3402         call -[WebView _selectedFrameDidChange]
   3403 
   3404         * WebView.subproj/WebPDFView.m:
   3405         (-[WebPDFView becomeFirstResponder]):
   3406         call -[WebView _selectedFrameDidChange]
   3407         (-[WebPDFView resignFirstResponder]):
   3408         deselect all unless webview says not to; note that this doesn't work in all cases due to:
   3409         <rdar://problem/4265966> PDFs continue to show a (secondary) selection when the focus moves elsewhere        
   3410 
   3411         * WebView.subproj/WebTextView.m:
   3412         (-[WebTextView becomeFirstResponder]):
   3413         call -[WebView _selectedFrameDidChange]
   3414         (-[WebTextView resignFirstResponder]):
   3415         deselect all unless webview says not to
   3416 
   3417 2005-09-20  Eric Seidel  <eseidel (a] apple.com>
   3418 
   3419         Reviewed by mjs.
   3420 
   3421 	Moved MIME type support from a hard coded list
   3422         (in two places) to single lists in the corresponding
   3423         *Representation classes.  Also moved the list of types
   3424         supported by WebCore (WebHTMLRepresentation) into WebCore.
   3425         http://bugs.webkit.org/show_bug.cgi?id=5037
   3426 
   3427         * WebView.subproj/WebDataSource.m:
   3428         (addTypesFromClass): new inline function
   3429         (+[WebDataSource _repTypesAllowImageTypeOmission:]):
   3430         * WebView.subproj/WebFrameView.m:
   3431         (addTypesFromClass): new inline function
   3432         (+[WebFrameView _viewTypesAllowImageTypeOmission:]):
   3433         * WebView.subproj/WebHTMLRepresentation.h:
   3434         * WebView.subproj/WebHTMLRepresentation.m:
   3435         (+[WebHTMLRepresentation supportedMIMETypes]):
   3436         * WebView.subproj/WebHTMLView.m:
   3437         (+[WebHTMLView supportedMIMETypes]):
   3438         * WebView.subproj/WebHTMLViewPrivate.h:
   3439         * WebView.subproj/WebImageRepresentation.h:
   3440         * WebView.subproj/WebImageRepresentation.m:
   3441         (+[WebImageRepresentation supportedMIMETypes]):
   3442         * WebView.subproj/WebImageView.h:
   3443         * WebView.subproj/WebImageView.m:
   3444         (+[WebImageView supportedMIMETypes]):
   3445         * WebView.subproj/WebPDFRepresentation.h:
   3446         * WebView.subproj/WebPDFRepresentation.m:
   3447         (+[WebPDFRepresentation supportedMIMETypes]):
   3448         * WebView.subproj/WebPDFView.h:
   3449         * WebView.subproj/WebPDFView.m:
   3450         (+[WebPDFView supportedMIMETypes]):
   3451         * WebView.subproj/WebTextRepresentation.h:
   3452         * WebView.subproj/WebTextRepresentation.m:
   3453         (+[WebTextRepresentation supportedMIMETypes]):
   3454         * WebView.subproj/WebTextView.h:
   3455         * WebView.subproj/WebTextView.m:
   3456         (+[WebTextView supportedMIMETypes]):
   3457         * WebView.subproj/WebView.m:
   3458         (+[WebView _viewClass:andRepresentationClass:forMIMEType:]):
   3459         (+[WebView MIMETypesShownAsHTML]): updated to match style
   3460         (+[WebView setMIMETypesShownAsHTML:]): ditto
   3461 
   3462 2005-09-16  John Sullivan  <sullivan (a] apple.com>
   3463 
   3464         * WebView.subproj/WebImageView.m:
   3465         (-[WebImageView copy:]):
   3466         fixed build-breaking silly error in previous checkin
   3467 
   3468 2005-09-16  John Sullivan  <sullivan (a] apple.com>
   3469 
   3470         Reviewed by Tim Omernick
   3471         
   3472         - fixed <rdar://problem/4256557> CrashTracer: 238 crashes in Safari at 
   3473         com.apple.AppKit: -[NSPasteboard setData:forType:] + 188
   3474 
   3475         * WebView.subproj/WebImageView.m:
   3476         (-[WebImageView copy:]):
   3477         declare types to pasteboard before starting to set their data
   3478         (-[WebImageView writeSelectionToPasteboard:types:]):
   3479         ditto
   3480 
   3481 2005-09-16  Adele Peterson  <adele (a] apple.com>
   3482 
   3483         Rolling out the fix for http://bugs.webkit.org/show_bug.cgi?id=4924
   3484             QPainter should use CGContext as much as possible rather than NSGraphicsContext 
   3485         since it caused a performance regression.
   3486 
   3487 2005-09-16  Adele Peterson  <adele (a] apple.com>
   3488 
   3489         Change by Darin, reviewed by me and Maciej.
   3490 
   3491         Fixes http://bugs.webkit.org/show_bug.cgi?id=4547
   3492         use int instead of long for 32-bit (to prepare for LP64 compiling)
   3493 
   3494         * Plugins.subproj/npapi.m: changed types to match those defined in npapi.h
   3495         (NPN_MemAlloc):
   3496         (NPN_MemFlush):
   3497         (NPN_PostURLNotify):
   3498         (NPN_PostURL):
   3499         (NPN_Write):
   3500 
   3501 2005-09-14  Justin Garcia  <justin.garcia (a] apple.com>
   3502 
   3503         Reviewed by john
   3504 
   3505         Fixes <rdar://problem/4237479> REGRESSION (Cambridge-Denver): old QuickTime movie continues to play sound after reload
   3506         We were adding the movie to the document twice after the changes were added to handle fallback content.
   3507         There are some errors for which we should not render fall back content
   3508 
   3509         * Misc.subproj/WebKitErrorsPrivate.h:
   3510         Introduced WebKitErrorPlugInWillHandleLoad to represent the cancel we do
   3511         to prevent loading plugin content twice
   3512         
   3513         * Plugins.subproj/WebPluginDocumentView.m:
   3514         (-[WebPluginDocumentView dataSourceUpdated:]): Ditto
   3515         
   3516         * WebView.subproj/WebDataSource.m:
   3517         (-[WebDataSource _receivedMainResourceError:complete:]):
   3518         Don't handleFallbackContent on WebKitErrorPlugInWillHandleLoad or on a user cancel
   3519 
   3520 2005-09-14  Timothy Hatcher  <thatcher (a] apple.com>
   3521 
   3522         Reviewed by Eric.
   3523         
   3524         * WebKit.xcodeproj/project.pbxproj:
   3525         made WebDashboardRegion.h a private header
   3526 
   3527 2005-09-14  Darin Adler  <darin (a] apple.com>
   3528 
   3529         Reviewed by Maciej.
   3530 
   3531         - fixed http://bugs.webkit.org/show_bug.cgi?id=4924
   3532           QPainter should use CGContext as much as possible rather than NSGraphicsContext
   3533 
   3534         * WebCoreSupport.subproj/WebImageRendererFactory.m: Remove setCGCompositeOperationFromString
   3535         method, no longer needed.
   3536 
   3537 2005-09-13  Tim Omernick  <tomernick (a] apple.com>
   3538 
   3539         Reviewed by Justin Garcia, Darin Adler.
   3540 
   3541 	- <rdar://problem/3163393> Safari does not support Windowless mode in Flash
   3542 
   3543         * Plugins.subproj/WebBaseNetscapePluginView.h:
   3544 	Added 'isTransparent' instance variable.
   3545 
   3546         * Plugins.subproj/WebBaseNetscapePluginView.m:	
   3547         (-[WebBaseNetscapePluginView saveAndSetPortStateForUpdate:]):
   3548 	When updating a plugin in "windowless" (transparent) mode, clip drawing to the dirty
   3549 	region of the opaque ancestor.  This means that a partially-transparent plugin, which
   3550 	by definition does not clear its port on redraw, will not overdraw the valid parts
   3551 	of its port.
   3552         (-[WebBaseNetscapePluginView sendEvent:]):
   3553 	Disabled the "green debug background" for transparent plugins -- since they are not
   3554 	expected to cover their entire port every redraw, this debug code makes no sense.
   3555         (-[WebBaseNetscapePluginView setVariable:value:]):
   3556 	Implemented -setVariable:value:, which is called from NPN_SetValue() (previously
   3557 	unimplemented).
   3558 	Right now we only handle NPPVpluginTransparentBool; if we choose to handle the other
   3559 	plugin variables, then we may do so here.
   3560         * Plugins.subproj/WebBaseNetscapePluginViewPrivate.h:
   3561 	Added SPI for -[WebBaseNetscapePluginView setVariable:value].
   3562         * Plugins.subproj/npapi.m:
   3563         (NPN_SetValue):
   3564 	Implemented this function so that plugins may set state (such as window mode).
   3565 	
   3566 2005-09-11  Mark Rowe  <opendarwin.org (a] bdash.net.nz>
   3567 
   3568         Reviewed, tweaked, and landed by Darin.
   3569 
   3570         - fixed http://bugs.webkit.org/show_bug.cgi?id=4286
   3571           .Mac prefpane crashes when Safari using CVS WebKit is running
   3572 
   3573         * WebView.subproj/WebView.m: (-[WebView initWithFrame:frameName:groupName:]):
   3574         If ENABLE_WEBKIT_UNSET_DYLD_FRAMEWORK_PATH, and WEBKIT_UNSET_DYLD_FRAMEWORK_PATH
   3575         is set in the environment, then unset DYLD_FRAMEWORK_PATH.
   3576 
   3577         * WebKit.xcodeproj/project.pbxproj: Set ENABLE_WEBKIT_UNSET_DYLD_FRAMEWORK_PATH
   3578         in configurations other than Default -- we don't want that code in production
   3579         builds, but we want it in builds we do ourselves and nightly builds.
   3580 
   3581 2005-09-10  Ingmar J Stein  <IngmarStein (a] gmail.com>
   3582 
   3583         Reviewed and landed by Darin.
   3584 
   3585         * WebCoreSupport.subproj/WebImageRenderer.m:
   3586         (-[WebImageRenderer drawImageInRect:fromRect:compositeOperator:context:]):
   3587         Removed unused local variable.
   3588 
   3589 2005-09-09  Tim Omernick  <tomernick (a] apple.com>
   3590 
   3591         Reviewed by John Sullivan.
   3592 
   3593         * History.subproj/WebBackForwardList.m:
   3594         (-[WebBackForwardList removeItem:]):
   3595 	SPI to remove a given WebHistoryItem.
   3596 
   3597         * History.subproj/WebBackForwardListPrivate.h: Added.
   3598 
   3599         * WebKit.xcodeproj/project.pbxproj:
   3600 	Added WebBackForwardListPrivate.h as a private header.
   3601 
   3602 2005-09-09  John Sullivan  <sullivan (a] apple.com>
   3603 
   3604         Reviewed by Tim Omernick.
   3605         
   3606         fixed http://bugs.webkit.org/show_bug.cgi?id=4070:
   3607         Find in plain text won't find only occurrence if it overlaps selection
   3608 
   3609         * Misc.subproj/WebSearchableTextView.m:
   3610         (-[NSString findString:selectedRange:options:wrap:]):
   3611         in the wrap case, extend the search range far enough that text overlapping the
   3612         selection (including the exact-match case) will be considered.
   3613 
   3614 2005-09-08  Justin Garcia  <justin.garcia (a] apple.com>
   3615 
   3616         Reviewed by darin
   3617         
   3618         WebKit portion of multipart/x-mixed-replace support
   3619 
   3620         * WebCoreSupport.subproj/WebSubresourceLoader.m:
   3621         (+[WebSubresourceLoader startLoadingResource:withRequest:customHeaders:referrer:forDataSource:]):
   3622         Subresource case: Check for Foundation level multipart support
   3623         (-[WebSubresourceLoader didReceiveResponse:]): 
   3624         Send previously received data in a multipart section to the coreLoader
   3625         (-[WebSubresourceLoader didReceiveData:lengthReceived:]): 
   3626         Don't send data to the coreLoader until it has been completely received
   3627         * WebView.subproj/WebDataSource.m:
   3628         (-[WebDataSource _startLoading:]): 
   3629         Main resource case: check for Foundation level multipart support 
   3630         (+[WebDataSource _repTypesAllowImageTypeOmission:]):
   3631         Some server apps send data right after declaring content multipart/x-mixed-replace, and expect it to be treated as html
   3632         (-[WebDataSource _commitIfReady:]):
   3633         Don't ask the WebFrame to close its old WebDataSource when loading a multipart section, because we're going to reuse it
   3634         (-[WebDataSource _receivedData:]):
   3635         For non text/html multipart sections, we commit the data all at once, at the end
   3636         (-[WebDataSource _doesProgressiveLoadWithMIMEType:]):
   3637         Added heuristic for when to commit the load incrementally
   3638         (-[WebDataSource _commitLoadWithData:]):
   3639         Moved from _receivedData into its own function
   3640         (-[WebDataSource _revertToProvisionalState]):
   3641         (-[WebDataSource _setupForReplaceByMIMEType:]):
   3642         Commits the data received for the previous multipart section if it wasn't loaded progresively, clears out the WebFrame and WebDatasource for the next multipart section
   3643         * WebView.subproj/WebDataSourcePrivate.h:
   3644         * WebView.subproj/WebFrame.m:
   3645         (-[WebFrame _transitionToCommitted:]): 
   3646         The very first multipart section is treated as a normal load, so that the back/forward list and history are updated.
   3647         All later sections have a new load type, WebFrameLoadTypeReplace, and are treated like reloads
   3648         (-[WebFrame _checkLoadCompleteForThisFrame]): Ditto
   3649         (-[WebFrame _itemForRestoringDocState]): Ditto
   3650         (-[WebFrame _setupForReplace]):
   3651         Clears out the WebFrame for the next multipart section
   3652         * WebView.subproj/WebFrameInternal.h:
   3653         * WebView.subproj/WebFramePrivate.h:
   3654         * WebView.subproj/WebFrameView.m:
   3655         (+[WebFrameView _viewTypesAllowImageTypeOmission:]): See above
   3656         * WebView.subproj/WebLoader.h:
   3657         * WebView.subproj/WebLoader.m:
   3658         (-[NSURLProtocol clearResourceData]):
   3659         (-[NSURLProtocol setSupportsMultipartContent:]):
   3660         * WebView.subproj/WebMainResourceLoader.m: Straightforward
   3661         (-[WebMainResourceLoader didReceiveResponse:]):
   3662 
   3663 2005-09-06  Geoffrey Garen  <ggaren (a] apple.com>
   3664 
   3665         - fixed build bustage from last checkin.
   3666         
   3667         Reviewed by haytt.
   3668 
   3669         * History.subproj/WebBackForwardList.m:
   3670         (-[WebBackForwardList pageCacheSize]): updated debug printf since we no
   3671         longer have a variable called 'multiplier'
   3672 
   3673 2005-09-06  David Hyatt  <hyatt (a] apple.com>
   3674 
   3675 	Reduce the # of cached pages for a back/forward list.  The old cache would cache the
   3676 	following per tab:
   3677 	> 1gb memory = 16 pages per tab/window
   3678 	> 512mb memory = 8 pages per tab/window
   3679 	<= 512mb memory = 4 pages per tab/window
   3680 
   3681 	This consumes far too much memory and is way too aggressive.  The new cache sizes are
   3682 	as follows:
   3683 	>= 1gb memory = 3 pages per tab/window
   3684 	>= 512mb memory = 2 pages per tab/window
   3685 	< 512mb memory = 1 page per tab/window
   3686 
   3687         Reviewed by john
   3688 
   3689         * History.subproj/WebBackForwardList.m:
   3690         (-[WebBackForwardList pageCacheSize]):
   3691         * WebView.subproj/WebPreferences.m:
   3692         (+[WebPreferences initialize]):
   3693 
   3694 2005-09-05  Darin Adler  <darin (a] apple.com>
   3695 
   3696         Reviewed by John Sullivan.
   3697 
   3698         - fixed http://bugs.webkit.org/show_bug.cgi?id=4846
   3699           REGRESSION: Carbon WebKit applications don't work at all
   3700 
   3701         * Carbon.subproj/HIWebView.m: Remove lots of unneeded declarations of private stuff.
   3702         (Draw): Call WKNSWindowOverrideCGContext and WKNSWindowRestoreCGContext rather
   3703         than calling a non-existent setCGContext: method on the context.
   3704 
   3705 2005-09-05  John Sullivan  <sullivan (a] apple.com>
   3706 
   3707         Reviewed by Dave Hyatt.
   3708         
   3709         - change related to <rdar://problem/4211999> Safari quits when click-drag-hold an image 
   3710         that is set to automatically change.
   3711 
   3712         * WebView.subproj/WebHTMLView.m:
   3713         (-[NSArray namesOfPromisedFilesDroppedAtDestination:]):
   3714         handle nil wrapper with ERROR and early return rather than ASSERT, since we now know
   3715         of a way to reproduce this (written up as 4244861)
   3716 
   3717 2005-09-05  Darin Adler  <darin (a] apple.com>
   3718 
   3719         Reviewed by John Sullivan.
   3720 
   3721         - fixed http://bugs.webkit.org/show_bug.cgi?id=4357
   3722           crash related to animated GIFs, reproducible in non-Safari WebKit application
   3723 
   3724         * WebCoreSupport.subproj/WebImageData.m:
   3725         (removeAnimatingRendererFromView): Added.
   3726         (removeFromDictionary): Added.
   3727         (-[WebImageData removeAnimatingRenderer:]): Rewrote using CF functions rather than
   3728         NS functions so that we never retain the views, since this can be called from
   3729         a view's dealloc method.
   3730         (setNeedsDisplayInAnimationRect): Added.
   3731         (-[WebImageData _nextFrame:]): Rewrote as above, even though in this case it can't
   3732         be called from the dealloc method.
   3733 
   3734 2005-08-26  David Hyatt  <hyatt (a] apple.com>
   3735 
   3736 	Add support for a new scaling and tiling function so that border images from CSS3
   3737 	can be implemented.
   3738 	
   3739         Reviewed by darin
   3740 
   3741         * WebCoreSupport.subproj/WebImageData.h:
   3742         * WebCoreSupport.subproj/WebImageData.m:
   3743         (-[WebImageData scaleAndTileInRect:fromRect:withHorizontalTileRule:withVerticalTileRule:context:]):
   3744         * WebCoreSupport.subproj/WebImageRenderer.m:
   3745         (-[WebImageRenderer scaleAndTileInRect:fromRect:withHorizontalTileRule:withVerticalTileRule:context:]):
   3746         (-[WebImageRenderer setAnimationRect:]):
   3747         * WebView.subproj/WebHTMLView.m:
   3748         (-[WebHTMLView updateFocusState]):
   3749 
   3750 2005-08-26  Adele Peterson  <adele (a] apple.com>
   3751 
   3752         Reviewed by Beth.
   3753 
   3754         * WebKit.xcodeproj/project.pbxproj: Changed WebKit.Framework to WebKit.framework in UMBRELLA_FRAMEWORK.
   3755 
   3756 2005-08-25  David Harrison  <harrison (a] apple.com>
   3757 
   3758         Reviewed by Maciej.
   3759 
   3760         <rdar://problem/4227734> Denver Regression: WebCore selection bug on lines starting with tab (clownfish)
   3761 
   3762         The text is in a DIV styled with "white-space:pre", and uses newline characters as linebreaks.
   3763         WebKit's text renderer is erroneously considering the width of the lines leading up to the tab
   3764         character when calculating the width of the tab.
   3765         Easily fixed by having widthForNextCharacter ignore the widthToStart when working with tabWidth.
   3766         Any prior text that fits in the same line is already factored into the xpos, which is paid attention to.
   3767 
   3768         * WebCoreSupport.subproj/WebTextRenderer.m:
   3769         (widthForNextCharacter):
   3770         Ignore the widthToStart when working with tabWidth.
   3771 
   3772 2005-08-23  John Sullivan  <sullivan (a] apple.com>
   3773 
   3774         Reviewed by Beth Dakin.
   3775         
   3776         - fixed <rdar://problem/4229167> 14 leaks of WebFileButton and associated objects, 
   3777         seen after running webkit layout tests
   3778 
   3779         * WebCoreSupport.subproj/WebBridge.m:
   3780         (-[WebBridge fileButtonWithDelegate:]):
   3781         this method was returning a retained object; I added an autorelease
   3782 
   3783 2005-08-23  Darin Adler  <darin (a] apple.com>
   3784 
   3785         * English.lproj/StringsNotToBeLocalized.txt: Update for recent changes.
   3786 
   3787 2005-08-23  Mitz Pettel  <opendarwin.org (a] mitzpettel.com>
   3788 
   3789         Reviewed and landed by Darin.
   3790 
   3791         - fixed http://bugs.webkit.org/show_bug.cgi?id=4604
   3792           LEAK -[WebTextRenderer _ATSU_pointToOffset:style:position:reversed:includePartialGlyphs:] leaks an ATSUTextLayout
   3793           <rdar://problem/4228787> ATSUTextLayout leak in _ATSU_pointToOffset:style:position:reversed:includePartialGlyphs: (4604)
   3794 
   3795         * WebCoreSupport.subproj/WebTextRenderer.m:
   3796         (-[WebTextRenderer _ATSU_pointToOffset:style:position:reversed:includePartialGlyphs:]):
   3797         Added missing call to ATSUDisposeTextLayout.
   3798 
   3799 2005-08-22  Geoffrey Garen  <ggaren (a] apple.com>
   3800 
   3801         - fixed <rdar://problem/4227011> Debugger SPI should be removed from WebView.h API
   3802         
   3803         Reviewed by mjs and adele.
   3804 
   3805         Cut and pasted debugging SPI from WebView to WebView(WebPendingPublic)
   3806         
   3807         * WebView.subproj/WebView.h:
   3808         * WebView.subproj/WebView.m:
   3809         (-[WebView setScriptDebugDelegate:]):
   3810         (-[WebView scriptDebugDelegate]):
   3811         * WebView.subproj/WebViewPrivate.h:
   3812 
   3813 2005-08-20  John Sullivan  <sullivan (a] apple.com>
   3814 
   3815         Reviewed by Darin Adler.
   3816         
   3817         - WebKit part of fix for 
   3818         <rdar://problem/3977607> ER: Safari should check framework versions at launch
   3819 
   3820         * WebView.subproj/WebViewPrivate.h:
   3821         * WebView.subproj/WebView.m:
   3822         (+[WebView _minimumRequiredSafariBuildNumber]):
   3823         new method, returns the minimum build number of Safari that this WebKit is
   3824         willing to work with. (The Safari version has to be new enough to check
   3825         for this value in order for this to have any effect.)
   3826 
   3827 2005-08-19  Justin Garcia  <justin.garcia (a] apple.com>
   3828 
   3829         Reviewed by rjw
   3830         
   3831         The boolean justOpenedForTargetedLink is never used to determine a course of action.  
   3832         It was added long ago for findOrCreateFramedNamed, which has since been removed.
   3833 
   3834         * WebView.subproj/WebDataSource.m:
   3835         * WebView.subproj/WebDataSourcePrivate.h:
   3836         * WebView.subproj/WebFrame.m:
   3837         (-[WebFrame _loadDataSource:withLoadType:formState:]):
   3838         * WebView.subproj/WebFramePrivate.h:
   3839 
   3840 2005-08-19  Darin Adler  <darin (a] apple.com>
   3841 
   3842         Reviewed by John.
   3843 
   3844         * English.lproj/Localizable.strings: Updated to include a new localizable string
   3845         that was added a long while back. Apprently no one has run into the code using
   3846         this string, because if they had, they'd have seen an assert.
   3847         * English.lproj/StringsNotToBeLocalized.txt: Updated for various recent changes.
   3848 
   3849 2005-08-17  Maciej Stachowiak  <mjs (a] apple.com>
   3850 
   3851         Reviewed by Darin.
   3852 
   3853 	- fix mysterious CGImageSource error message and possibly crash on layout tests.
   3854 
   3855         * WebView.subproj/WebMainResourceLoader.m:
   3856         (-[WebMainResourceLoader receivedError:]): Retain the data source since it may
   3857 	prematurely self-destruct otherwise.
   3858         (-[WebMainResourceLoader cancelWithError:]): ditto
   3859 
   3860 2005-08-17  Justin Garcia  <justin.garcia (a] apple.com>
   3861 
   3862         Reviewed by rjw
   3863         
   3864         Addresses <rdar://problem/4192534> new frame load delegate SPI needed for Dashboard
   3865             Added handledOnloadEvents delegate method (private for now)
   3866 
   3867         * WebCoreSupport.subproj/WebBridge.m:
   3868         (-[WebBridge handledOnloadEvents]):
   3869         * WebView.subproj/WebDefaultFrameLoadDelegate.m:
   3870         (-[WebDefaultFrameLoadDelegate webView:didHandleOnloadEventsForFrame:]):
   3871         * WebView.subproj/WebFrame.m:
   3872         (-[WebFrame _handledOnloadEvents]):
   3873         * WebView.subproj/WebFramePrivate.h:
   3874         * WebView.subproj/WebViewPrivate.h:
   3875 
   3876 2005-08-17  John Sullivan  <sullivan (a] apple.com>
   3877 
   3878         Reviewed by Geoff Garen.
   3879         
   3880         - fixed <rdar://problem/4219817> Particular icon database + bookmarks + history crashes Safari on launch
   3881 
   3882         * Misc.subproj/WebIconDatabase.m:
   3883         (-[WebIconDatabase releaseIconForURL:]):
   3884         Move line that might remove last reference to iconURL to the end of the block.
   3885 
   3886 2005-08-16  Darin Adler  <darin (a] apple.com>
   3887 
   3888         Reviewed by Trey.
   3889 
   3890 	- improved fix for <rdar://problem/4211631>, tiled images tiled incorrectly when printing or 
   3891 	  drawing offscreen
   3892 
   3893         * WebCoreSupport.subproj/WebImageData.m: (-[WebImageData tileInRect:fromPoint:context:]):
   3894         Fix pattern phase origin to use the image tile origin, which is clearly right, rather than
   3895         the image rectangle, which isn't right, but often is the same.
   3896 
   3897 2005-08-16  Adele Peterson  <adele (a] apple.com>
   3898 
   3899         Reviewed by John.
   3900 
   3901         - fixed <rdar://problem/4210320> URL tooltips should display a URL for elements that submit forms
   3902 
   3903         When the setShowsURLsInToolTips preference is set, we will display a tooltip containing 
   3904         the form's url when you mouse over a submit button.
   3905 
   3906         * WebView.subproj/WebHTMLView.m: (-[WebHTMLView _updateMouseoverWithEvent:]):
   3907 
   3908 2005-08-16  Darin Adler  <darin (a] apple.com>
   3909 
   3910         Reviewed by Beth Dakin.
   3911 
   3912         - removed Panther-only code that was not being compiled and was
   3913           simply "bit-rotting"
   3914 
   3915         * Misc.subproj/WebFileDatabase.m:
   3916         (-[WebFileDatabase _createLRUList:]):
   3917         (+[WebFileDatabase _syncLoop:]):
   3918         * Misc.subproj/WebKitErrors.m:
   3919         (registerErrors):
   3920         * Misc.subproj/WebNSObjectExtras.h:
   3921         (WebCFAutorelease):
   3922         * Misc.subproj/WebNSPasteboardExtras.m:
   3923         (-[NSPasteboard _web_declareAndWriteDragImage:URL:title:archive:source:]):
   3924         * WebCoreSupport.subproj/WebImageData.h:
   3925         * WebCoreSupport.subproj/WebImageDecodeItem.h:
   3926         * WebCoreSupport.subproj/WebImageDecodeItem.m:
   3927         * WebCoreSupport.subproj/WebImageDecoder.h:
   3928         * WebCoreSupport.subproj/WebImageDecoder.m:
   3929         (decoderThread):
   3930         (startDecoderThread):
   3931         * WebCoreSupport.subproj/WebKeyGeneration.cpp: Removed.
   3932         * WebCoreSupport.subproj/WebKeyGeneration.h: Removed.
   3933         * WebCoreSupport.subproj/WebKeyGenerator.h:
   3934         * WebCoreSupport.subproj/WebTextRenderer.m:
   3935         (getUncachedWidth):
   3936         (_drawGlyphs):
   3937         * WebCoreSupport.subproj/WebViewFactory.m:
   3938         (-[WebViewFactory getBytes:fromTextMarker:length:]):
   3939         * WebKit.xcodeproj/project.pbxproj:
   3940         * WebKitPrefix.h:
   3941         * WebView.subproj/WebDataSource.m:
   3942         (-[WebDataSource _setPrimaryLoadComplete:]):
   3943         (+[WebDataSource _repTypesAllowImageTypeOmission:]):
   3944         (-[WebDataSource isLoading]):
   3945         * WebView.subproj/WebDefaultContextMenuDelegate.m:
   3946         (localizedMenuTitleFromAppKit):
   3947         (-[WebDefaultUIDelegate menuItemWithTag:]):
   3948         (-[WebDefaultUIDelegate contextMenuItemsForElement:defaultMenuItems:]):
   3949         (-[WebDefaultUIDelegate editingContextMenuItemsForElement:defaultMenuItems:]):
   3950         * WebView.subproj/WebFormDataStream.m:
   3951         (formCanRead):
   3952         (webSetHTTPBody):
   3953         * WebView.subproj/WebFrameView.m:
   3954         (+[WebFrameView _viewTypesAllowImageTypeOmission:]):
   3955         * WebView.subproj/WebHTMLView.m:
   3956         (-[WebHTMLView _documentFragmentFromPasteboard:allowPlainText:chosePlainText:]):
   3957         (-[WebHTMLView resourceForData:preferredFilename:]):
   3958         (-[WebHTMLView _lookUpInDictionaryFromMenu:]):
   3959         (-[WebHTMLView validateUserInterfaceItem:]):
   3960         (-[WebHTMLView _attributeStringFromDOMRange:]):
   3961         (-[WebHTMLView toggleBaseWritingDirection:]):
   3962         (-[WebHTMLView changeBaseWritingDirection:]):
   3963         * WebView.subproj/WebPDFRepresentation.h:
   3964         * WebView.subproj/WebPDFRepresentation.m:
   3965         * WebView.subproj/WebPDFView.h:
   3966         * WebView.subproj/WebPDFView.m:
   3967         * WebView.subproj/WebPreferences.m:
   3968         (+[WebPreferences _systemCFStringEncoding]):
   3969         * WebView.subproj/WebView.m:
   3970         (-[WebView _commonInitializationWithFrameName:groupName:]):
   3971 
   3972 2005-08-16  Darin Adler  <darin (a] apple.com>
   3973 
   3974         Reviewed by Beth Dakin.
   3975 
   3976         - removed some unnecessary code
   3977 
   3978         * WebCoreSupport.subproj/WebGraphicsBridge.h: Removed pattern-phase related field and methods.
   3979         * WebCoreSupport.subproj/WebGraphicsBridge.m: Ditto.
   3980 
   3981         * WebCoreSupport.subproj/WebImageData.m: Tweaked formatting and removed some unused code
   3982         inside #if and comments.
   3983 
   3984         * WebCoreSupport.subproj/WebImageRenderer.h: Removed USE_CGIMAGEREF (which is always true now).
   3985         * WebCoreSupport.subproj/WebImageRenderer.m: Removed old non-CGImageRef code.
   3986 
   3987         * WebCoreSupport.subproj/WebImageRendererFactory.m:
   3988         (-[WebImageRendererFactory imageRendererWithMIMEType:]): Removed non-USE_CGIMAGEREF code.
   3989         (-[WebImageRendererFactory imageRendererWithData:MIMEType:]): Ditto.
   3990         (-[WebImageRendererFactory imageRendererWithSize:]): Ditto.
   3991         (-[WebImageRendererFactory imageRendererWithName:]): Ditto.
   3992 
   3993 2005-08-15  Darin Adler  <darin (a] apple.com>
   3994 	
   3995         Reviewed by Beth.
   3996 
   3997 	This is a fix for <rdar://problem/4211631> tiled images tiled incorrectly when printing or 
   3998 	drawing offscreen.
   3999 
   4000 	Cayenne found there was a problem when they were trying to take screen shots of widgets, and
   4001 	it was ultimately a problem with the way we tile images. Darin was able to fix the problem
   4002 	by replacing some confusing hacked code with CG calls.
   4003 
   4004         * WebCoreSupport.subproj/WebImageData.m:
   4005         (-[WebImageData tileInRect:fromPoint:context:]):
   4006         * WebCoreSupport.subproj/WebImageRenderer.m:
   4007         (-[WebInternalImage tileInRect:fromPoint:context:]):
   4008         * WebCoreSupport.subproj/WebTextRenderer.m:
   4009         (-[WebTextRenderer drawLineForMisspelling:withWidth:]):
   4010 
   4011 2005-08-14  Maciej Stachowiak  <mjs (a] apple.com>
   4012 
   4013         Reviewed by Darin.
   4014 
   4015 	- 1% speedup on HTML load speed iBench by avoiding icon database thrash
   4016 	http://bugs.webkit.org/show_bug.cgi?id=4423
   4017 	
   4018         * Misc.subproj/WebIconDatabase.m:
   4019         (-[WebIconDatabase _setIconURL:forURL:]): Be more aggressive about returning early, because
   4020 	updating the database does some expensive data structure copies.
   4021 	
   4022 
   4023 2005-08-14  Duncan Wilcox  <duncan (a] mclink.it>
   4024 
   4025         Reviewed and landed by Darin.
   4026 
   4027         WebKit part of fix for <http://bugs.webkit.org/show_bug.cgi?id=4011>:
   4028         "Editing delegate selection methods not called when using mouse"
   4029 
   4030         Clicking on editable content would move the cursor or alter the selection without
   4031         calling the appropriate editing delegate method
   4032         (webView:shouldChangeSelectedDOMRange:toDOMRange:affinity:stillSelecting:). The
   4033         core of the patch is in the KHTMLPart::handleMousePressEvent* methods, the rest
   4034         is glue needed to drill through all the layers.
   4035 
   4036         * WebCoreSupport.subproj/WebBridge.m:
   4037         (-[WebBridge shouldChangeSelectedDOMRange:toDOMRange:affinity:stillSelecting:]):
   4038         Bridge glue.
   4039 
   4040         * WebView.subproj/WebView.m:
   4041         (-[WebView(WebViewEditingExtras) _shouldChangeSelectedDOMRange:toDOMRange:affinity:stillSelecting:]):
   4042         Final step in glue, calling editing delegate.
   4043 
   4044         * WebView.subproj/WebViewInternal.h:
   4045         Added _shouldChangeSelectedDOMRange:toDOMRange:affinity:stillSelecting: private method to WebViewEditingExtras
   4046         category.
   4047 
   4048 2005-08-11  Beth Dakin  <bdakin (a] apple.com>
   4049 
   4050         Reviewed by Vicki
   4051 
   4052 	This is a fix for <rdar://problem/4141161> REGRESSION (Tiger): WebKit does not display in composited Carbon windows.
   4053 	I basically did what Troy suggests in his bug comments, and everything seems to work fine!
   4054 
   4055         * Carbon.subproj/HIViewAdapter.m:
   4056         (-[HIViewAdapter setNeedsDisplayInRect:]):
   4057 
   4058 2005-08-10  Adele Peterson  <adele (a] apple.com>
   4059 
   4060         Bumping version to 420+
   4061 
   4062         * Info.plist:
   4063 
   4064 2005-08-08  Darin Adler  <darin (a] apple.com>
   4065 
   4066         Reviewed by John Sullivan.
   4067 
   4068         - fixed <rdar://problem/3996324> REGRESSION (1.2-2.0): scroll bars sometimes not updated properly (with >40 duplicate reports!)
   4069           also http://bugs.webkit.org/show_bug.cgi?id=3416
   4070 
   4071         * WebView.subproj/WebHTMLView.m:
   4072         (-[WebHTMLView _recursiveDisplayRectIfNeededIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:topView:]):
   4073         Propagate dirty rects after doing a layout, since a layout can create new dirty rects.
   4074 
   4075 2005-08-05  Adele Peterson  <adele (a] apple.com>
   4076 
   4077         Reviewed by Darin.
   4078 
   4079         * WebKit.xcodeproj/project.pbxproj: Unchecked 'statics are thread safe' option.
   4080 
   4081 2005-08-04  Justin Garcia  <justin.garcia (a] apple.com>
   4082 
   4083         Reviewed by darin
   4084         
   4085         Fix for:
   4086         <rdar://problem/3167884> Shockwave: 3D sprites rendered in OpenGL draw over the browser (3447)
   4087         also as <http://bugs.webkit.org/show_bug.cgi?id=3447>
   4088         
   4089         The WindowRef created by -[NSWindow windowRef] has a QuickDraw GrafPort that covers 
   4090         the entire window frame (or structure region in Carbon parlance) rather then just the window content.
   4091         
   4092         We filed this as an NSWindow bug <rdar://problem/4201099>
   4093 
   4094         To work around, we modify the CGrafPort to only cover the content area before we let the plug-in draw.
   4095 
   4096         * Plugins.subproj/WebBaseNetscapePluginView.m:
   4097         (-[WebBaseNetscapePluginView fixWindowPort]):
   4098         (-[WebBaseNetscapePluginView saveAndSetPortStateForUpdate:]):
   4099 
   4100 2005-08-03  John Sullivan  <sullivan (a] apple.com>
   4101 
   4102         Reviewed by Geoff Garen.
   4103         
   4104         - fixed <rdar://problem/3918675> Remove code to replace authentication dialog 
   4105         with a subclass when out of localization freeze
   4106 
   4107         * Panels.subproj/WebAuthenticationPanel.h:
   4108         moved declaration of NonBlockingPanel here so it can be accessed by the nib
   4109         * Panels.subproj/WebAuthenticationPanel.m:
   4110         (-[WebAuthenticationPanel replacePanelWithSubclassHack]):
   4111         removed this method
   4112         (-[WebAuthenticationPanel loadNib]):
   4113         stop calling the removed method
   4114 
   4115         * Panels.subproj/English.lproj/WebAuthenticationPanel.nib/classes.nib:
   4116         * Panels.subproj/English.lproj/WebAuthenticationPanel.nib/info.nib:
   4117         * Panels.subproj/English.lproj/WebAuthenticationPanel.nib/objects.nib:
   4118         the panel in the nib now has custom class NonBlockingPanel
   4119 
   4120 2005-08-03  Beth Dakin  <bdakin (a] apple.com>
   4121 
   4122         Reviewed by cblu
   4123 
   4124 	Removing calls to WKCreateUncorrectedRGBColorSpace and
   4125         WKCreateUncorrectedGrayColorSpace in WebKit to patch up
   4126 	TOT...Eric removed them from WebCore last night.
   4127 
   4128         * WebCoreSupport.subproj/WebImageData.m:
   4129         * WebCoreSupport.subproj/WebImageRenderer.m:
   4130         (WebCGColorSpaceCreateRGB):
   4131         (WebCGColorSpaceCreateGray):
   4132 
   4133 2005-08-02  John Sullivan  <sullivan (a] apple.com>
   4134 
   4135         Reviewed by Darin Adler.
   4136         
   4137         Preemptively moved some WebMenuItemTag values from SPI to API, in anticipation of
   4138         approval from macosx-api-reviewers. Retitled one of them in response to API reviewers feedback:
   4139         WebMenuItemSearchInGoogle -> WebMenuItemSearchWeb
   4140         
   4141         Note that as a side effect of this change, the actual numbers used for these WebMenuItemTags has
   4142         changed from what it was in Tiger. This causes "Search in Spotlight", "Search in Google", and
   4143         "Look Up in Dictionary" to not appear in Tiger Safari if running on tip of tree WebKit.
   4144 
   4145         * WebView.subproj/WebUIDelegatePrivate.h:
   4146         removed WebMenuItemTagSearchInSpotlight, WebMenuItemTagSearchInGoogle, and WebMenuItemTagLookUpInDictionary
   4147 
   4148         * WebView.subproj/WebUIDelegate.h:
   4149         added WebMenuItemTagSearchInSpotlight, WebMenuItemTagSearchWeb, and WebMenuItemTagLookUpInDictionary
   4150 
   4151         * WebView.subproj/WebDefaultContextMenuDelegate.m:
   4152         (-[WebDefaultUIDelegate menuItemWithTag:]):
   4153         updated for rename
   4154         (-[WebDefaultUIDelegate contextMenuItemsForElement:defaultMenuItems:]):
   4155         ditto
   4156         (-[WebDefaultUIDelegate editingContextMenuItemsForElement:defaultMenuItems:]):
   4157         ditto
   4158         
   4159 2005-08-01  Geoffrey Garen  <ggaren (a] apple.com>
   4160 
   4161         -fixed <rdar://problem/3572585> window.open fails if name param = 
   4162         the name of a window just closed in same function
   4163 
   4164         Reviewed by darin.
   4165 
   4166         Test cases added:
   4167 
   4168         * manual-tests/open-after-close.html: Added.
   4169         * manual-tests/resources/open-after-close-popup.html: Added.
   4170 
   4171         * WebCoreSupport.subproj/WebBridge.m:
   4172         (-[WebBridge closeWindowSoon]): We now remove a WebView from 
   4173         WebViewSets when the WebView is *scheduled* to close.
   4174 
   4175 2005-08-01  John Sullivan  <sullivan (a] apple.com>
   4176 
   4177         * PublicHeaderChangesFromTiger.txt:
   4178         added a comment about isTextField -> _isTextField
   4179 
   4180 2005-08-01  John Sullivan  <sullivan (a] apple.com>
   4181 
   4182         Patch by Trey Matteson <trey (a] usa.net>
   4183         Reviewed by me.
   4184 
   4185         Fixed http://bugs.webkit.org/show_bug.cgi?id=4255
   4186           underlines still print too thick
   4187 
   4188         The real problem here is that we have code that scales a 0 width line to always
   4189         be width=1.0 in device space.  I'm leaving that in for the screen, but when printing
   4190         a width of 0.5 looks good.
   4191 
   4192         * WebCoreSupport.subproj/WebTextRenderer.m:
   4193         (-[WebTextRenderer drawLineForCharacters:yOffset:width:color:thickness:]):
   4194 
   4195 2005-08-01  Eric Seidel  <eseidel (a] apple.com>
   4196 
   4197         Reviewed by darin.
   4198 
   4199         * WebCoreSupport.subproj/WebGraphicsBridge.m:
   4200         removed create*ColorSpace methods, now using CG API directly.
   4201         http://bugs.webkit.org/show_bug.cgi?id=4211
   4202 
   4203 2005-07-31  John Sullivan  <sullivan (a] apple.com>
   4204 
   4205         Patch by Trey Matteson <trey (a] usa.net>
   4206         Reviewed by me.
   4207 
   4208         Fixed http://bugs.webkit.org/show_bug.cgi?id=4014
   4209           PDF files by default load with a poor choice of sizing
   4210 
   4211         For now the various PDF viewing settings are sticky, stored in 2 new defaults.  Since
   4212         there are a number of ways these settings are changed, I made a proxy for the PDFView
   4213         through which all view changing messages are sent.  The proxy adds the behavior of
   4214         updating the defaults upon any change.
   4215 
   4216         * Misc.subproj/WebNSDictionaryExtras.h:
   4217         * Misc.subproj/WebNSDictionaryExtras.m:
   4218         (-[NSMutableDictionary _webkit_setFloat:forKey:]):  New support method.
   4219         * WebView.subproj/WebPDFView.h:
   4220         * WebView.subproj/WebPDFView.m:
   4221         (-[WebPDFView initWithFrame:]):  Create proxy for PDFView.
   4222         (-[WebPDFView dealloc]):  Free proxy.
   4223         (-[WebPDFView _menuItemsFromPDFKitForEvent:]):  For relevant context menu items, set the
   4224             target to the proxy instead of the PDFView.
   4225         (-[WebPDFView _readPDFDefaults]):  Init PDFView with settings from defaults.
   4226         (-[WebPDFView layout]):  Call _readPDFDefaults, once.  This turned out to be the best hook.
   4227         (-[WebPDFView _makeTextSmaller:]):  Change PDFView via proxy
   4228         (-[WebPDFView _makeTextLarger:]):  Ditto
   4229         (-[WebPDFView _makeTextStandardSize:]):  Ditto
   4230         (-[PDFPrefUpdatingProxy initWithView:]):  trivial
   4231         (-[PDFPrefUpdatingProxy forwardInvocation:]):  Forward the msg, then update defaults
   4232         (-[PDFPrefUpdatingProxy methodSignatureForSelector:]):  Simple forwarding support.
   4233         * WebView.subproj/WebPreferenceKeysPrivate.h:
   4234         * WebView.subproj/WebPreferences.m:
   4235         (+[WebPreferences initialize]):  Set initial values for new PDF viewing defaults.
   4236         (-[WebPreferences _integerValueForKey:]):  Nuke stray comment.
   4237         (-[WebPreferences _floatValueForKey:]):  New simple support method.
   4238         (-[WebPreferences _setFloatValue:forKey:]):  Ditto.
   4239         (-[WebPreferences PDFScaleFactor]):  4 accessors for new defaults 
   4240         (-[WebPreferences setPDFScaleFactor:]):
   4241         (-[WebPreferences PDFDisplayMode]):
   4242         (-[WebPreferences setPDFDisplayMode:]):
   4243         * WebView.subproj/WebPreferencesPrivate.h:
   4244 
   4245 2005-08-01  Justin Garcia  <justin.garcia (a] apple.com>
   4246 
   4247         Patch by Trey Matteson <trey (a] usa.net>
   4248 
   4249         Reviewed by Maciej.
   4250 
   4251         Fixed <http://bugs.webkit.org/show_bug.cgi?id=4226>
   4252           link underlines print too thickly
   4253 
   4254         Reinstate the fix made by sullivan on 1/11/05.  There was a merge
   4255         error with an mjs fix on 1/13/05.
   4256 
   4257         * WebCoreSupport.subproj/WebTextRenderer.m:
   4258         (-[WebTextRenderer drawLineForCharacters:yOffset:width:color:thickness:]):
   4259 
   4260 2005-07-30  Maciej Stachowiak  <mjs (a] apple.com>
   4261 
   4262         Build fixes for previous change (missing includes)
   4263 
   4264         * WebView.subproj/WebFrame.m:
   4265         * WebView.subproj/WebScriptDebugDelegate.m:
   4266 
   4267 2005-07-29  Maciej Stachowiak  <mjs (a] apple.com>
   4268 
   4269         Changes by Michael Kahl, reviewed by me.
   4270 
   4271 	- fixed <rdar://problem/4164112> MASTER: JavaScript debugging support
   4272 	
   4273         * WebCoreSupport.subproj/WebBridge.m:
   4274         (-[WebBridge windowObjectCleared]):
   4275         * WebCoreSupport.subproj/WebSubresourceLoader.m:
   4276         * WebKit.xcodeproj/project.pbxproj:
   4277         * WebView.subproj/WebDefaultScriptDebugDelegate.h: Added.
   4278         * WebView.subproj/WebDefaultScriptDebugDelegate.m: Added.
   4279         (+[WebDefaultScriptDebugDelegate sharedScriptDebugDelegate]):
   4280         (-[WebDefaultScriptDebugDelegate webView:didParseSource:fromURL:sourceId:forWebFrame:]):
   4281         (-[WebDefaultScriptDebugDelegate webView:didEnterCallFrame:sourceId:line:forWebFrame:]):
   4282         (-[WebDefaultScriptDebugDelegate webView:willExecuteStatement:sourceId:line:forWebFrame:]):
   4283         (-[WebDefaultScriptDebugDelegate webView:willLeaveCallFrame:sourceId:line:forWebFrame:]):
   4284         * WebView.subproj/WebFrame.m:
   4285         (-[WebFramePrivate dealloc]):
   4286         (-[WebFrame _attachScriptDebugger]):
   4287         * WebView.subproj/WebFramePrivate.h:
   4288         * WebView.subproj/WebScriptDebugDelegate.h: Added.
   4289         * WebView.subproj/WebScriptDebugDelegate.m: Added.
   4290         (-[WebScriptDebugger initWithWebFrame:]):
   4291         (-[WebScriptDebugger dealloc]):
   4292         (-[WebScriptDebugger globalObject]):
   4293         (-[WebScriptDebugger newWrapperForFrame:]):
   4294         (-[WebScriptDebugger parsedSource:fromURL:sourceId:]):
   4295         (-[WebScriptDebugger enteredFrame:sourceId:line:]):
   4296         (-[WebScriptDebugger hitStatement:sourceId:line:]):
   4297         (-[WebScriptDebugger leavingFrame:sourceId:line:]):
   4298         (-[WebScriptCallFrame _initWithFrame:]):
   4299         (-[WebScriptCallFrame dealloc]):
   4300         (-[WebScriptCallFrame setUserInfo:]):
   4301         (-[WebScriptCallFrame userInfo]):
   4302         (-[WebScriptCallFrame caller]):
   4303         (-[WebScriptCallFrame scopeChain]):
   4304         (-[WebScriptCallFrame functionName]):
   4305         (-[WebScriptCallFrame exception]):
   4306         (-[WebScriptCallFrame evaluateWebScript:]):
   4307         * WebView.subproj/WebScriptDebugDelegatePrivate.h: Added.
   4308         * WebView.subproj/WebView.h:
   4309         * WebView.subproj/WebView.m:
   4310         (-[WebViewPrivate dealloc]):
   4311         (-[WebView _scriptDebugDelegateForwarder]):
   4312         (-[WebView setScriptDebugDelegate:]):
   4313         (-[WebView scriptDebugDelegate]):
   4314         * WebView.subproj/WebViewInternal.h:
   4315         * WebView.subproj/WebViewPrivate.h:
   4316 
   4317 2005-07-26  Maciej Stachowiak  <mjs (a] apple.com>
   4318 
   4319         Reviewed by Dave Hyatt.
   4320 
   4321 	- fixed http://bugs.webkit.org/show_bug.cgi?id=4153
   4322 	
   4323         * WebView.subproj/WebFrame.m:
   4324         (-[WebFrame _purgePageCache]): Find the oldest candidate for
   4325 	purging that is not a snapback item.
   4326 
   4327 2005-07-29  David Harrison  <harrison (a] apple.com>
   4328 
   4329         Reviewed by Dave Hyatt (rendering) and Maciej (editing and performance improvements).
   4330 
   4331         Test cases added: Existing tab-related basic editing tests were updated.  More complex tests are coming soon.
   4332 
   4333         <rdar://problem/3792529> REGRESSION (Mail): Tabs do not work the way they did in Panther (especially useful in plain text mail)
   4334         
   4335         Basic strategy is to put tabs into spans with white-space:pre style, and
   4336         render them with tabs stops every 8th space, where the space width and
   4337         the left margin are those of the enclosing block.
   4338 
   4339         * WebCoreSupport.subproj/WebTextRenderer.m:
   4340         (isSpace):
   4341         (isRoundingHackCharacter):
   4342         (getUncachedWidth):
   4343         (-[WebTextRenderer drawLineForCharacters:yOffset:width:color:thickness:]):
   4344         (-[WebTextRenderer _computeWidthForSpace]):
   4345         (_drawGlyphs):
   4346         (-[WebTextRenderer _CG_drawHighlightForRun:style:geometry:]):
   4347         (-[WebTextRenderer _CG_floatWidthForRun:style:widths:fonts:glyphs:startPosition:numGlyphs:]):
   4348         (-[WebTextRenderer _extendCharacterToGlyphMapToInclude:]):
   4349         (-[WebTextRenderer _CG_pointToOffset:style:position:reversed:includePartialGlyphs:]):
   4350         (glyphForCharacter):
   4351         (initializeCharacterWidthIterator):
   4352         (ceilCurrentWidth):
   4353         (widthForNextCharacter):
   4354 
   4355 2005-07-29  John Sullivan  <sullivan (a] apple.com>
   4356 
   4357         Reviewed by Dave Hyatt.
   4358         
   4359         - WebKit part of <rdar://problem/4187404> Redo form SPI so that it doesn't rely on NSViews
   4360         
   4361         Much of 4187404 was addressed in earlier checkins. This checkin completes the task.
   4362 
   4363         * WebView.subproj/WebHTMLRepresentation.h:
   4364         * WebView.subproj/WebHTMLRepresentation.m:
   4365         removed viewForElement:, which was the only remaining NSView-related SPI that Safari autofill was
   4366         still using. I added viewForElement a week ago as a transitional measure, so removing it won't
   4367         affect any other clients.
   4368 
   4369 2005-07-29  John Sullivan  <sullivan (a] apple.com>
   4370 
   4371         Reviewed by Chris Blumenberg.
   4372 
   4373         * WebView.subproj/WebFrameView.m:
   4374         (-[WebFrameView _firstResponderIsFormControl]):
   4375         renamed from _firstResponderIsControl for clarity. Explicitly rejects WebHTMLView, since
   4376         it's now a control.
   4377         (-[WebFrameView keyDown:]):
   4378         updated for renamed method.
   4379 
   4380 2005-07-28  John Sullivan  <sullivan (a] apple.com>
   4381 
   4382         Reviewed by Beth Dakin.
   4383         
   4384         - removed method -[WebHTMLRepresentation elementForView:], which was SPI used only for
   4385         Safari autofill. Tip of tree Safari no longer includes any calls to this method. Also, 
   4386         Tiger Safari never gets around to actually calling it due to the other recent form-SPI-related
   4387         changes, so removing this method doesn't break Tiger Safari running on tip of tree WebKit
   4388         (though autofill continues to not work in that configuration).
   4389 
   4390         * WebView.subproj/WebHTMLRepresentation.h:
   4391         * WebView.subproj/WebHTMLRepresentation.m:
   4392         (-[WebHTMLRepresentation elementForView:]): removed
   4393         
   4394 2005-07-27  John Sullivan  <sullivan (a] apple.com>
   4395 
   4396 	Patch by Trey Matteson <trey (a] usa.net>
   4397         Reviewed by me.
   4398 
   4399         Fixed http://bugs.webkit.org/show_bug.cgi?id=4169
   4400           scaling PDF view up leaves later HTML view scaled too
   4401 
   4402         An additional step of separating scaling of HTML and PDF.  If we do a zoom and there
   4403         are no docViews that track the common scaling factor, then don't change it.  Thus in
   4404         the common PDF case where it is the only doc view, scaling the PDF does not affect
   4405         HTML pages loaded in the same window.
   4406 
   4407         * WebView.subproj/WebView.m:
   4408         (-[WebView canMakeTextSmaller]):  Pass 0 for new scaling factor, since we just querying.
   4409         (-[WebView canMakeTextLarger]):  Ditto.
   4410         (-[WebView makeTextSmaller:]):  Pass new scaling factor.
   4411         (-[WebView makeTextLarger:]):  Ditto.
   4412         (-[WebView canMakeTextStandardSize]):  Pass 0 for new scaling factor.
   4413         (-[WebView makeTextStandardSize:]):  Pass new scaling factor.
   4414         (-[WebView _performTextSizingSelector:withObject:onTrackingDocs:selForNonTrackingDocs:newScaleFactor:]):
   4415           The meat of the change is that this Swiss Army Knife also takes a new scaling
   4416           factor, which it will set as the common scaling factor if it finds any doc views that
   4417           are able to be scaled which track the common scaling factor.
   4418 
   4419 2005-07-27  John Sullivan  <sullivan (a] apple.com>
   4420 
   4421 	Patch by Trey Matteson <trey (a] usa.net>
   4422         Reviewed by me.
   4423 
   4424         Fixed http://bugs.webkit.org/show_bug.cgi?id=4015
   4425           PDF views should remember viewing mode, scroll position across back/forward
   4426           Note this doesn't work within frames because of a PDFKit bug - see 4164
   4427         Fixed http://bugs.webkit.org/show_bug.cgi?id=4091
   4428           PDF views should keep a separate scaling factor from shared text scaling factor
   4429 
   4430         Basic idea #1 is that we now have a general mechanism for a WebDocView to save/restore some UI
   4431         state to the WebHistoryItem.
   4432         Basic idea #2 is that _WebDocumentTextSizing is expanded to allow for the case of a WebDocView
   4433         keeping its own notion of a scaling factor.  WebPDFView's -_tracksCommonSizeFactor has justification.
   4434 
   4435         * History.subproj/WebHistoryItem.m:
   4436         (-[WebHistoryItem setViewState:]):  New methods to hold PList of arbitrary WebView state
   4437         (-[WebHistoryItem viewState]):
   4438         * History.subproj/WebHistoryItemPrivate.h:
   4439         * WebKit.xcodeproj/project.pbxproj:  Add Quartz to framework path so we can import PDFKit files
   4440         * WebView.subproj/WebDocumentInternal.h:  New methods added to _WebDocumentTextSizing.
   4441           Also the _ prefix is sufficient instead of _web_WebDocumentTextSizing.
   4442           Added _WebDocumentViewState protocol.
   4443         * WebView.subproj/WebFrame.m:
   4444         (-[WebFrame _createItemTreeWithTargetFrame:clippedAtTarget:]):  Rename of save/restore methods.
   4445         (-[WebFrame _detachFromParent]):  Ditto
   4446         (-[WebFrame _transitionToCommitted:]):  Ditto
   4447         (-[WebFrame _checkLoadCompleteForThisFrame]):  Ditto
   4448         (-[WebFrame _loadItem:withLoadType:]):  Ditto
   4449         (-[WebFrame _recursiveGoToItem:fromItem:withLoadType:]):  Ditto
   4450         (-[WebFrame _saveViewStateToItem:]):  Call doc view to retrieve view state.
   4451         (-[WebFrame _restoreViewState]):  Call doc view to set view state.
   4452         (-[WebFrame _scrollToTop]):  Nuked dead code.
   4453         (-[WebFrame _textSizeMultiplierChanged]):  This work now appears in WebView.
   4454         (-[WebFrame _saveDocumentAndScrollState]):  Same rename, one code cleanup.
   4455         (-[WebFrame _accumulateDocumentViews:]): Add our docview to the array, call kids.
   4456         (-[WebFrame _documentViews]):  New helper to return all docviews.
   4457         (-[WebFrame _didFirstLayout]):  Same name change.
   4458         * WebView.subproj/WebFrameInternal.h:
   4459         * WebView.subproj/WebFramePrivate.h:
   4460         * WebView.subproj/WebHTMLView.m:  Removed redundant category decl.
   4461         (-[WebHTMLView _makeTextSmaller:]):  Implement new protocol.
   4462         (-[WebHTMLView _makeTextLarger:]):
   4463         (-[WebHTMLView _makeTextStandardSize:]):
   4464         (-[WebHTMLView _tracksCommonSizeFactor]):
   4465         * WebView.subproj/WebPDFRepresentation.m:  Tweak #imports.
   4466         * WebView.subproj/WebPDFView.h:
   4467         * WebView.subproj/WebPDFView.m:
   4468         (-[WebPDFView _menuItemsFromPDFKitForEvent:]):  No longer intercept context menu text sizing items.
   4469         (-[WebPDFView setDataSource:]):  No longer track the WebView's scaling factor.
   4470         (-[WebPDFView scrollPoint]):  Dig through PDFKit view tree to get real scroll position
   4471         (-[WebPDFView setScrollPoint:]):  Ditto
   4472         (-[WebPDFView viewState]):  Return bundle of viewing params
   4473         (-[WebPDFView setViewState:]):  Restore bundle of viewing params
   4474         (-[WebPDFView _makeTextSmaller:]):  Implement new text sizing protocol
   4475         (-[WebPDFView _makeTextLarger:]):
   4476         (-[WebPDFView _makeTextStandardSize:]):
   4477         (-[WebPDFView _tracksCommonSizeFactor]):
   4478         (-[WebPDFView _canMakeTextSmaller]):
   4479         (-[WebPDFView _canMakeTextLarger]):
   4480         (-[WebPDFView _canMakeTextStandardSize]):
   4481         * WebView.subproj/WebTextView.m:
   4482         (-[WebTextView _makeTextSmaller:]):  Implement new text sizing protocol
   4483         (-[WebTextView _makeTextLarger:]):
   4484         (-[WebTextView _makeTextStandardSize:]):
   4485         (-[WebTextView _tracksCommonSizeFactor]):
   4486         * WebView.subproj/WebView.m:
   4487         (-[WebView setTextSizeMultiplier:]):  Calling docViews is now more complicates than just posting
   4488            a notification to the frame.
   4489         (-[WebView _performTextSizingSelector:withObject:onTrackingDocs:selForNonTrackingDocs:]):  Workhorse
   4490            that sends the text sizing method to the right doc views.
   4491         (-[WebView canMakeTextSmaller]):  Call workhorse.
   4492         (-[WebView canMakeTextLarger]):  Ditto
   4493         (-[WebView makeTextSmaller:]):  Ditto
   4494         (-[WebView makeTextLarger:]):  Ditto
   4495         (-[WebView canMakeTextStandardSize]):  Ditto
   4496         (-[WebView makeTextStandardSize:]):  Ditto
   4497 
   4498 2005-07-26  Justin Garcia  <justin.garcia (a] apple.com>
   4499 
   4500         Patch by Trey Matteson <trey (a] usa.net>
   4501 
   4502         Reviewed by John Sullivan.
   4503         
   4504         Fixed <http://bugs.webkit.org/show_bug.cgi?id=4072>
   4505         Pressing back in browser misses out a page
   4506         
   4507         * WebView.subproj/WebFrame.m:
   4508         (-[WebFrame _transitionToCommitted:]):  When reloading the same page or refreshing the
   4509         page, update the URL in the b/f item with the URL that we wind up at.  Due to cookies,
   4510         it might be different than the result we just got when we loaded the same page.
   4511 
   4512 2005-07-26  David Hyatt  <hyatt (a] apple.com>
   4513 
   4514 	Make WebHTMLView inherit from NSControl instead of NSView.
   4515 	This change is necessary because the theme renderer for
   4516 	WebCore that draws controls with the Aqua appearance does so
   4517 	using NSCells.  NSCells must be hosted within a control view
   4518 	in order to paint properly.
   4519 
   4520 	The method updateCell must be overridden because it wants to
   4521 	repaint the whole control when the windows resigns/becomes
   4522 	key, and this would result in behavior that we don't want
   4523 	(the repainting of the whole view).  We already have hooks
   4524 	in WebHTMLView for the window resigning/becoming key so
   4525 	we will do our proper control updating there instead (in a
   4526 	future patch).
   4527 
   4528         Reviewed by john
   4529 
   4530         * WebView.subproj/WebHTMLView.h:
   4531         * WebView.subproj/WebHTMLView.m:
   4532         (-[WebHTMLView updateCell:]):
   4533         
   4534 2005-07-26  John Sullivan  <sullivan (a] apple.com>
   4535 
   4536         Reviewed by Chris Blumenberg.
   4537         
   4538         - more work to wean form-related SPI from NSView. All that's left (but this is a big "all")
   4539         is viewForElement: and elementForView:        
   4540 
   4541         * WebCoreSupport.subproj/WebBridge.m:
   4542         (-[WebBridge textField:doCommandBySelector:]):
   4543         changed signature to pass along DOMElement* rather than NSView*
   4544         
   4545         * WebView.subproj/WebFormDelegate.h:
   4546         * WebView.subproj/WebFormDelegate.m:
   4547         (-[WebFormDelegate textField:doCommandBySelector:inFrame:]):
   4548         ditto
   4549 
   4550 2005-07-25  John Sullivan  <sullivan (a] apple.com>
   4551 
   4552         Reviewed by Darin Adler.
   4553         
   4554         - big hunk of weaning form-related SPI from NSView; autofill continues to
   4555         work (but only on tip of tree Safari)
   4556         
   4557         * WebCoreSupport.subproj/WebBridge.m:
   4558         (-[WebBridge textFieldDidBeginEditing:]):
   4559         changed name from controlTextXXX:, now takes a DOMHTMLInputElement*
   4560         (-[WebBridge textFieldDidEndEditing:]):
   4561         ditto
   4562         (-[WebBridge textDidChangeInTextField:]):
   4563         ditto
   4564         (-[WebBridge textDidChangeInTextArea:]):
   4565         changed name from textDidChange:, now takes a DOMHTMLTextAreaElement*
   4566         (-[WebBridge control:textShouldBeginEditing:]):
   4567         removed this method as it wasn't being used by autofill, and did nothing in WebKit
   4568         (-[WebBridge control:textShouldEndEditing:]):
   4569         ditto
   4570         (-[WebBridge textField:shouldHandleEvent:]):
   4571         changed name from control:textView:shouldHandleEvent:, now takes a DOMHTMLInputElement*.
   4572         The textView parameter wasn't being used, so I eliminated it.
   4573         
   4574         * WebView.subproj/WebFormDelegate.h:
   4575         * WebView.subproj/WebFormDelegate.m:
   4576         (-[WebFormDelegate textFieldDidBeginEditing:inFrame:]):
   4577         (-[WebFormDelegate textFieldDidEndEditing:inFrame:]):
   4578         (-[WebFormDelegate control:textShouldBeginEditing:inFrame:]):
   4579         (-[WebFormDelegate control:textShouldEndEditing:inFrame:]):
   4580         (-[WebFormDelegate textDidChangeInTextField:inFrame:]):
   4581         (-[WebFormDelegate textDidChangeInTextArea:inFrame:]):
   4582         (-[WebFormDelegate textField:shouldHandleEvent:inFrame:]):
   4583         These all changed in the same way as the WebBridge methods
   4584         
   4585 
   4586 2005-07-25  Vicki Murley <vicki (a] apple.com>
   4587 
   4588         Reviewed by Darin.
   4589  
   4590 	- fixed <rdar://problem/3470523> Safari's user agent should be changed to say Intel rather 
   4591 	than PPC on Intel machines
   4592 
   4593         * WebView.subproj/WebView.m: add conditional #defines for "PPC" and "Intel"
   4594         (-[WebView userAgentForURL:]): use this variable when constructing the user agent string
   4595 
   4596 2005-07-24  Justin Garcia  <justin.garcia (a] apple.com>
   4597 
   4598         Reviewed by mjs
   4599         
   4600         - Fixes <rdar://problem/4120535> deleteToEndOfLine: does not delete thew newline when at the end of a line
   4601             Fix to match NSTextView.  Delete the next character if deleteToEndOfLine fails
   4602 
   4603         * WebView.subproj/WebHTMLView.m:
   4604         (-[WebHTMLView deleteToEndOfLine:]):
   4605 
   4606 2005-07-24  Justin Garcia  <justin.garcia (a] apple.com>
   4607 
   4608         Patch by Trey Matteson <trey (a] apple.com>
   4609 
   4610         Reviewed by john
   4611         
   4612         Fixes <http://bugs.webkit.org/show_bug.cgi?id=3953> back-forward items have wrong titles after sub-frame navigations
   4613 
   4614         This was caused by a mistaken data structure, where WebDataSource tried to keep a list of
   4615         b/f items it was responsible for.  The problem arose in the case of frames, where a subframe
   4616         was loaded with new content.  When this happens a fresh tree of b/f items is created,
   4617         but the reference in the DataSource still pointed to the old item.
   4618 
   4619         Since the WebFrame does a lot of work to track the current b/f item, the easiest thing is to
   4620         get rid of the DataSource's reference, and have it ask the WebFrame to set the title on the
   4621         right b/f item.
   4622 
   4623         * WebView.subproj/WebDataSource.m:
   4624         (-[WebDataSourcePrivate dealloc]):
   4625         (-[WebDataSource _setTitle:]):
   4626         * WebView.subproj/WebDataSourcePrivate.h:
   4627         * WebView.subproj/WebFrame.m:
   4628         (-[WebFrame _createItem:]):
   4629         (-[WebFrame _transitionToCommitted:]):
   4630         (-[WebFrame _loadURL:referrer:loadType:target:triggeringEvent:form:formValues:]):
   4631         (-[WebFrame _setTitle:]):
   4632         * WebView.subproj/WebFramePrivate.h:
   4633 
   4634 2005-07-24  Justin Garcia  <justin.garcia (a] apple.com>
   4635 
   4636         Reviewed by kevin
   4637         
   4638         Fixed make clean problem
   4639 
   4640         * Makefile.am:
   4641 
   4642 2005-07-23  Justin Garcia  <justin.garcia (a] apple.com>
   4643 
   4644         Patch by <opendarwin.org (a] mitzpettel.com>
   4645 
   4646         Reviewed by darin and hyatt
   4647         
   4648         Fixes <http://bugs.webkit.org/show_bug.cgi?id=3862>
   4649         The fix for <http://bugs.webkit.org/show_bug.cgi?id=3545> enclosed each run of visually ordered
   4650         hebrew with LRO and PDF control characters, but adjusted the run's to and from to include those characters,
   4651         so that they would be rendered if the font includes a glyph for bidi control characters.
   4652         
   4653         Also adding a manual test
   4654 
   4655         * WebCoreSupport.subproj/WebTextRenderer.m:
   4656         (reverseCharactersInRun):
   4657 
   4658 2005-07-22  John Sullivan  <sullivan (a] apple.com>
   4659 
   4660         Reviewed by Justin Garcia.
   4661         
   4662         Mail (running on tip of tree WebKit) was running into an assertion I recently added.
   4663         The assertion is actually correct, catching an old bug in this code.
   4664 
   4665         * WebView.subproj/WebView.m:
   4666         (-[WebView selectedFrame]):
   4667         if the first responder is a WebFrameView, then we've found the WebFrameView we're 
   4668         looking for, and we shouldn't look at its superviews.
   4669 
   4670 2005-07-22  John Sullivan  <sullivan (a] apple.com>
   4671 
   4672         Reviewed by Chris Blumenberg.
   4673 
   4674         - some changes in the direction of weaning all the form-related SPI from NSView
   4675 
   4676         * PublicHeaderChangesFromTiger.txt:
   4677         noted that the WebCore change to add -[DOMHTMLInputElement isTextField] to
   4678         DOMExtensions.h is a public header change.
   4679 
   4680         * WebView.subproj/WebHTMLRepresentation.h:
   4681         * WebView.subproj/WebHTMLRepresentation.m:
   4682         (-[WebHTMLRepresentation viewForElement:]):
   4683         added viewForElement: as a stopgap measure. This allowed me to convert controlsInForm:
   4684         to return DOMElements rather than NSViews, while keeping autocomplete working in
   4685         Safari tip of tree. When I finish the SPI conversion I'll delete this method. Note that
   4686         from this point on, autocomplete will not work in Tiger Safari with tip of tree WebKit
   4687         (it will always fail to find anything to autocomplete)
   4688 
   4689 2005-07-21  Adele Peterson  <adele (a] apple.com>
   4690 
   4691         Reviewed by Darin.
   4692 
   4693         Changing temporary #ifndef to #if
   4694 
   4695         * WebCoreSupport.subproj/WebImageData.m:
   4696         (-[WebImageData _checkSolidColor:]):
   4697 
   4698 2005-07-21  Adele Peterson  <adele (a] apple.com>
   4699 
   4700         Reviewed by Chris Blumenberg.
   4701 
   4702         - fixed <rdar://problem/4132797> don't register thin PPC WebKit plug-ins
   4703         Merged fix for:
   4704         <rdar://problem/4127100> [WebKit] 8B1016: After installing Acrobat Reader, can no longer see pdf's in Safari
   4705 
   4706         * Plugins.subproj/WebBasePluginPackage.h: Added isNativeLibraryData method.
   4707         * Plugins.subproj/WebBasePluginPackage.m: (-[WebBasePluginPackage isNativeLibraryData:]): Added isNativeLibraryData method.
   4708         * Plugins.subproj/WebNetscapePluginPackage.m: (-[WebNetscapePluginPackage initWithPath:]):
   4709           calls isNativeLibraryData to determine whether or not to register the plug-in.
   4710         * Plugins.subproj/WebPluginPackage.m: (-[WebPluginPackage initWithPath:]): ditto.
   4711         * WebCoreSupport.subproj/WebImageData.m: (-[WebImageData _checkSolidColor:]): added comment for #ifdef.
   4712 
   4713 2005-07-21  Geoffrey Garen  <ggaren (a] apple.com>
   4714 
   4715         * WebKit.pbproj/project.pbxproj: Removed.
   4716 
   4717 2005-07-21  Geoffrey Garen  <ggaren (a] apple.com>
   4718 
   4719         * WebKit.xcodeproj/.cvsignore: Added.
   4720 
   4721 2005-07-21  Geoffrey Garen  <ggaren (a] apple.com>
   4722 
   4723         * WebKit.xcodeproj/project.pbxproj: Added.
   4724 
   4725 2005-07-21  Geoffrey Garen  <ggaren (a] apple.com>
   4726 
   4727         * Makefile.am:
   4728 
   4729 2005-07-20  John Sullivan  <sullivan (a] apple.com>
   4730 
   4731         Reviewed by Vicki Murley.
   4732 
   4733         - removed some form-related methods that weren't being used anywhere, in preparation
   4734         for weaning WebKit's WebFormDelegate protocol from NSView.
   4735 
   4736         * WebCoreSupport.subproj/WebBridge.m:
   4737         * WebView.subproj/WebFormDelegate.h:
   4738         * WebView.subproj/WebFormDelegate.m:
   4739         removed these methods:
   4740         -control:didFailToFormatString:errorDescription:
   4741         -control:didFailToValidatePartialString:errorDescription:
   4742         -control:isValidObject:
   4743 
   4744 2005-07-20  Adele Peterson  <adele (a] apple.com>
   4745 
   4746           Merged fix for:
   4747           <rdar://problem/4125127> [WebKit] horizontal rulers don't render on Safari on web.apple.com
   4748 
   4749           * WebCoreSupport.subproj/WebImageData.m:
   4750           (-[WebImageData _checkSolidColor:]):
   4751 
   4752 2005-07-20  Adele Peterson  <adele (a] apple.com>
   4753 
   4754         Merged fix for :
   4755         <rdar://problem/4118278> mail divide by zero navigating messages
   4756   
   4757         * WebCoreSupport.subproj/WebTextRenderer.m:
   4758         (-[WebTextRenderer _extendGlyphToWidthMapToInclude:font:]):
   4759 
   4760 2005-07-20  John Sullivan  <sullivan (a] apple.com>
   4761 
   4762         Reviewed by Adele Peterson.
   4763         
   4764         - added -[WebView selectedFrame] to SPI (pending public API), needed for 4180958
   4765 
   4766         * WebView.subproj/WebView.m:
   4767         (-[WebView selectedFrame]):
   4768         new method, extracted from _selectedOrMainFrame
   4769         (-[WebView _selectedOrMainFrame]):
   4770         now calls extracted method
   4771         
   4772         * WebView.subproj/WebViewPrivate.h:
   4773         add -selectedFrame to PendingPublic category
   4774 
   4775 2005-07-19  John Sullivan  <sullivan (a] apple.com>
   4776 
   4777         Reviewed by Darin Adler.
   4778         
   4779         - cleaned up code related to dealing with the "selected frame"; fixes radar bugs 4118830 and 4118820
   4780 
   4781         * WebView.subproj/WebTextView.m:
   4782         (-[WebTextView resignFirstResponder]):
   4783         call deselectAll here instead of replicating its guts, just for clarity
   4784         
   4785         * WebView.subproj/WebViewInternal.h:
   4786         eliminated category WebInternal; all of these methods were used only inside WebView.m, so I moved
   4787         them into the existing category WebFileInternal that was declared and implemented in WebView.m
   4788         
   4789         * WebView.subproj/WebView.m:
   4790         (-[WebView searchFor:direction:caseSensitive:wrap:]):
   4791         updated for name changes. Also, uses new _deselectFrame: to clear the selection if the found
   4792         text is in a different frame.
   4793         (-[WebView pasteboardTypesForSelection]):
   4794         (-[WebView writeSelectionWithPasteboardTypes:toPasteboard:]):
   4795         (-[WebView setSelectedDOMRange:affinity:]):
   4796         (-[WebView selectedDOMRange]):
   4797         (-[WebView selectionAffinity]):
   4798         (-[WebView setTypingStyle:]):
   4799         (-[WebView typingStyle]):
   4800         (-[WebView styleDeclarationWithText:]):        
   4801         (-[WebView replaceSelectionWithNode:]):
   4802         (-[WebView replaceSelectionWithText:]):
   4803         (-[WebView replaceSelectionWithMarkupString:]):
   4804         (-[WebView replaceSelectionWithArchive:]):
   4805         (-[WebView deleteSelection]):
   4806         (-[WebView applyStyle:]):
   4807         updated for name changes only
   4808         
   4809         (-[WebView _frameIsSelected:]):
   4810         new method, returns YES if given frame has a non-zero-length selection
   4811         (-[WebView _deselectFrame:]):
   4812         new method, clears selection from given frame
   4813         (-[WebView _findSelectedFrameStartingFromFrame:]):
   4814         new method, recursive helper used by _findSelectedFrame
   4815         (-[WebView _findSelectedFrame]):
   4816         new method, finds first frame that returns YES for _frameIsSelected, or nil
   4817         (-[WebView _debugCollectSelectedFramesIntoArray:startingFromFrame:]):
   4818         new method, recursive helper used by _debugCheckForMultipleSelectedFrames
   4819         (-[WebView _debugCheckForMultipleSelectedFrames]):
   4820         new method for debugging, fires an assertion if there's more than one selected frame.
   4821         (-[WebView _selectedOrMainFrame]):
   4822         renamed from _frameForCurrentSelection, which was a misleading name since the returned
   4823         frame does not necessarily have a selection (or even focus). Now checks for a selected
   4824         but non-focused frame if the first responder is not in any frame. Also, moved in file
   4825         from WebInternal category to WebFileInternal category.
   4826         (-[WebView _bridgeForSelectedOrMainFrame]):
   4827         renamed from _bridgeForCurrentSelection, which was a misleading name for the same
   4828         reasons as _frameForCurrentSelection. Also, moved in file from WebInternal category to
   4829         WebFileInternal category.
   4830         (-[WebView _isLoading]):
   4831         (-[WebView _frameViewAtWindowPoint:]):
   4832         (-[WebView _bridgeAtPoint:]):
   4833         just moved in file from WebInternal category to WebFileInternal category
   4834 
   4835 2005-07-19  Darin Adler  <darin (a] apple.com>
   4836 
   4837         Reviewed by Geoff Garen.
   4838 
   4839         - improve handling of plug-ins when the WebView or a superview is hidden with -[NSView setHidden]
   4840 
   4841         * Plugins.subproj/WebBaseNetscapePluginView.m: (-[WebBaseNetscapePluginView saveAndSetPortStateForUpdate:]):
   4842         Add "hidden" to the list of reasons to clip out all plug-in drawing.
   4843 
   4844 2005-07-18  John Sullivan  <sullivan (a] apple.com>
   4845         
   4846         Written by Trey Matteson  <trey (a] usa.net>
   4847         Reviewed by John Sullivan.
   4848 
   4849         Fixed http://bugs.webkit.org/show_bug.cgi?id=4049
   4850           scroll position not restored when going back/forward at ebay
   4851         Fixed http://bugs.webkit.org/show_bug.cgi?id=4061
   4852           When going back/forward to some pages, they redraw at top before restoring scroll position
   4853 
   4854         The short story is that attempting to restore the scroll position
   4855         at the time when the first layout finishes addresses both of these
   4856         issues.  An explanation of the underlying race condition is in
   4857         a large comment near -_restoreScrollPosition.
   4858 
   4859         * WebCoreSupport.subproj/WebBridge.m:
   4860         (-[WebBridge didFirstLayout]):  Pass through to WebFrame.
   4861         * WebView.subproj/WebFrame.m:
   4862         (-[WebFrame _transitionToCommitted:]):  Get rid of attempt to
   4863           restoreScrollPosition that never did anything because the
   4864           docView was always 0x0 size at that point.
   4865         (-[WebFrame _opened]):  Get rid of redundant call to restoreScrollPosition.
   4866           The imminent call to layoutCompleted makes the same call.
   4867         (-[WebFrame _didFirstLayout]):  Restore the scroll position on
   4868           first layout, if we're doing a b/f nav.
   4869         * WebView.subproj/WebFrameInternal.h:
   4870 
   4871 2005-07-18  John Sullivan  <sullivan (a] apple.com>
   4872 
   4873         Reviewed by Darin Adler.
   4874 
   4875         - fixed these bugs:
   4876         <rdar://problem/4158121> context menu in PDF view should contain the selection-based items like Copy
   4877         <rdar://problem/4184691> WebPDFView should conform to the WebDocumentElement protocol
   4878         <rdar://problem/4184663> "Search in Spotlight" is present but dimmed in context menu for plain-text documents
   4879 
   4880         * WebView.subproj/WebDefaultContextMenuDelegate.m:
   4881         (-[WebDefaultUIDelegate contextMenuItemsForElement:defaultMenuItems:]):
   4882         added ASSERT and comments
   4883 
   4884         * WebView.subproj/WebHTMLView.m:
   4885         (-[WebHTMLView _searchWithGoogleFromMenu:]):
   4886         removed this method (now handled by WebView)
   4887         (-[WebHTMLView _searchWithSpotlightFromMenu:]):
   4888         ditto
   4889         (-[WebHTMLView validateUserInterfaceItem:]):
   4890         removed validation for removed items. The validation wasn't necessary anyway, since we only put these items
   4891         in the menu in the case where they should be enabled.
   4892 
   4893         * WebView.subproj/WebPDFView.h:
   4894         now conforms to WebDocumentElement protocol (which lets [WebView elementAtPoint:] work better)
   4895         * WebView.subproj/WebPDFView.m:
   4896         (-[WebPDFView copy:]):
   4897         added, hands off to PDFView, needed to enable Copy in context menu
   4898         (-[WebPDFView _pointIsInSelection:]):
   4899         new method, checks whether given point is in the selected bounds
   4900         (-[WebPDFView elementAtPoint:]):
   4901         add WebElementIsSelectedKey to returned element
   4902         (-[WebPDFView menuForEvent:]):
   4903         use actual point instead of dummy placeholder, now that we have code that pays attention to the point
   4904 
   4905         * WebView.subproj/WebView.m:
   4906         (-[WebView _searchWithGoogleFromMenu:]):
   4907         moved here from WebHTMLView so it will work for any documentView that conforms to WebDocumentText.
   4908         Rewrote slightly to be non-WebHTMLView-specific. (This menu item was always enabled in Safari because
   4909         Safari replaces its action, but it would not have been always enabled in other WebKit clients, though
   4910         it should have been.)
   4911         (-[WebView _searchWithSpotlightFromMenu:]):
   4912         moved here from WebHTMLView so it will work for any documentView that conforms to WebDocumentText.
   4913         Rewrote slightly to be non-WebHTMLView-specific.
   4914 
   4915 2005-07-18  John Sullivan  <sullivan (a] apple.com>
   4916 
   4917         Reviewed by Richard Williamson.
   4918         
   4919         - fixed <rdar://problem/4184366> WebPDFView should conform to the WebDocumentSelection protocol
   4920 
   4921         * Misc.subproj/WebNSAttributedStringExtras.h: Added.
   4922         * Misc.subproj/WebNSAttributedStringExtras.m: Added.
   4923         (-[NSAttributedString _web_attributedStringByStrippingAttachmentCharacters]):
   4924         New category on NSAttributedString, initially contains this one method that had been in WebHTMLView.
   4925         
   4926         * WebView.subproj/WebHTMLView.m:
   4927         (-[WebHTMLView _writeSelectionWithPasteboardTypes:toPasteboard:cachedAttributedString:]):
   4928         now uses _web_attributedStringByStrippingAttachmentCharacters
   4929         
   4930         * WebView.subproj/WebPDFView.h:
   4931         now conforms to WebDocumentSelection protocol
   4932         * WebView.subproj/WebPDFView.m:
   4933         (-[WebPDFView selectionRect]):
   4934         new, implementation of WebDocumentSelection protocol method
   4935         (-[WebPDFView pasteboardTypesForSelection]):
   4936         ditto
   4937         (-[WebPDFView writeSelectionWithPasteboardTypes:toPasteboard:]):
   4938         ditto
   4939 
   4940         * WebKit.pbproj/project.pbxproj:
   4941         updated for new files
   4942 
   4943 2005-07-18  John Sullivan  <sullivan (a] apple.com>
   4944 
   4945         Reviewed by Chris Blumenberg.
   4946         
   4947         - some refactoring cleanup in the selection/searching code
   4948 
   4949         * Misc.subproj/WebSearchableTextView.h:
   4950         moved WebDocumentSelection protocol conformation to this class, was in subclass WebTextView
   4951         * Misc.subproj/WebSearchableTextView.m:
   4952         (-[WebSearchableTextView selectionRect]):
   4953         new method (moved here from Safari) to return a single rect encompassing all selected text
   4954         (-[WebSearchableTextView pasteboardTypesForSelection]):
   4955         moved here from WebTextView
   4956         (-[WebSearchableTextView writeSelectionWithPasteboardTypes:toPasteboard:]):
   4957         ditto
   4958         
   4959         * WebView.subproj/WebDocumentInternal.h:
   4960         moved WebDocumentSelection protocol out of here
   4961         
   4962         * WebView.subproj/WebDocumentPrivate.h:
   4963         moved WebDocumentSelection protocol into here, added selectionRect method
   4964         
   4965         * WebView.subproj/WebHTMLView.m:
   4966         (-[WebHTMLView selectionRect]):
   4967         new method, calls existing bridge method formerly called by _selectionRect
   4968         (-[WebHTMLView _selectionRect]):
   4969         now calls [self selectionRect]. We can't just delete _selectionRect because it's used by Mail.
   4970         
   4971         * WebView.subproj/WebHTMLViewPrivate.h:
   4972         removed _selectionRect since it's in WebDocumentSelection now
   4973         
   4974         * WebView.subproj/WebTextView.h:
   4975         removed WebDocumentSelection from protocol list since it's in superclass now
   4976         
   4977         * WebView.subproj/WebTextView.m:
   4978         removed old WebDocumentSelection methods because they are in superclass now
   4979 
   4980 2005-07-15  Adele Peterson  <adele (a] apple.com>
   4981 
   4982         Written by Trey Matteson  <trey (a] usa.net>
   4983         Reviewed by John Sullivan.
   4984 
   4985         Fixed http://bugs.webkit.org/show_bug.cgi?id=3910 - REGRESSION: Replying "Cancel" to the form repost nag leaves wrong b/f cursor
   4986 
   4987         * WebView.subproj/WebFrame.m:
   4988         (-[WebFrame _resetBackForwardList]):  new helper method
   4989         (-[WebFrame _continueLoadRequestAfterNavigationPolicy:formState:]):
   4990           If the delegate bailed on the navigation, tell the main frame
   4991           to reset the b/f cursor back to where it was before we started.
   4992 
   4993 2005-07-15  John Sullivan  <sullivan (a] apple.com>
   4994 
   4995         Written by Trey Matteson
   4996         Reviewed by me.
   4997 
   4998         Fix for http://bugs.webkit.org/show_bug.cgi?id=4013
   4999                 text find doesn't wrap in PDF files
   5000 
   5001         This just works once WebPDFView implements the WebDocumentText protocol, which is
   5002         mostly just a matter of forwarding the methods to PDFKit appropriately.
   5003 
   5004         * WebView.subproj/WebPDFView.h:
   5005         * WebView.subproj/WebPDFView.m:
   5006         (-[WebPDFView supportsTextEncoding]):
   5007         (-[WebPDFView string]):
   5008         (-[WebPDFView attributedString]):
   5009         (-[WebPDFView selectedString]):
   5010         (-[WebPDFView selectedAttributedString]):
   5011         (-[WebPDFView selectAll]):
   5012         (-[WebPDFView deselectAll]):
   5013 
   5014 2005-07-15  John Sullivan  <sullivan (a] apple.com>
   5015 
   5016         Reviewed by Kevin Decker.
   5017         
   5018         - fixed <rdar://problem/4181884> Searching for text that overlaps selection works 
   5019         differently in PDFView than in HTMLView
   5020 
   5021         * WebView.subproj/WebPDFView.m:
   5022         (PDFSelectionsAreEqual):
   5023         new function, stand-in for nonexistent -[PDFSelection isEqual:] since calling isEqual:
   5024         on two identical PDFSelections returns NO
   5025         (-[WebPDFView searchFor:direction:caseSensitive:wrap:]):
   5026         Make search algorithm match that in WebCore: initially search inside selection, then check for the case
   5027         where the found text exactly matches the previous selection, and search from past the selection if so.
   5028         The implementation is slightly more complicated than it should be due to PDFKit API limitations (about
   5029         which I added FIXMEs and filed bugs)
   5030 
   5031 2005-07-15  John Sullivan  <sullivan (a] apple.com>
   5032 
   5033         Reviewed by Maciej Stachowiak.
   5034         
   5035         - fixed these bugs:
   5036         <rdar://problem/4181875> Searching for text that overlaps selection works differently in WebTextView than in HTMLView
   5037         <rdar://problem/3393678> Find not finding text in plain (non-HTML) if all text is selected
   5038 
   5039         * Misc.subproj/WebSearchableTextView.m:
   5040         (-[NSString findString:selectedRange:options:wrap:]):
   5041         Make search algorithm match that in WebCore: initially search inside selection, then check for the case
   5042         where the found text exactly matches the previous selection, and search from past the selection if so.
   5043 
   5044 2005-07-14  John Sullivan  <sullivan (a] apple.com>
   5045 
   5046         Reviewed by Dave Hyatt.
   5047 
   5048         - WebKit part of fix for: 
   5049         <rdar://problem/4181227> webpages incorrectly use standard instead of secondary highlighting in certain cases
   5050 
   5051         * WebCoreSupport.subproj/WebBridge.m:
   5052         (-[WebBridge formControlIsResigningFirstResponder:]):
   5053         Implementation of new method defined in WebCore, passes call along to WebHTMLView
   5054         
   5055         * WebView.subproj/WebHTMLViewInternal.h:
   5056         declare _formControlIsResigningFirstResponder: so bridge can call it
   5057 
   5058         * WebView.subproj/WebHTMLView.m:
   5059         (-[WebHTMLView updateFocusState]):
   5060         just moved in file so it could be called from a different category
   5061         (-[WebHTMLView _formControlIsResigningFirstResponder:]):
   5062         new method, updates focus state
   5063 
   5064 2005-07-14  John Sullivan  <sullivan (a] apple.com>
   5065 
   5066 	added missing #import to fix build
   5067 	* WebView.subproj/WebPDFView.m
   5068 
   5069 2005-07-14  Kevin Decker  <kdecker (a] apple.com>
   5070 
   5071         Reviewed by cblu
   5072 
   5073 	Fixed: <rdar://problem/4122282> clicking a link in an PDF file opens the link with NSWorkspace without the usual security checks or WebView delegate control
   5074 
   5075         * WebView.subproj/WebFrame.m:
   5076         (-[WebFrame _safeLoadURL:]): added
   5077         * WebView.subproj/WebFrameInternal.h:
   5078         * WebView.subproj/WebPDFView.m:
   5079         (-[WebPDFView initWithFrame:]):
   5080         (-[WebPDFView PDFViewWillClickOnLink:withURL:]): prevents evilness with a call to _safeLoadURL
   5081         * WebView.subproj/WebTextView.m:
   5082         (-[WebTextView clickedOnLink:atIndex:]): factored calling out to the bridge, and instead call _safeLoadURL
   5083 
   5084 2005-07-14  Vicki Murley  <vicki (a] apple.com>
   5085 
   5086         Reviewed by Kocienda.
   5087 
   5088 	- WebKit part of fix for  <rdar://problem/4172380> [GENENTECH] window.opener 
   5089 	not available when child opened via target="_new"
   5090 
   5091 	Add a setOpener function to the WebCore bridge, and call this function when opening
   5092 	new windows through Web Kit.
   5093 
   5094         * WebView.subproj/WebFrame.m:
   5095         (-[WebFrame _continueLoadRequestAfterNewWindowPolicy:frameName:formState:]):
   5096 
   5097 2005-07-13  Justin Garcia  <justin.garcia (a] apple.com>
   5098 
   5099         Reviewed by John
   5100         
   5101         Rolling in changes necessary to build with newer versions of gcc 4.0
   5102 
   5103         * History.subproj/WebHistoryItem.m:
   5104         (-[WebHistoryItem copyWithZone:]):
   5105         * Misc.subproj/WebNSPasteboardExtras.m:
   5106         (-[NSPasteboard _web_writeImage:URL:title:archive:types:]):
   5107         * Misc.subproj/WebNSURLExtras.m:
   5108         (-[NSURL _web_URLWithLowercasedScheme]):
   5109         (-[NSString _web_mapHostNameWithRange:encode:makeString:]):
   5110         * WebCoreSupport.subproj/WebBridge.m:
   5111         (-[WebBridge MIMETypeForPath:]):
   5112         * WebCoreSupport.subproj/WebImageRendererFactory.m:
   5113         (-[WebImageRendererFactory imageRendererWithBytes:length:MIMEType:]):
   5114         * WebCoreSupport.subproj/WebTextRenderer.m:
   5115         (-[WebTextRenderer initWithFont:usingPrinterFont:]):
   5116         * WebView.subproj/WebFrame.m:
   5117         (-[WebFrame _webDataRequestForData:MIMEType:textEncodingName:baseURL:unreachableURL:]):
   5118         * WebView.subproj/WebHTMLView.m:
   5119         (-[WebHTMLView _styleFromFontAttributes:]):
   5120         * WebView.subproj/WebView.m:
   5121         (-[WebView _writeImageElement:withPasteboardTypes:toPasteboard:]):
   5122         (-[WebView mainFrameTitle]):
   5123 
   5124 2005-07-13  John Sullivan  <sullivan (a] apple.com>
   5125 
   5126         Reviewed by Maciej Stachowiak.
   5127 
   5128         - cleaned up Find-related experimental code that I checked in a while back
   5129 
   5130         * WebView.subproj/WebHTMLView.m:
   5131         (-[WebHTMLView searchFor:direction:caseSensitive:wrap:]):
   5132         remove variant of this method that had findInSelection flag; this method is now
   5133         the same as it was on Tiger.
   5134         
   5135         * WebView.subproj/WebView.m:
   5136         (-[WebView searchFor:direction:caseSensitive:wrap:]):
   5137         ditto
   5138 
   5139 2005-07-12  Geoffrey Garen  <ggaren (a] apple.com>
   5140 
   5141         -rolled in patch by opendarwin.org (a] mitzpettel.com 
   5142         for http://bugs.webkit.org/show_bug.cgi?id=3435
   5143         Parentheses are backwards in Hebrew text (no bidi mirroring?)
   5144         
   5145         Reviewed by mjs.
   5146 
   5147         Layout test added to WebCore.
   5148 
   5149         * WebCoreSupport.subproj/WebTextRenderer.h:
   5150         * WebCoreSupport.subproj/WebTextRenderer.m:
   5151         (-[WebTextRenderer _initializeATSUStyle]):
   5152         (applyMirroringToRun):
   5153         (-[WebTextRenderer _ATSU_drawHighlightForRun:style:geometry:]):
   5154         (-[WebTextRenderer _ATSU_drawRun:style:geometry:]):
   5155         (-[WebTextRenderer _ATSU_pointToOffset:style:position:reversed:includePartialGlyphs:]):
   5156 
   5157 2005-07-12  Ken Kocienda  <kocienda (a] apple.com>
   5158 
   5159         Reviewed by Chris Blumenberg
   5160 
   5161         * WebCoreSupport.subproj/WebBridge.m: Removed some glue that allowed one
   5162         of two unicode (TEC or ICU ) to be chosen at runtime. I just added this
   5163         dual support yesterday, and while Maciej and I agreed that it was good
   5164         to land in the tree in case we run into problems in the near future, we
   5165         also agreed that cutting over to using ICU full time right now is
   5166         probably the best way to find bugs.
   5167 
   5168 2005-07-11  Ken Kocienda  <kocienda (a] apple.com>
   5169 
   5170         Reviewed by Richard
   5171 
   5172         * WebCoreSupport.subproj/WebBridge.m:
   5173         (+[WebBridge setTextConversionMethod:]): New method to support switching text conversion method.
   5174         (+[WebBridge textConversionMethod]): Returns current text conversion method.
   5175 
   5176 2005-07-11  Kevin Decker  <kdecker (a] apple.com>
   5177 
   5178         Reviewed by cblu and mjs.
   5179 
   5180 	Fixed: <rdar://problem/4099552> REGRESSION: Safari 1.3 Netscape API NPN_PostURL[Notify] no longer allows manual headers
   5181 	
   5182 	Most plugins (flash) send 2 CRFL's between the header and body of their POST requests, while the adboe plugin sends two LF's. This caused us to send custom headers as part of the actual POST data itself, and correspondently, would skew Content-Length.
   5183 
   5184         * Plugins.subproj/WebBaseNetscapePluginView.m:
   5185         (-[NSData _web_locationAfterFirstBlankLine]): Look for two LF's as well
   5186 
   5187 2005-07-09  Maciej Stachowiak  <mjs (a] apple.com>
   5188 
   5189         - back out my revent page cache changes, turns out they cause a
   5190 	major performance regression on PLT
   5191 
   5192         * WebView.subproj/WebFrame.m:
   5193         (-[WebFrame _purgePageCache]):
   5194 
   5195 2005-07-09  Maciej Stachowiak  <mjs (a] apple.com>
   5196 
   5197         Reviewed by hyatt.
   5198 
   5199 	Replace int with unsigned, to avoid going into a huge loop when
   5200 	back list count is 0.
   5201 
   5202         * WebView.subproj/WebFrame.m:
   5203         (-[WebFrame _purgePageCache]):
   5204 
   5205 2005-07-09  Maciej Stachowiak  <mjs (a] apple.com>
   5206 
   5207         - fixed broken Development build
   5208 
   5209         * WebView.subproj/WebFrame.m:
   5210         (-[WebFrame _purgePageCache]):
   5211 
   5212 2005-07-09  Maciej Stachowiak  <mjs (a] apple.com>
   5213 
   5214         Reviewed by hyatt.
   5215 
   5216 	- fix page cache purging logic; this gets rid of a bug where the
   5217 	page cache would grow without bound if the oldest page cache item
   5218 	was the snapback item, and changed the rule a bit so page cache
   5219 	items farther back than the max size get purged, even if fewer
   5220 	than the max size are in current use.
   5221 
   5222         * WebView.subproj/WebFrame.m:
   5223         (-[WebFrame _purgePageCache]):
   5224 
   5225 2005-07-08  Geoffrey Garen  <ggaren (a] apple.com>
   5226 
   5227         Rolled in patch by opendarwin.org (a] mitzpettel.com
   5228 
   5229         -fixes http://bugs.webkit.org/show_bug.cgi?id=3818
   5230         Fallback font doesn't have requested weight in ATSUI-rendered text
   5231 
   5232         (See WebCore Changelog for layout test)
   5233 
   5234         Reviewed by mjs.
   5235 
   5236         * WebCoreSupport.subproj/WebTextRenderer.m:
   5237         (-[WebTextRenderer _createATSUTextLayoutForRun:style:]):
   5238 
   5239 2005-07-05  Adele Peterson  <adele (a] apple.com>
   5240 
   5241        Rolling out changes for <rdar://problem/3792529> REGRESSION (Mail): Tabs do not work the way they did in Panther (especially useful in plain text mail)
   5242        since it caused a 2% performance regression.
   5243 
   5244         * WebCoreSupport.subproj/WebTextRenderer.m:
   5245         (isSpace):
   5246         (-[WebTextRenderer _CG_drawHighlightForRun:style:geometry:]):
   5247         (-[WebTextRenderer _CG_floatWidthForRun:style:widths:fonts:glyphs:startPosition:numGlyphs:]):
   5248         (-[WebTextRenderer _extendCharacterToGlyphMapToInclude:]):
   5249         (-[WebTextRenderer _CG_pointToOffset:style:position:reversed:includePartialGlyphs:]):
   5250         (initializeCharacterWidthIterator):
   5251         (widthForNextCharacter):
   5252 
   5253 2005-07-05  John Sullivan  <sullivan (a] apple.com>
   5254 
   5255         Reviewed by Chris Blumenberg.
   5256         
   5257         - fixed <rdar://problem/4158230> Zoom In/Zoom Out in PDF context menu don't update window's notion of text size
   5258 
   5259         * WebView.subproj/WebPDFView.m:
   5260         (-[WebPDFView _menuItemsFromPDFKitForEvent:]):
   5261         Redirect Actual Size, Zoom In, and Zoom Out context menu items so that they behave exactly like Make Text Standard Size,
   5262         Make Text Larger, and Make Text Smaller.
   5263 
   5264 2005-07-01  John Sullivan  <sullivan (a] apple.com>
   5265 
   5266         Reviewed by Darin Adler.
   5267         
   5268         - fixed http://bugs.webkit.org/show_bug.cgi?id=3711: Displayed PDF have limited options in contextual menu
   5269         
   5270         This was a problem with using Tiger's version of Safari with tip of tree WebKit.
   5271 
   5272         * WebView.subproj/WebPDFView.m:
   5273         (-[WebPDFView _anyPDFTagsFoundInMenu:]):
   5274         new method, returns YES if the menu contains any items with any of the new PDF-related tags.
   5275         (-[WebPDFView menuForEvent:]):
   5276         If the executable was linked on Tiger or older (but it will never be older, since this code is
   5277         new to Tiger), force all of the PDF-related items into the menu if none of them were there 
   5278         after processing by the delegate.
   5279 
   5280 2005-06-30  Darin Adler  <darin (a] apple.com>
   5281 
   5282         Reviewed by John Sullivan.
   5283 
   5284         - fixed <http://bugs.webkit.org/show_bug.cgi?id=3774>
   5285           do renaming so that loaders are called "loader", not "client" or "delegate"
   5286 
   5287         * Misc.subproj/WebIconLoader.h:
   5288         * Plugins.subproj/WebNetscapePluginStream.h:
   5289         * Plugins.subproj/WebNetscapePluginStream.m:
   5290         (-[WebNetscapePluginStream initWithRequest:pluginPointer:notifyData:sendNotification:]):
   5291         (-[WebNetscapePluginStream start]):
   5292         (-[WebNetscapePlugInStreamLoader didFinishLoading]):
   5293         (-[WebNetscapePlugInStreamLoader didFailWithError:]):
   5294         (-[WebNetscapePlugInStreamLoader cancelWithError:]):
   5295         * WebCoreSupport.subproj/WebBridge.m:
   5296         (-[WebBridge startLoadingResource:withURL:customHeaders:]):
   5297         (-[WebBridge startLoadingResource:withURL:customHeaders:postData:]):
   5298         (-[WebBridge canRunModalNow]):
   5299         * WebCoreSupport.subproj/WebSubresourceClient.h: Removed.
   5300         * WebCoreSupport.subproj/WebSubresourceClient.m: Removed.
   5301         * WebCoreSupport.subproj/WebSubresourceLoader.h:
   5302         * WebCoreSupport.subproj/WebSubresourceLoader.m:
   5303         (-[WebSubresourceLoader initWithLoader:dataSource:]):
   5304         (-[WebSubresourceLoader dealloc]):
   5305         (+[WebSubresourceLoader startLoadingResource:withRequest:customHeaders:referrer:forDataSource:]):
   5306         (+[WebSubresourceLoader startLoadingResource:withURL:customHeaders:referrer:forDataSource:]):
   5307         (+[WebSubresourceLoader startLoadingResource:withURL:customHeaders:postData:referrer:forDataSource:]):
   5308         (-[WebSubresourceLoader didReceiveResponse:]):
   5309         (-[WebSubresourceLoader didReceiveData:lengthReceived:]):
   5310         (-[WebSubresourceLoader didFinishLoading]):
   5311         (-[WebSubresourceLoader didFailWithError:]):
   5312         (-[WebSubresourceLoader cancel]):
   5313         * WebKit.pbproj/project.pbxproj:
   5314         * WebView.subproj/WebBaseResourceHandleDelegate.h: Removed.
   5315         * WebView.subproj/WebBaseResourceHandleDelegate.m: Removed.
   5316         * WebView.subproj/WebDataSource.m:
   5317         (-[WebDataSourcePrivate dealloc]):
   5318         (-[WebDataSource _setLoading:]):
   5319         (-[WebDataSource _updateLoading]):
   5320         (-[WebDataSource _setPrimaryLoadComplete:]):
   5321         (-[WebDataSource _startLoading:]):
   5322         (-[WebDataSource _addSubresourceLoader:]):
   5323         (-[WebDataSource _removeSubresourceLoader:]):
   5324         (-[WebDataSource _addPlugInStreamLoader:]):
   5325         (-[WebDataSource _removePlugInStreamLoader:]):
   5326         (-[WebDataSource _stopLoadingInternal]):
   5327         (-[WebDataSource _defersCallbacksChanged]):
   5328         (-[WebDataSource _stopLoadingWithError:]):
   5329         (-[WebDataSource data]):
   5330         (-[WebDataSource isLoading]):
   5331         * WebView.subproj/WebDataSourcePrivate.h:
   5332         * WebView.subproj/WebLoader.h:
   5333         * WebView.subproj/WebLoader.m:
   5334         * WebView.subproj/WebMainResourceClient.h: Removed.
   5335         * WebView.subproj/WebMainResourceClient.m: Removed.
   5336         * WebView.subproj/WebMainResourceLoader.h:
   5337         * WebView.subproj/WebMainResourceLoader.m:
   5338         (-[WebMainResourceLoader didReceiveResponse:]):
   5339 
   5340 2005-06-29  David Harrison  <harrison (a] apple.com>
   5341 
   5342         Reviewed by Dave Hyatt (rendering) and Maciej (editing).
   5343 
   5344         Test cases added:  Coming soon.  Will include with next round of changes for this bug.
   5345 
   5346         This is the first checkin for...
   5347         
   5348         <rdar://problem/3792529> REGRESSION (Mail): Tabs do not work the way they did in Panther (especially useful in plain text mail)
   5349         
   5350         Basic strategy is to put tabs into spans with white-space:pre style, and
   5351         render them with tabs stops every 8th space, where the space width and
   5352         the left margin are those of the enclosing block.
   5353         
   5354         What's left is to switch to implement white-space:pre-wrap so
   5355         that we can coalesce consecutive tabs while maintaining proper
   5356         line breaking.  That will keep the markup smaller.
   5357 
   5358         * WebCoreSupport.subproj/WebTextRenderer.m:
   5359         (isSpace):
   5360         (-[WebTextRenderer _CG_drawHighlightForRun:style:geometry:]):
   5361         (-[WebTextRenderer _CG_floatWidthForRun:style:widths:fonts:glyphs:startPosition:numGlyphs:]):
   5362         (-[WebTextRenderer _extendCharacterToGlyphMapToInclude:]):
   5363         (-[WebTextRenderer _CG_pointToOffset:style:position:reversed:includePartialGlyphs:]):
   5364         (initializeCharacterWidthIterator):
   5365         (widthForNextCharacter):
   5366 
   5367 2005-06-29  John Sullivan  <sullivan (a] apple.com>
   5368 
   5369         Reviewed by Kevin.
   5370         
   5371         - deleted some never-used stub code
   5372 
   5373         * WebView.subproj/WebView.m:
   5374         * WebView.subproj/WebViewInternal.h:
   5375         * WebView.subproj/WebViewPrivate.h:
   5376 
   5377 2005-06-27  Justin Garcia  <justin.garcia (a] apple.com>
   5378 
   5379         Patch by Anders Carlsson <andersca (a] mac.com>
   5380 
   5381         Reviewed by Darin.
   5382 
   5383         - Fixes <http://bugs.webkit.org/show_bug.cgi?id=3489>
   5384         WebView's setSelectedDOMRange doesn't not implement clearing the selection as described in the WebView documentation:
   5385         <http://developer.apple.com/documentation/Cocoa/Reference/WebKit/ObjC_classic/Classes/WebView.html>
   5386 	
   5387         * WebView.subproj/WebView.m:
   5388         (-[WebView setSelectedDOMRange:affinity:]):
   5389         If range is nil, call deselectText.
   5390 
   5391 2005-06-24  Justin Garcia  <justin.garcia (a] apple.com>
   5392 
   5393         Patch contributed by Duncan Wilcox <duncan (a] mclink.it>
   5394 
   5395         Reviewed by Darin
   5396 
   5397         - Fixed <http://bugs.webkit.org/show_bug.cgi?id=3535>
   5398             Spelling suggestions in the context menu don't call the should* delegate methods
   5399 
   5400         * WebView.subproj/WebHTMLView.m:
   5401         (-[WebHTMLView _changeSpellingFromMenu:]):
   5402         give delegate's webView:shouldInsertText:replacingDOMRange:givenAction: a chance
   5403         to prevent replacing of selected text
   5404 
   5405 2005-06-22  John Sullivan  <sullivan (a] apple.com>
   5406 
   5407         Reviewed by Chris Blumenberg.
   5408         
   5409         - fixed <rdar://problem/3764645> please add a way to allow WebKit clients to override the WebPDFView context menu
   5410 
   5411         * PublicHeaderChangesFromTiger.txt: Added.
   5412         New file to keep track of changes made to public headers that haven't been through API review yet.
   5413         Initially lists the WebMenuItem enum tags added to WebUIDelegate.h as part of this change.
   5414         
   5415         * WebView.subproj/WebDefaultContextMenuDelegate.m:
   5416         (-[WebDefaultUIDelegate appendDefaultItems:toArray:]):
   5417         new method, handles initial separator
   5418         (-[WebDefaultUIDelegate contextMenuItemsForElement:defaultMenuItems:]):
   5419         now has defaultMenuItems: parameter. Any menu items in this array are appended at the end of
   5420         the standard set.
   5421         (-[WebDefaultUIDelegate editingContextMenuItemsForElement:defaultMenuItems:]):
   5422         ditto
   5423         (-[WebDefaultUIDelegate webView:contextMenuItemsForElement:defaultMenuItems:]):
   5424         This had a defaultMenuItems parameter before but it was always nil. Now it passes the defaultMenuItems
   5425         parameter on to the two methods that construct lists (one for editing, the other for viewing). Also
   5426         tweaked variable name and type for clarity.
   5427         
   5428         * WebView.subproj/WebHTMLView.m:
   5429         (-[WebHTMLView menuForEvent:]):
   5430         passes nil for new defaultItems parameter of _menuForElement:
   5431         
   5432         * WebView.subproj/WebImageView.m:
   5433         (-[WebImageView menuForEvent:]):
   5434         ditto
   5435         
   5436         * WebView.subproj/WebTextView.m:
   5437         (-[WebTextView menuForEvent:]):
   5438         ditto
   5439 
   5440         * WebView.subproj/WebPDFView.m:
   5441         (-[WebPDFView elementAtPoint:]):
   5442         new method to create the element dictionary needed for _menuForElement:defaultItems:. Only supplies the
   5443         webFrame at this point.
   5444         (-[WebPDFView _menuItemsFromPDFKitForEvent:]):
   5445         new method to return copies of the menu items that PDFKit would include in the context menu, with
   5446         WebKit tags applied
   5447         (-[WebPDFView menuForEvent:]):
   5448         now calls standard WebKit context menu mechanism, so clients' delegates can modify the context menu as
   5449         desired. The initial set of items are the ones WebKit was already displaying for PDF context menus.
   5450         
   5451         * WebView.subproj/WebUIDelegate.h:
   5452         added enum values for the menu items in the PDF context menu
   5453         
   5454         * WebView.subproj/WebViewPrivate.h:
   5455         * WebView.subproj/WebView.m:
   5456         (-[WebView _menuForElement:defaultItems:]):
   5457         Added the defaultItems: parameter to this method, which is then passed along to WebDefaultUIDelegate.
   5458         All callers pass nil except for WebPDFView, at least for now.
   5459 
   5460 2005-06-22  Darin Adler  <darin (a] apple.com>
   5461 
   5462         Change by Mitz Pettel.
   5463         Reviewed by me.
   5464 
   5465         - fixed <http://bugs.webkit.org/show_bug.cgi?id=3618>
   5466           RTL runs drawn by CG not reversed properly
   5467 
   5468         * WebCoreSupport.subproj/WebTextRenderer.m: (-[WebTextRenderer _CG_drawRun:style:geometry:]):
   5469         Fix off-by-one mistake in order-swapping loops.
   5470 
   5471 2005-06-22  Darin Adler  <darin (a] apple.com>
   5472 
   5473         Change by Michael Gaiman.
   5474         Reviewed by me.
   5475 
   5476         - fixed <http://bugs.webkit.org/show_bug.cgi?id=3436>
   5477           Missing implementation of -[NSData(WebNSDateExtras) _webkit_parseRFC822HeaderFields]
   5478 
   5479         * Misc.subproj/WebNSDataExtras.h: Fixed name of category say NSData, not NSDate.
   5480         * Misc.subproj/WebNSDataExtras.m: (-[NSData _webkit_parseRFC822HeaderFields]): Fixed method name.
   5481 
   5482 2005-06-21  John Sullivan  <sullivan (a] apple.com>
   5483 
   5484         Reviewed by Vicki Murley
   5485         
   5486         - fixed assertion failure Vicki ran into
   5487 
   5488         * Misc.subproj/WebIconDatabase.m:
   5489         (-[WebIconDatabase _forgetIconForIconURLString:]):
   5490         Handle the case where there are no associated page URLs for the icon URL
   5491 
   5492 2005-06-20  John Sullivan  <sullivan (a] apple.com>
   5493 
   5494         Reviewed by Chris Blumenberg.
   5495         
   5496         - fixed <rdar://problem/4155182> icon database retain counts can be incorrect after removing all icons
   5497         
   5498         Replaced the concept of "future retain count per page URL" with a simpler concept of "retain count per
   5499         page URL", which is maintained even after the icon is actually loaded (unlike the future retain count).
   5500         The total retain count for an icon is now the sum of the retain counts per page URL along with any retain
   5501         count not associated with a page URL -- this is still needed for some internal housekeeping purposes.
   5502 
   5503         * Misc.subproj/WebIconDatabasePrivate.h:
   5504         renamed iconURLToURLs -> iconURLToPageURLs for clarity
   5505         renamed URLToIconURL -> pageURLToIconURL for clarity
   5506         renamed futureURLToRetainCount -> pageURLToRetainCount (there's no more "future" aspect)
   5507         renamed iconURLToRetainCount -> iconURLToExtraRetainCount (it now maintains only some of the retain count)
   5508         
   5509         * Misc.subproj/WebIconDatabase.m:
   5510         (+[WebIconDatabase sharedIconDatabase]):
   5511         updated for name changes only
   5512         (-[WebIconDatabase init]):
   5513         ditto
   5514         (-[WebIconDatabase iconForURL:withSize:cache:]):
   5515         ditto
   5516         (-[WebIconDatabase iconURLForURL:]):
   5517         ditto
   5518         (-[WebIconDatabase retainIconForURL:]):
   5519         just bump the retain count in pageURLToRetainCount, instead of behaving differently based on whether 
   5520         an icon had been loaded for this URL; this let me delete the internal method _retainFutureIconForURL:
   5521         (-[WebIconDatabase releaseIconForURL:]):
   5522         decrement the retain count in pageURLToRetainCount, then handle the case where the retain count for 
   5523         this page has gone to zero. I deleted the internal method _releaseFutureIconForURL: formerly called here.
   5524         (-[WebIconDatabase removeAllIcons]):
   5525         remove all the code that dealt with retain counts; this operation no longer affects retain counts
   5526         (-[WebIconDatabase _setIconURL:forURL:]):
   5527         remove the code that consolidated multiple retain counts for different page URLs into a single retain 
   5528         count; the multiple retain counts are now maintained even after the icon is loaded
   5529         (-[WebIconDatabase _clearDictionaries]):
   5530         updated for name changes only
   5531         (-[WebIconDatabase _loadIconDictionaries]):
   5532         ditto
   5533         (-[WebIconDatabase _updateFileDatabase]):
   5534         ditto
   5535         (-[WebIconDatabase _totalRetainCountForIconURLString:]):
   5536         new method, sums the retain counts associated with specific page URLs and the extra retain count
   5537         not associated with specific page URLs
   5538         (-[WebIconDatabase _retainIconForIconURLString:]):
   5539         updated for name changes
   5540         (-[WebIconDatabase _forgetIconForIconURLString:]):
   5541         no longer affects retain counts at all; this is up to callers
   5542         (-[WebIconDatabase _releaseIconForIconURLString:]):
   5543         this now distinguishes the case where the retain count not associated with any page URLs hits 
   5544         zero from the case where the total retain count hits zero, and handles both
   5545 
   5546 2005-06-20  John Sullivan  <sullivan (a] apple.com>
   5547 
   5548         Reviewed by Chris Blumenberg.
   5549         
   5550         - added support for emptying the icon database
   5551 
   5552         * Misc.subproj/WebIconDatabase.h: just fixed a typo
   5553         * Misc.subproj/WebIconDatabasePrivate.h:
   5554         added WebPendingPublic category with method removeAllIcons, and
   5555         declared WebIconDatabaseDidRemoveAllIconsNotification string.
   5556         
   5557         * Misc.subproj/WebIconDatabase.m:
   5558         (-[WebIconDatabase removeAllIcons]):
   5559         new method, removes all known icons from memory and disk. There's one loose end,
   5560         covered by radar bug 4155182, where it's possible for the icon database's retain
   5561         counts to get off after this operation. I plan to fix this next.
   5562         (-[WebIconDatabase _setIconURL:forURL:]):
   5563         just fixed some extra whitespace
   5564         (-[WebIconDatabase _forgetIconForIconURLString:]):
   5565         new method, extracted from _releaseIconForIconURLString
   5566         (-[WebIconDatabase _releaseIconForIconURLString:]):
   5567         now calls extracted method
   5568 
   5569         * WebKit.exp:
   5570         added _WebIconDatabaseDidRemoveAllIconsNotification
   5571 
   5572 2005-06-19  Darin Adler  <darin (a] apple.com>
   5573 
   5574 	Changes by Mitz Pettel
   5575         Reviewed by me.
   5576         
   5577         - fixed <http://bugs.webkit.org/show_bug.cgi?id=3466>
   5578           ATSUI text doesn't render at coordinates greater than 32K
   5579 
   5580         * WebCoreSupport.subproj/WebTextRenderer.m: (-[WebTextRenderer _ATSU_drawRun:style:geometry:]):
   5581         Translate the matrix of the CGContext instead of passing the appropriate coordinates to ATSU.
   5582 
   5583 2005-06-17  Richard Williamson   <rjw (a] apple.com>
   5584 
   5585 	Changes by Mitz Pettel
   5586         Reviewed by Richard Williamson.
   5587 
   5588 	Fixed http://bugs.webkit.org/show_bug.cgi?id=3545
   5589 
   5590         * WebCoreSupport.subproj/WebTextRenderer.m:
   5591         (reverseCharactersInRun):
   5592         (-[WebTextRenderer _ATSU_pointToOffset:style:position:reversed:includePartialGlyphs:]):
   5593 
   5594 2005-06-17  John Sullivan  <sullivan (a] apple.com>
   5595 
   5596         Reviewed by Chris.
   5597 
   5598         - fixed <rdar://problem/4151001> Reloading javascript-spawned window with no URL erases its contents
   5599 
   5600         * WebView.subproj/WebFrame.m:
   5601         (-[WebFrame reload]):
   5602         do nothing if URL is zero-length
   5603 
   5604 2005-06-14  John Sullivan  <sullivan (a] apple.com>
   5605 
   5606         Changes by Devin Lane.
   5607         Reviewed by me.
   5608 
   5609         - fixed <rdar://problem/3766909> PDF viewing could use a zoom control other than the one in the context menu
   5610 
   5611         * WebView.subproj/WebPDFView.h:
   5612         now implements protocol _web_WebDocumentTextSizing
   5613         * WebView.subproj/WebPDFView.m:
   5614         (-[WebPDFView _updateScalingToReflectTextSize]):
   5615         new method, sets the PDF scaling from the text size multiplier
   5616         (-[WebPDFView setDataSource:]):
   5617         call _updateScalingToReflectTextSize
   5618         (-[WebPDFView _web_textSizeMultiplierChanged]):
   5619         implementation of protocol _web_WebDocumentTextSizing, calls _updateScalingToReflectTextSize
   5620 
   5621 2005-06-14  John Sullivan  <sullivan (a] apple.com>
   5622 
   5623         Reviewed by Dave Harrison.
   5624 
   5625         * WebView.subproj/WebHTMLView.m:
   5626         (-[WebHTMLView _delayedEndPrintMode:]):
   5627         After discussing this with Dave, I made this method both more debugger-friendly with asserts for
   5628         the cases we don't think could ever happen, and more paranoid by handling these cases in deployment
   5629         builds.
   5630 
   5631 2005-06-14  Darin Adler  <darin (a] apple.com>
   5632 
   5633         - fixed build for Xcode 2.1
   5634 
   5635         * WebKit.pbproj/project.pbxproj: Use BUILT_PRODUCTS_DIR instead of SYMROOT to search for the
   5636         WebKitSystemInterface.h file. We could re-jigger this again later, but for now this is consistent
   5637         with both the .a file's location and where build-webkit puts the file.
   5638 
   5639 2005-06-13  John Sullivan  <sullivan (a] apple.com>
   5640 
   5641         Reviewed by Dave Harrison and Maciej.
   5642 
   5643         * WebView.subproj/WebHTMLView.m:
   5644         (-[WebHTMLView _endPrintMode]):
   5645         new method, extracted from identical code in beginDocument and endDocument. This method must be called
   5646         once to counterbalance the code called from knowsPageRange that turns on "printing mode".
   5647         (-[WebHTMLView _delayedEndPrintMode:]):
   5648         new method, called from "perform after delay". Checks whether the same print operation is still underway
   5649         and, if so, delays further. Otherwise calls _endPrintMode directly.
   5650         (-[WebHTMLView knowsPageRange:]):
   5651         after turning on "printing mode", queue up a delayed call to _delayedEndPrintMode:. If there's an early
   5652         error in the print mechanism such that beginDocument is never called, this will cleanly end "printing
   5653         mode" and make the webview usable again.
   5654         (-[WebHTMLView beginDocument]):
   5655         cancel any delayed call to _delayedEndPrintMode:. If we get this far along in printing, then we don't need
   5656         the failsafe call to _delayedEndPrintMode: that was set up in knowsPageRange:. Also, call extracted method.
   5657         (-[WebHTMLView endDocument]):
   5658         call extracted method
   5659 
   5660 2005-06-13  Maciej Stachowiak  <mjs (a] apple.com>
   5661 
   5662         Reviewed by Chris Blumenberg and Adele.
   5663 
   5664 	- better fix for <rdar://problem/4142247> REGRESSION: List to browse widgets at Apple website failed. Closing tab afterwards caused Safari crash
   5665 	http://bugs.webkit.org/show_bug.cgi?id=3445
   5666 
   5667 	With this change and the matching WebKit change we'll still stop loading the moment you click
   5668 	a download link, but the unload event and detaching of event handlers will not happen early any more.
   5669 	
   5670         * WebView.subproj/WebDataSource.m:
   5671         (-[WebDataSource _stopLoadingInternal]): call stopLoading on bridge instead of closeURL.
   5672         * WebView.subproj/WebFrame.m:
   5673         (-[WebFrame _transitionToCommitted:]): Revert previous attempt at fix.
   5674         (-[WebFrame _continueLoadRequestAfterNavigationPolicy:formState:]): ditto
   5675         (-[WebFrame stopLoading]): ditto
   5676 
   5677 2005-06-13  Chris Petersen  <cpetersen (a] apple.com>
   5678 
   5679         Changes by Darin.
   5680         Reviewed by me.
   5681 
   5682         - fixed problems building deployment due to recent init change
   5683 
   5684         * WebView.subproj/WebArchive.m: (-[WebArchive initWithCoder:]):
   5685         Put the [super init] call and check for nil outside the exception handler.
   5686         * WebView.subproj/WebResource.m: (-[WebResource initWithCoder:]): Ditto.
   5687 
   5688 2005-06-12  Darin Adler  <darin (a] apple.com>
   5689 
   5690         Reviewed by Maciej.
   5691 
   5692         - fixed <rdar://problem/4141569> REGRESSION (412+): printing fails on any page with images, and for standalone images
   5693           also <http://bugs.webkit.org/show_bug.cgi?id=3318>
   5694 
   5695         * WebCoreSupport.subproj/WebImageData.m: Got rid of use of tabs instead of spaces throughout the file.
   5696         (-[WebImageData _checkSolidColor:]): Wrap use of NSGraphicsContext with an autorelease pool.
   5697         (-[WebImageData _fillSolidColorInRect:compositeOperation:context:]): Ditto.
   5698         (-[WebImageData tileInRect:fromPoint:context:]): Ditto.
   5699         (-[WebImageData _PDFDrawFromRect:toRect:operation:alpha:flipped:context:]): Ditto.
   5700 
   5701 2005-06-12  Darin Adler  <darin (a] apple.com>
   5702 
   5703         Changes by Nick Zitzmann.
   5704         Reviewed by me.
   5705 
   5706         - fixed init methods that don't handle return values from the init methods they call
   5707 
   5708         * WebView.subproj/WebArchive.m:
   5709         (-[WebArchive init]): Use value returned by init, check it for nil too.
   5710         (-[WebArchive initWithMainResource:subresources:subframeArchives:]): Ditto.
   5711         (-[WebArchive _initWithPropertyList:]): Ditto.
   5712         (-[WebArchive initWithCoder:]): Ditto.
   5713         * WebView.subproj/WebClipView.m:
   5714         (-[WebClipView initWithFrame:]): Ditto.
   5715         * WebView.subproj/WebDebugDOMNode.m:
   5716         (-[WebDebugDOMNode initWithName:value:source:children:]): Ditto.
   5717         * WebView.subproj/WebFrame.m:
   5718         (-[WebFormState initWithForm:values:sourceFrame:]): Ditto.
   5719         (-[WebFrame initWithName:webFrameView:webView:]): Ditto.
   5720         * WebView.subproj/WebFrameView.m:
   5721         (-[WebFrameView initWithFrame:]): Ditto.
   5722         * WebView.subproj/WebHTMLRepresentation.m:
   5723         (-[WebHTMLRepresentation init]): Ditto.
   5724         * WebView.subproj/WebHTMLView.m:
   5725         (-[WebHTMLView initWithFrame:]): Ditto.
   5726         (-[WebTextCompleteController initWithHTMLView:]): Ditto.
   5727         * WebView.subproj/WebImageView.m:
   5728         (-[WebImageView initWithFrame:]): Ditto.
   5729         * WebView.subproj/WebPreferences.m:
   5730         (-[WebPreferences initWithIdentifier:]): Ditto.
   5731         * WebView.subproj/WebRenderNode.m:
   5732         (-[WebRenderNode initWithName:position:rect:view:children:]): Ditto.
   5733         * WebView.subproj/WebResource.m:
   5734         (-[WebResource init]): Ditto.
   5735         (-[WebResource initWithCoder:]): Ditto.
   5736         * WebView.subproj/WebView.m:
   5737         (-[WebViewPrivate init]): Call super init.
   5738         (-[_WebSafeForwarder initWithTarget:defaultTarget:templateClass:]): Use value returned by init, check it for nil too.
   5739         (-[WebView initWithFrame:]): Ditto.
   5740 
   5741 2005-06-12  Maciej Stachowiak  <mjs (a] apple.com>
   5742 
   5743         Reviewed by Chris Blumenberg.
   5744 
   5745 	- fixed <rdar://problem/4142247> REGRESSION: List to browse widgets at Apple website failed. Closing tab afterwards caused Safari crash
   5746 	http://bugs.webkit.org/show_bug.cgi?id=3445
   5747 	
   5748         * WebView.subproj/WebFrame.m:
   5749         (-[WebFrame _transitionToCommitted:]): Stop loading the non-provisional data
   5750 	source before swapping in the provisional.
   5751         (-[WebFrame _continueLoadRequestAfterNavigationPolicy:formState:]): Stop only
   5752 	the provisional load here, we would not want to stop loading if this navigation
   5753 	later turns into a download or is cancelled before being committed.
   5754         (-[WebFrame stopLoading]): Factored a bit.
   5755         (-[WebFrame _cancelProvisionalLoad]): New method to stop only provisional load,
   5756 	and cancel any pending policy deicions.
   5757         (-[WebFrame _stopNonProvisionalLoadOnly]): New mthod that stops only the main
   5758 	load.
   5759 
   5760 2005-06-10  John Sullivan  <sullivan (a] apple.com>
   5761 
   5762         reviewed by Dave Harrison (first & second drafts) and Darin Adler (third draft)
   5763 
   5764         - WebKit part of fix for 
   5765         <rdar://problem/4145214> REGRESSION (412+): Can't drag URLs from the location bar
   5766 
   5767         * Misc.subproj/WebNSPasteboardExtras.m:
   5768         (+[NSPasteboard initialize]):
   5769         Reinstate variation of old code that uses CreatePasteboardFlavorTypeName to set up our new pasteboard types.
   5770         The newfangled way didn't work.
   5771 
   5772 2005-06-07  Darin Adler  <darin (a] apple.com>
   5773 
   5774         Change by Mark Rowe <opendarwin.org (a] bdash.net.nz>.
   5775         Reviewed by me.
   5776 
   5777         - fixed the WebKit half of build failure with spaces in the path
   5778           http://bugs.webkit.org/show_bug.cgi?id=3291
   5779 
   5780         * WebKit.pbproj/project.pbxproj: Quote DERIVED_FILE_DIR when it is substituted
   5781         into FRAMEWORK_SEARCH_PATHS, and SYMROOT when into HEADER_SEARCH_PATHS.
   5782 
   5783 2005-06-06  Darin Adler  <darin (a] apple.com>
   5784 
   5785         * Info.plist: Bumped version to 412+. For some reason it was set to 312.1!
   5786 
   5787 2005-06-05  Darin Adler  <darin (a] apple.com>
   5788 
   5789         Reviewed by Hyatt.
   5790 
   5791         - fixed build that I broke with the license change (some includes of WebException were still around)
   5792 
   5793         * WebKit.pbproj/project.pbxproj: Removed references to WebException.h/m.
   5794         * WebView.subproj/WebDataSource.m: Removed include of WebException.h.
   5795         * WebView.subproj/WebHTMLView.m: Ditto.
   5796         * WebView.subproj/WebView.m: Ditto.
   5797 
   5798         - fixed build under gcc 4.0 (some code moved here from Foundation had warnings)
   5799 
   5800         * Misc.subproj/WebNSDataExtras.m:
   5801         (-[NSString _web_capitalizeRFC822HeaderFieldName]): Use char instead of UInt8.
   5802         (-[NSData _webkit_guessedMIMEType]):  Use char instead of UInt8, and take out now-
   5803         unneeded type casts.
   5804 
   5805 2005-06-05  Darin Adler  <darin (a] apple.com>
   5806 
   5807         - added appropriate license headers to most files and updated copyright to reflect publication dates
   5808 
   5809         * LICENSE: Added.
   5810         * <lots of files>: Added license header.
   5811 
   5812         * WebKit.pbproj/project.pbxproj: Removed references to NP_objc.h.
   5813 
   5814         * API-Issues.rtf: Removed.
   5815         * Misc.subproj/WebException.h: Removed.
   5816         * Misc.subproj/WebException.m: Removed.
   5817         * Plugins.subproj/NP_objc.h: Removed.
   5818 
   5819 2005-06-01  Darin Adler  <darin (a] apple.com>
   5820 
   5821         Reviewed by John Sullivan.
   5822 
   5823         - WebKit part of fix for <rdar://problem/3166090> add IE JavaScript extension window.showModalDialog
   5824 
   5825         * WebCoreSupport.subproj/WebBridge.m:
   5826         (-[WebBridge createModalDialogWithURL:]): Added. Calls the UI delegate, falling back to the generic
   5827         "create WebView" method.
   5828         (-[WebBridge canRunModal]): Added. Checks the UI delegate to see if it implements runModal.
   5829         (-[WebBridge canRunModalNow]): Added. Checks the "inConnectionCallback" field so we can prevent
   5830         deadlock since we can't do any I/O while inside a connection callback until this aspect of NSURLConnection
   5831         is changed.
   5832         (-[WebBridge runModal]): Added. Sets "defersCallbacks" on all other web views in the group, then
   5833         calls runModal on the UI delegate.
   5834 
   5835         * WebView.subproj/WebBaseResourceHandleDelegate.h: Added inConnectionCallback class method.
   5836         * WebView.subproj/WebBaseResourceHandleDelegate.m:
   5837         (-[WebBaseResourceHandleDelegate connection:willSendRequest:redirectResponse:]): Bump count and then
   5838         decrement count so we can tell if we are in a callback.
   5839         (-[WebBaseResourceHandleDelegate connection:didReceiveAuthenticationChallenge:]): Ditto.
   5840         (-[WebBaseResourceHandleDelegate connection:didCancelAuthenticationChallenge:]): Ditto.
   5841         (-[WebBaseResourceHandleDelegate connection:didReceiveResponse:]): Ditto.
   5842         (-[WebBaseResourceHandleDelegate connection:didReceiveData:lengthReceived:]): Ditto.
   5843         (-[WebBaseResourceHandleDelegate connection:willStopBufferingData:]): Ditto.
   5844         (-[WebBaseResourceHandleDelegate connectionDidFinishLoading:]): Ditto.
   5845         (-[WebBaseResourceHandleDelegate connection:didFailWithError:]): Ditto.
   5846         (-[WebBaseResourceHandleDelegate connection:willCacheResponse:]): Ditto.
   5847         (+[WebBaseResourceHandleDelegate inConnectionCallback]): Added. Return YES if count is not 0.
   5848 
   5849         * WebView.subproj/WebMainResourceClient.m:
   5850         (-[WebMainResourceClient receivedError:]): Changed to use the method without the connection: parameter
   5851         in the base class, since we no longer are overriding the connection: version.
   5852         (-[WebMainResourceClient willSendRequest:redirectResponse:]): Change to override the version without
   5853         the connection prefix/parameter; now only the base class overrides the actual connection delegate methods.
   5854         (-[WebMainResourceClient continueAfterContentPolicy:response:]): Ditto.
   5855         (-[WebMainResourceClient didReceiveResponse:]): Ditto.
   5856         (-[WebMainResourceClient didReceiveData:lengthReceived:]): Ditto.
   5857         (-[WebMainResourceClient didFinishLoading]): Ditto.
   5858         (-[WebMainResourceClient didFailWithError:]): Ditto.
   5859         (-[WebMainResourceClient loadWithRequestNow:]): Call the method without the connection parameter.
   5860 
   5861         * WebView.subproj/WebUIDelegatePrivate.h: Added new SPI here that WebBrowser implements.
   5862 
   5863 2005-05-26  Darin Adler  <darin (a] apple.com>
   5864 
   5865         Reviewed by John.
   5866 
   5867         - fix build failure from when I removed WebCoreUnicode
   5868 
   5869         * WebCoreSupport.subproj/WebTextRenderer.m: Removed import of WebUnicode.h that I missed.
   5870         (-[WebTextRenderer _convertUnicodeCharacters:length:toGlyphs:]): Switch from our own macros
   5871         to the ICU macros for surrogate pairs.
   5872         (widthForNextCharacter): Ditto.
   5873 
   5874 2005-05-26  David Harrison  <harrison (a] apple.com>
   5875 
   5876         <rdar://problem/4120518> Mail: control-T in an empty message crashes mail
   5877 
   5878         * WebCoreSupport.subproj/WebBridge.m:
   5879         (-[WebBridge issueTransposeCommand]):
   5880         New, to support transpose in JS.
   5881 
   5882 2005-05-26  Darin Adler  <darin (a] apple.com>
   5883 
   5884         Reviewed by Richard and Dave Harrison.
   5885 
   5886         - eliminate WebCoreUnicode and use ICU directly instead
   5887 
   5888         * Misc.subproj/WebKitNSStringExtras.m: (canUseFastRenderer): Use u_charDirection directly.
   5889         * WebCoreSupport.subproj/WebTextRenderer.m: Removed import of <WebCore/WebCoreUnicode.h>.
   5890         * WebView.subproj/WebHTMLView.m: (+[WebHTMLView initialize]): Removed call to WebKitInitializeUnicode.
   5891 
   5892         * Misc.subproj/WebUnicode.h: Removed.
   5893         * Misc.subproj/WebUnicode.m: Removed.
   5894         * Misc.subproj/WebUnicodeTables.m: Removed.
   5895 
   5896         * WebKit.pbproj/project.pbxproj: Removed files.
   5897 
   5898 2005-05-24  Richard Williamson   <rjw (a] apple.com>
   5899 
   5900 	Fixed <rdar://problem/4097289> -[WebView elementAtPoint:] failing when WebView is nested and offset
   5901 
   5902 	Code to determine the correct frame under the window point was
   5903 	converting the point incorrectly.
   5904 
   5905         Reviewed by Chris.
   5906 
   5907         * WebView.subproj/WebView.m:
   5908         (-[WebView _frameViewAtWindowPoint:]):
   5909 
   5910 2005-05-23  John Sullivan  <sullivan (a] apple.com>
   5911 
   5912         Reviewed by Kevin.
   5913         
   5914         - WebKit part of <rdar://problem/4125783> WebKit needs a way to control whether textareas are resizable
   5915 
   5916         * WebView.subproj/WebPreferencesPrivate.h:
   5917         added private-for-now getter and setter for new preference
   5918         * WebView.subproj/WebPreferenceKeysPrivate.h:
   5919         added private preference key controlling whether textareas are resizable
   5920         * WebView.subproj/WebPreferences.m:
   5921         (+[WebPreferences initialize]):
   5922         initial value of new preference is NO, so other clients' behavior doesn't change
   5923         (-[WebPreferences textAreasAreResizable]):
   5924         new getter
   5925         (-[WebPreferences setTextAreasAreResizable:]):
   5926         new setter
   5927         
   5928         * WebView.subproj/WebView.m:
   5929         (-[WebView _updateWebCoreSettingsFromPreferences:]):
   5930         update this new setting in WebCore
   5931 
   5932         * English.lproj/StringsNotToBeLocalized.txt:
   5933         updated for these changes
   5934 
   5935 2005-05-23  Chris Blumenberg  <cblu (a] apple.com>
   5936 
   5937 	Changed type for identifier parameter in WebResourceLoadDelegate-related calls to id from NSString.
   5938 
   5939         Reviewed by kevin.
   5940 
   5941         * WebCoreSupport.subproj/WebBridge.m:
   5942         (-[WebBridge objectLoadedFromCacheWithURL:response:data:]):
   5943         (-[WebBridge syncLoadResourceWithURL:customHeaders:postData:finalURL:responseHeaders:statusCode:]):
   5944         * WebView.subproj/WebFrame.m:
   5945         (-[WebFrame _opened]):
   5946         (-[WebFrame _requestFromDelegateForRequest:identifier:error:]):
   5947         (-[WebFrame _sendRemainingDelegateMessagesWithIdentifier:response:length:error:]):
   5948         (-[WebFrame _saveResourceAndSendRemainingDelegateMessagesWithRequest:identifier:response:data:error:]):
   5949         * WebView.subproj/WebFrameInternal.h:
   5950 
   5951 2005-05-20  Chris Blumenberg  <cblu (a] apple.com>
   5952 
   5953 	Fixed: <rdar://problem/4098786> sync. XMLHttpRequest works w/o AllowNetworkAccess key because load delegate is not consulted
   5954 
   5955 	Synchronous loads did not cause the willSendRequest method on the resource load delegate to be called. This is the method that Dashboard uses to enforce AllowNetworkAccess and this must be called to avoid exploits.
   5956 
   5957         Reviewed by sullivan.
   5958 
   5959         * WebCoreSupport.subproj/WebBridge.m:
   5960         (-[WebBridge objectLoadedFromCacheWithURL:response:data:]): call [WebFrame _requestFromDelegateForRequest:identifier:error:] then 
   5961 	[WebFrame _saveResourceAndSendRemainingDelegateMessagesWithRequest:identifier:response:data:error:] so synthetic resource load delegate 
   5962 	methods are called and the data is saved as a WebResource for resources in the WebCore cache.
   5963 
   5964         (-[WebBridge syncLoadResourceWithURL:customHeaders:postData:finalURL:responseHeaders:statusCode:]): call [WebFrame _requestFromDelegateForRequest:identifier:error:],
   5965 	respect its result, do the load and then call [WebFrame _saveResourceAndSendRemainingDelegateMessagesWithRequest:identifier:response:data:error:] 
   5966 	for synchronous loads
   5967 
   5968         * WebView.subproj/WebFrame.m:
   5969         (-[WebFrame _opened]): call [WebFrame _requestFromDelegateForRequest:identifier:error:] then 
   5970 	[WebFrame _sendRemainingDelegateMessagesWithIdentifier:response:length:error:] so synthetic resource load delegate methods are called 
   5971 	for subresrources in the page cache
   5972         
   5973 	(-[WebFrame _requestFromDelegateForRequest:identifier:error:]): new, was part of the removed _sendResourceLoadDelegateMessagesForURL:::
   5974 	This method calls identifierForInitialRequest and willSendRequest.
   5975 
   5976         (-[WebFrame _sendRemainingDelegateMessagesWithIdentifier:response:length:error:]): new, was part of the removed _sendResourceLoadDelegateMessagesForURL:::
   5977 	This method calls the remaining resource load delegate messages.
   5978 
   5979         (-[WebFrame _saveResourceAndSendRemainingDelegateMessagesWithRequest:identifier:response:data:error:]): new, saves the resource and calls
   5980 	[WebFrame _sendRemainingDelegateMessagesWithIdentifier:response:length:error:]
   5981 
   5982         * WebView.subproj/WebFrameInternal.h:
   5983 
   5984 2005-05-17  Chris Blumenberg  <cblu (a] apple.com>
   5985 	
   5986 	Fixed: <rdar://problem/4119282> clicking a link in an RTF file opens the link with NSWorkspace without the usual security checks or WebView delegate control
   5987 
   5988         Reviewed by mjs.
   5989 
   5990         * WebCoreSupport.subproj/WebBridge.m:
   5991         (-[WebBridge loadURL:referrer:reload:userGesture:target:triggeringEvent:form:formValues:]): pass the passed referrer to canLoadURL::: not [self referrer]
   5992         (-[WebBridge postWithURL:referrer:target:data:contentType:triggeringEvent:form:formValues:]): ditto
   5993         * WebView.subproj/WebTextView.m:
   5994         (-[WebTextView clickedOnLink:atIndex:]): call the loadURL bridge method so that security checks are made, command/option clicks work, policy delegate is consulted etc.
   5995 
   5996 2005-05-17  Chris Blumenberg  <cblu (a] apple.com>
   5997 
   5998 	Fixed: <rdar://problem/4120255> web archives on remote servers can be viewed directly (with major security issues); should download instead
   5999 
   6000         Reviewed by mjs.
   6001 
   6002         * WebView.subproj/WebBaseResourceHandleDelegate.h:
   6003         * WebView.subproj/WebMainResourceClient.m:
   6004         (-[WebMainResourceClient continueAfterContentPolicy:response:]): if the WebKit client has chosen to "use" a remote web archive, stop the load with an error
   6005 
   6006 2005-05-16  Darin Adler  <darin (a] apple.com>
   6007 
   6008         - attempt to get things building under "Saffron" development tools
   6009 
   6010         * WebKit.pbproj/project.pbxproj: Use BUILT_PRODUCTS_DIR instead of SYMROOT.
   6011 
   6012 2005-05-13  John Sullivan  <sullivan (a] apple.com>
   6013 
   6014         Reviewed by Kevin.
   6015         
   6016         - fixed <rdar://problem/4093306> Safari crashes if Esc key is held down during series 
   6017         of authentication sheets
   6018 
   6019         * Panels.subproj/WebAuthenticationPanel.m:
   6020         (-[WebAuthenticationPanel cancel:]):
   6021         retain and autorelease self. This is a workaround for an AppKit key-handling issue, which I wrote up as:
   6022         <rdar://problem/4118422> Key-down events can be sent to a closed window if a key is kept pressed down
   6023 
   6024 2005-05-12  John Sullivan  <sullivan (a] apple.com>
   6025 
   6026         Reviewed by Kevin.
   6027 
   6028         - rolled in changes from experimental-ui-branch to support resizable textareas
   6029         and find-as-you-type and confirming unsubmitted form changes. The files/functions 
   6030         modified are listed just below. After that are the ChangeLog comments from the branch.
   6031 
   6032         * WebCoreSupport.subproj/WebBridge.m:
   6033         (-[WebBridge textDidChange:]):
   6034         * WebView.subproj/WebFormDelegate.h:
   6035         * WebView.subproj/WebFormDelegate.m:
   6036         (-[WebFormDelegate textDidChange:inFrame:]):
   6037         * WebView.subproj/WebHTMLView.m:
   6038         (-[WebHTMLView maintainsInactiveSelection]):
   6039         (-[WebHTMLView searchFor:direction:caseSensitive:wrap:]):
   6040         (-[WebHTMLView _searchFor:direction:caseSensitive:wrap:findInSelection:]):
   6041         * WebView.subproj/WebView.m:
   6042         (-[WebView _searchFor:direction:caseSensitive:wrap:findInSelection:]):
   6043         (-[WebView searchFor:direction:caseSensitive:wrap:]):
   6044         (-[WebView makeTextStandardSize:]):
   6045         (-[WebView maintainsInactiveSelection]):
   6046         * WebView.subproj/WebViewPrivate.h:
   6047         
   6048         2005-04-18  John Sullivan  <sullivan (a] apple.com>
   6049 
   6050                 WebKit support for notifying a form delegate when a
   6051                 textarea's contents have changed (as opposed to a 
   6052                 textfield, which was already handled).
   6053 
   6054                 Reviewed by Maciej.
   6055 
   6056                 * WebView.subproj/WebFormDelegate.h:
   6057                 * WebView.subproj/WebFormDelegate.m:
   6058                 (-[WebFormDelegate textDidChange:inFrame:]):
   6059                 new form delegate method
   6060 
   6061                 * WebCoreSupport.subproj/WebBridge.m:
   6062                 (-[WebBridge textDidChange:]):
   6063                 new method, calls through to form delegate
   6064                 
   6065         2005-04-11  John Sullivan  <sullivan (a] apple.com>
   6066 
   6067                 Fixed inability to wrap around in Find in Page 
   6068 
   6069                 * WebView.subproj/WebView.m:
   6070                 (-[WebView _searchFor:direction:caseSensitive:wrap:findInSelection:]):
   6071                 changed wrapFlag from NO to YES on two lines (copy/paste error)
   6072 
   6073         2005-04-07  John Sullivan  <sullivan (a] apple.com>
   6074 
   6075                 WebKit support for find-as-you-type. Needed an additional parameter on
   6076                 a method from WebDocumentSearching protocol. Since that's a public protocol, 
   6077                 I couldn't just add the parameter. For now I hacked it with an undeclared
   6078                 internal method that's discovered via respondsToSelector. Probably the right
   6079                 long-term approach is to deprecate the WebDocumentSearching protocol and introduce
   6080                 a replacement that has a more flexible set of parameters for possible future
   6081                 expansion.
   6082 
   6083                 Reviewed by Dave Hyatt.
   6084 
   6085                 * WebView.subproj/WebHTMLView.m:
   6086                 (-[WebHTMLView searchFor:direction:caseSensitive:wrap:]):
   6087                 now calls new one-more-parameter version passing NO for new parameter to match old behavior
   6088                 (-[WebHTMLView _searchFor:direction:caseSensitive:wrap:findInSelection:]):
   6089                 new method, adds findInSelection parameter and passes it through to bridge
   6090                  
   6091                 * WebView.subproj/WebView.m:
   6092                 (-[WebView searchFor:direction:caseSensitive:wrap:]):
   6093                 now calls new one-more-parameter version passing NO for new parameter to match old behavior
   6094                 (-[WebView _searchFor:direction:caseSensitive:wrap:findInSelection:]):
   6095                 new method, adds findInSelection parameter and passes it through
   6096 
   6097         2005-04-07  John Sullivan  <sullivan (a] apple.com>
   6098 
   6099                 WebKit support to allow clients to control whether the selection is still
   6100                 drawn when the first responder is elsewhere. Formerly this was hardwired
   6101                 to be true only when -[WebView isEditable] was true.
   6102 
   6103                 Reviewed by Darin.
   6104 
   6105                 * WebView.subproj/WebHTMLView.m:
   6106                 (-[WebHTMLView maintainsInactiveSelection]):
   6107                 check [WebView maintainsInactiveSelection] rather than just [WebView isEditable]
   6108                 
   6109                 * WebView.subproj/WebViewPrivate.h:
   6110                 * WebView.subproj/WebView.m:
   6111                 (-[WebView maintainsInactiveSelection]):
   6112                 new method for clients to override, returns -[self isEditable]
   6113         
   6114 
   6115 2005-05-10  John Sullivan  <sullivan (a] apple.com>
   6116 
   6117         Reviewed by Kevin.
   6118         
   6119         - WebKit support for <rdar://problem/3795701> Menu item/keyboard shortcut to 
   6120         restore text zoom to normal
   6121 
   6122         * WebView.subproj/WebView.m:
   6123         (-[WebView validateUserInterfaceItem:]):
   6124         validate makeTextStandardSize by calling canMakeTextStandardSize
   6125         (-[WebView canMakeTextStandardSize]):
   6126         new method, returns YES unless text size multiplier is currently 1
   6127         (-[WebView makeTextStandardSize:]):
   6128         new method, sets text size multiplier to 1
   6129         
   6130         * WebView.subproj/WebViewPrivate.h:
   6131         add makeTextStandardSize: and canMakeTextStandardSize to pending public category
   6132 
   6133 2005-05-10  John Sullivan  <sullivan (a] apple.com>
   6134 
   6135         Reviewed by Chris.
   6136         
   6137         - fixed <rdar://problem/4067981> Mail places RTF flavor before RTFD flavor when dragging 
   6138         mixed image/text content.
   6139 
   6140         * WebView.subproj/WebHTMLView.m:
   6141         (+[WebHTMLView _selectionPasteboardTypes]):
   6142         put RTFD type before RTF type in array of types to declare
   6143 
   6144 2005-05-09  Chris Blumenberg  <cblu (a] apple.com>
   6145 
   6146 	Turned assertion into error message to prevent crash when encountering this bug:
   6147 	<rdar://problem/4067625> connection:willCacheResponse: is called inside of [NSURLConnection initWithRequest:delegate:]
   6148 	
   6149         * WebView.subproj/WebBaseResourceHandleDelegate.h:
   6150         * WebView.subproj/WebBaseResourceHandleDelegate.m:
   6151         (-[WebBaseResourceHandleDelegate loadWithRequest:]): set flag to track when we're initializing the connection
   6152         (-[WebBaseResourceHandleDelegate connection:willCacheResponse:]): log error
   6153 
   6154 2005-05-09  Darin Adler  <darin (a] apple.com>
   6155 
   6156         * Makefile.am: Don't set up PBXIntermediatesDirectory explicitly;
   6157         Not needed to make builds work, spews undesirable error messages too.
   6158 
   6159 2005-05-06  Darin Adler  <darin (a] apple.com>
   6160 
   6161         Reviewed by Maciej.
   6162 
   6163         - make building multiple trees with make work better
   6164 
   6165         * Makefile.am: Set up Xcode build directory before invoking xcodebuild.
   6166 
   6167 2005-05-04  Darin Adler  <darin (a] apple.com>
   6168 
   6169         Reviewed by Dave Hyatt.
   6170 
   6171         - fixed layout tests
   6172 
   6173         * WebKit.pbproj/project.pbxproj: Set deployment target to 10.3 in the build styles.
   6174         When built without a build style (by Apple B&I) we want to get the target from the
   6175         environment. But when built with a build style (by Safari engineers and others), we want
   6176         to use 10.3. Because our deployment target was not set, we ran into this bug:
   6177 
   6178             <rdar://problem/4108717> CTFontGetGlyphWithName doesn't work with some strings
   6179 
   6180         * Makefile.am: Took out extra parameters that make command-line building different from
   6181         Xcode building. Now that this is fixed, you should not get a full rebuild if you switch
   6182         from command line to Xcode or back.
   6183 
   6184 2005-05-04  Chris Blumenberg  <cblu (a] apple.com>
   6185 
   6186 	Fixed: 
   6187 	<rdar://problem/4078417> REGRESSION (125-412): MLB gameday page doesn't update (Flash)
   6188 	<rdar://problem/4072280> XMLHttpRequest calls onReadyStateChange callback with bogus status value
   6189         
   6190 	Reviewed by john.
   6191 
   6192 	Our WebKit-level caching of subresources "dumbed-down" information held in NSURLResponse. This caused some loads to lack response headers and thus disabling cache directives. Status codes were also not retained and this caused XMLHttpRequest to fail frequently. The fix is to have WebResource retain the NSURLResponse and to use the NSURLResponse when we decide to load from WebResources.
   6193 
   6194         * WebCoreSupport.subproj/WebBridge.m:
   6195         (-[WebBridge objectLoadedFromCacheWithURL:response:data:]): call new [WebResource _initWithData:URL:response:]
   6196         * WebView.subproj/WebBaseResourceHandleDelegate.m:
   6197         (-[WebBaseResourceHandleDelegate _canUseResourceWithResponse:]): new, checks response cache directives
   6198         (-[WebBaseResourceHandleDelegate loadWithRequest:]): call _canUseResourceWithResponse:
   6199         (-[WebBaseResourceHandleDelegate saveResource]): call new [WebResource _initWithData:URL:response:]
   6200         * WebView.subproj/WebResource.m:
   6201         (-[WebResourcePrivate dealloc]):
   6202         (-[WebResource initWithData:URL:MIMEType:textEncodingName:frameName:]): call renamed _initWithData:URL:MIMEType:textEncodingName:frameName:response:copyData:
   6203         (-[WebResource initWithCoder:]): decode the NSURLReponse
   6204         (-[WebResource encodeWithCoder:]): encode the NSURLReponse
   6205         (-[WebResource _initWithData:URL:MIMEType:textEncodingName:frameName:response:copyData:]): take the NSURLReponse
   6206         (-[WebResource _initWithData:URL:response:]): new
   6207         (-[WebResource _initWithPropertyList:]): decode the NSURLReponse
   6208         (-[WebResource _propertyListRepresentation]): encode the NSURLReponse
   6209         (-[WebResource _response]): return ivar if we have one
   6210         * WebView.subproj/WebResourcePrivate.h:
   6211 
   6212 2005-05-03  David Hyatt  <hyatt (a] apple.com>
   6213 
   6214 	Fix object element support so that fallback content works.  With this change Safari passes the Acid2 test.
   6215 	
   6216         Reviewed by Maciej
   6217 
   6218         * WebCoreSupport.subproj/WebBridge.m:
   6219         (-[WebBridge determineObjectFromMIMEType:URL:]):
   6220         * WebView.subproj/WebDataSource.m:
   6221         (-[WebDataSource _receivedMainResourceError:complete:]):
   6222         * WebView.subproj/WebMainResourceClient.m:
   6223         (-[WebMainResourceClient continueAfterContentPolicy:response:]):
   6224 
   6225 2005-05-03  Darin Adler  <darin (a] apple.com>
   6226 
   6227         * WebView.subproj/WebUIDelegate.h: Fixed incorrect comment.
   6228 
   6229 2005-05-01  Darin Adler  <darin (a] apple.com>
   6230 
   6231         - move to Xcode native targets and stop checking in generated files
   6232 
   6233         * WebKit.pbproj/project.pbxproj: Updated to use native targets and generate all the generated
   6234         files, so we don't have to check them in any more.
   6235         * Info.plist: Added. Native targets use a separate file for this.
   6236 
   6237         * Plugins.subproj/npapi.m: Fixed import statement to get npapi.h from <WebKit/> rather than current directory.
   6238 
   6239         * Makefile.am: Removed timestamp cleaning rules since we don't use it any more.
   6240 
   6241         * .cvsignore: Removed various timestamp files.
   6242 
   6243         * DOM.subproj/DOM-compat.h: Removed.
   6244         * DOM.subproj/DOM.h: Removed.
   6245         * DOM.subproj/DOMCSS.h: Removed.
   6246         * DOM.subproj/DOMCore.h: Removed.
   6247         * DOM.subproj/DOMEvents.h: Removed.
   6248         * DOM.subproj/DOMExtensions.h: Removed.
   6249         * DOM.subproj/DOMHTML.h: Removed.
   6250         * DOM.subproj/DOMPrivate.h: Removed.
   6251         * DOM.subproj/DOMRange.h: Removed.
   6252         * DOM.subproj/DOMStylesheets.h: Removed.
   6253         * DOM.subproj/DOMTraversal.h: Removed.
   6254         * DOM.subproj/DOMViews.h: Removed.
   6255         * Plugins.subproj/WebScriptObject.h: Removed.
   6256         * Plugins.subproj/npapi.h: Removed.
   6257         * Plugins.subproj/npruntime.h: Removed.
   6258         * copy-webcore-files-to-webkit: Removed.
   6259         * embed-frameworks.sh: Removed.
   6260         * force-clean-timestamp: Removed.
   6261 
   6262 2005-04-28  Darin Adler  <darin (a] apple.com>
   6263 
   6264         Reviewed by Maciej.
   6265 
   6266         - fixed problems preventing us from compiling with gcc 4.0
   6267 
   6268         * WebKit.pbproj/project.pbxproj: Removed -fobjc-exceptions because I can't figure out an easy
   6269         way to pass it only when compiling Objective-C/C++. Removed -Wmissing-prototypes from
   6270         WARNING_CPLUSPLUSFLAGS since it's now a C-only warning.
   6271 
   6272         * History.subproj/WebHistoryItem.m: (-[WebHistoryItem pageCache]): Changed return type
   6273         to match the declaration.
   6274         * WebCoreSupport.subproj/WebBridge.m: (-[WebBridge _retrieveKeyboardUIModeFromPreferences:]):
   6275         Fixed a BOOL that should have been a Boolean.
   6276         * WebCoreSupport.subproj/WebTextRenderer.m: Removed redundant copy of ROUND_TO_INT, also in
   6277         a WebCore header.
   6278         (-[WebTextRenderer _computeWidthForSpace]): Had to add cast because of difference in type of
   6279         ROUND_TO_INT vs. CEIL_TO_INT.
   6280         (pathFromFont): Added a cast to convert UInt8 * to char *.
   6281         * WebView.subproj/WebFrameView.m:
   6282         (-[WebFrameView _setDocumentView:]): Fixed parameter type to match the declaration.
   6283         (-[WebFrameView documentView]): Fixed return type to match the declaration.
   6284         * WebView.subproj/WebHTMLView.m:
   6285         (-[WebHTMLView _startDraggingImage:at:operation:event:sourceIsDHTML:DHTMLWroteData:]):
   6286         Initialized a variable to quiet an incorrect gcc 4.0 uninitialized variable warning.
   6287         (-[WebHTMLView deleteToMark:]): Switched from @try style to NS_DURING style of exception handler
   6288         because we can't pass -fobjc-exceptions just to Objective-C at the moment (see above).
   6289         (-[WebHTMLView selectToMark:]): Ditto.
   6290         (-[WebHTMLView swapWithMark:]): Ditto.
   6291 
   6292 2005-04-27  John Sullivan  <sullivan (a] apple.com>
   6293 
   6294         Reviewed by Dave Harrison.
   6295         
   6296         - fixed <rdar://problem/3547489> pop-up window blocking preference and 
   6297         menu item can easily get out of sync.
   6298 
   6299         * WebView.subproj/WebPreferences.m:
   6300         (-[WebPreferences _setStringValue:forKey:]):
   6301         save local value before setting value in NSUserDefaults, so clients reacting to NSUserDefaults
   6302         change notification but calling back on WebPreferences API will see the updated value.
   6303         (-[WebPreferences _setIntegerValue:forKey:]):
   6304         ditto
   6305         (-[WebPreferences _setBoolValue:forKey:]):
   6306         ditto
   6307 
   6308 2005-04-26  Richard Williamson   <rjw (a] apple.com>
   6309 
   6310 	Fixed <rdar://problem/4098713> Scripting API is incompatible with Mozilla
   6311 
   6312         Reviewed by Chris.
   6313 
   6314         * Plugins.subproj/npfunctions.h:
   6315         * Plugins.subproj/npruntime.h:
   6316 
   6317 2005-04-26  Darin Adler  <darin (a] apple.com>
   6318 
   6319         Reviewed by John.
   6320 
   6321         - fixed <rdar://problem/3655817> please add support for mouse wheel events and the onmousewheel handler
   6322 
   6323         * WebView.subproj/WebHTMLView.m: (-[WebHTMLView scrollWheel:]): Call sendScrollWheelEvent: method
   6324         instead of the old scrollOverflowWithScrollWheelEvent: (just a name change).
   6325 
   6326 2005-04-18  Darin Adler  <darin (a] apple.com>
   6327 
   6328         Reviewed by Hyatt.
   6329 
   6330         - fixed <rdar://problem/4092614> REGRESSION (Tiger): progressively loaded background images "scroll around" instead of just appearing
   6331 
   6332         * WebCoreSupport.subproj/WebImageData.m:
   6333         (-[WebImageData _imageSourceOptions]): Moved a global inside this function, since it's only used here.
   6334         (-[WebImageData _cacheImages:allImages:]): Fixed a sizeof that was getting the size of the wrong thing.
   6335         (-[WebImageData _isSizeAvailable]): Used calloc in a more consistent way.
   6336         (drawPattern): Removed an unneeded cast.
   6337         (-[WebImageData tileInRect:fromPoint:context:]): Here's the actual bug fix. Don't use the image size
   6338         when deciding whether the image needs to be tiled as a pattern nor when creating the pattern: in both
   6339         cases, use the tile size. The old way was wrong, and the new way works perfectly. Also removed uneeded
   6340         error message when the image is not yet loaded enough to create a CGImageRef for it -- it's fine to
   6341         draw nothing in that case.
   6342 
   6343 2005-04-14  John Sullivan  <sullivan (a] apple.com>
   6344 
   6345         Reviewed by Chris.
   6346 
   6347         * WebView.subproj/WebBaseResourceHandleDelegate.m:
   6348         (-[WebBaseResourceHandleDelegate connection:willCacheResponse:]):
   6349         Beefed up assertion that's been bugging me and Chris to include
   6350         the two troublemaking values.
   6351 
   6352 2005-04-05  David Hyatt  <hyatt (a] apple.com>
   6353 
   6354 	Fix for 4077106, wheel scroll amount smaller in Tiger.  All along wheeling should have been 4x the default
   6355 	line height of 10 (just as arrow keys did).  Scroll arrows should have done this too for scroll views (they did
   6356 	already for overflow sections).  This patch puts the override into the scrollview itself, and removes the
   6357 	multipliers in the private frame methods.
   6358 	
   6359         Reviewed by darin
   6360 
   6361         * WebView.subproj/WebFrameView.m:
   6362         (-[WebFrameView _verticalKeyboardScrollDistance]):
   6363         (-[WebFrameView initWithFrame:]):
   6364         (-[WebFrameView _horizontalKeyboardScrollDistance]):
   6365 
   6366 === WebKit-312.1 ===
   6367 
   6368 2005-03-31  Chris Blumenberg  <cblu (a] apple.com>
   6369 
   6370 	Fixed: <rdar://problem/4070729> REGRESSION (125-311, Panther-only?): Safari crashes while reloading "My eBay" page
   6371 
   6372         Reviewed by rjw.
   6373 
   6374         * WebView.subproj/WebBaseResourceHandleDelegate.m:
   6375         (-[WebBaseResourceHandleDelegate resourceData]): retain and autorelease resourceData since releaseResources (which releases resourceData) may be called before the caller of this method has an opporuntity to retain the returned data
   6376 
   6377 === Safari-412 ===
   6378 
   6379 === Safari-411 ===
   6380 
   6381 2005-03-23  Richard Williamson   <rjw (a] apple.com>
   6382 
   6383 	Use Patti Yeh's hack to determine the appropriate rectangle
   6384 	to place the "associated word" window.  
   6385 	If there is no marked text firstRectForCharacterRange: will
   6386 	use the selected range to determine the returned rectangle,
   6387 	ignoring the input range.  This is the fix from
   6388 	4029491 that I previously backed out.
   6389 
   6390         Reviewed by Vicki.
   6391 
   6392         * WebView.subproj/WebHTMLView.m:
   6393         (-[WebHTMLView firstRectForCharacterRange:]):
   6394 
   6395 2005-03-23  Richard Williamson   <rjw (a] apple.com>
   6396 
   6397 	Fixed <rdar://problem/4062490> REGRESSION (WebKit-408): no subresources reported in Activity window after going back at hrweb.apple.com
   6398 
   6399 	Stop collecting subresource responses after the document
   6400 	had loaded, not after it has been opened.
   6401 
   6402         Reviewed by Chris.
   6403 
   6404         * WebView.subproj/WebFrame.m:
   6405         (-[WebFrame _setState:]):
   6406         (-[WebFrame _opened]):
   6407 
   6408 2005-03-21  Maciej Stachowiak  <mjs (a] apple.com>
   6409 
   6410         Reviewed by Darin.
   6411 
   6412 	<rdar://problem/4051145> The QuickTime Cocoa plug-in needs an SPI that it can call to check for URL policy
   6413 
   6414         * Plugins.subproj/WebPluginContainerCheck.h: Added.
   6415         * Plugins.subproj/WebPluginContainerCheck.m: Added this new helper class to encapsulate
   6416 	an async plugin navigation check.
   6417         (+[WebPluginContainerCheck checkWithRequest:target:resultObject:selector:controller:]): Convenience allocator that gives autoreleased value.
   6418         (-[WebPluginContainerCheck initWithRequest:target:resultObject:selector:controller:]): Initializer.
   6419         (-[WebPluginContainerCheck finalize]): Just assert that we're done, it would
   6420 	be bad to deallocate this object while request is still outstanding.
   6421         (-[WebPluginContainerCheck dealloc]): Ditto.
   6422         (-[WebPluginContainerCheck _continueWithPolicy:]): Method to continue after async
   6423 	policy check.
   6424         (-[WebPluginContainerCheck _isDisallowedFileLoad]): Do "file: URL from remote content"
   6425 	check.
   6426         (-[WebPluginContainerCheck _actionInformationWithURL:]): Helper to make action
   6427 	dictionary.
   6428         (-[WebPluginContainerCheck _askPolicyDelegate]): Call policy delegate to let
   6429 	the app decide if this load is allowed.
   6430         (-[WebPluginContainerCheck start]): Start the check.
   6431         (-[WebPluginContainerCheck cancel]): Cancel a check in progress.
   6432         * Plugins.subproj/WebPluginController.h:
   6433         * Plugins.subproj/WebPluginController.m:
   6434         (-[WebPluginController initWithDocumentView:]): Initialize new _checksInProgress field.
   6435         (-[WebPluginController _webPluginContainerCancelCheckIfAllowedToLoadRequest:]): Implement
   6436 	this new SPI method.
   6437         (-[WebPluginController _cancelOutstandingChecks]): New helper to make sure to cancel
   6438 	all outstanding requests when destroying all plugins.
   6439         (-[WebPluginController destroyAllPlugins]): Call above helper.
   6440         (-[WebPluginController _webPluginContainerCheckIfAllowedToLoadRequest:inFrame:resultObject:selector:]): Implement this new plug-in SPI method.
   6441         (-[WebPluginController bridge]): New helper method.
   6442         (-[WebPluginController webView]): New helper method.
   6443         * WebView.subproj/WebPolicyDelegatePrivate.h: Add new navigation
   6444 	type WebNavigationTypePlugInRequest.
   6445         * WebKit.pbproj/project.pbxproj: Add new files.
   6446         * WebView.subproj/WebDefaultPolicyDelegate.m:
   6447         (-[WebDefaultPolicyDelegate webView:decidePolicyForNavigationAction:request:frame:decisionListener:]): Don't open externally on a plug-in request.
   6448 
   6449 2005-03-23  Richard Williamson   <rjw (a] apple.com>
   6450 
   6451 	Fixed <rdar://problem/4053515> REGRESSION (Mail): Kotoeri input method reconversion does not work in WebViews
   6452 
   6453 	We now use actual document NSRanges to represent both marked text
   6454 	ranges and selection ranges.
   6455 
   6456         Reviewed by Ken Kocienda.
   6457 
   6458         * WebView.subproj/WebHTMLView.m:
   6459         (-[WebHTMLView validAttributesForMarkedText]):
   6460         (-[WebHTMLView firstRectForCharacterRange:]):
   6461         (-[WebHTMLView selectedRange]):
   6462         (-[WebHTMLView markedRange]):
   6463         (-[WebHTMLView _selectMarkedText]):
   6464         (-[WebHTMLView setMarkedText:selectedRange:]):
   6465 
   6466 === Safari-410 ===
   6467 
   6468 2005-03-22  Darin Adler  <darin (a] apple.com>
   6469 
   6470         * English.lproj/StringsNotToBeLocalized.txt: Updated for recent changes.
   6471 
   6472 === Safari-409 ===
   6473 
   6474 2005-03-20  Maciej Stachowiak  <mjs (a] apple.com>
   6475 
   6476         Reviewed by Darin.
   6477 
   6478 	<rdar://problem/4060020> Add stub version of security SPI for QuickTime plug-in so QuickTime team has something to compile and link against
   6479         
   6480 	* Plugins.subproj/WebPluginContainerPrivate.h: Added.
   6481         * Plugins.subproj/WebPluginController.m:
   6482         (-[WebPluginController _webPluginContainerCheckIfAllowedToLoadRequest:inFrame:resultObject:selector:]):
   6483         (-[WebPluginController _webPluginContainerCancelCheckIfAllowedToLoadRequest:]):
   6484         * WebKit.pbproj/project.pbxproj:
   6485 
   6486 2005-03-19  David Harrison  <harrison (a] apple.com>
   6487 
   6488         Reviewed by Maciej.
   6489         
   6490         <rdar://problem/4059479> Misspelling underline does underline the whole word, could go farther to the right
   6491 
   6492         * WebCoreSupport.subproj/WebTextRenderer.m:
   6493         (-[WebTextRenderer misspellingLinePatternGapWidth]):
   6494         (-[WebTextRenderer drawLineForMisspelling:withWidth:]):
   6495         Consider that the last pixel in the underline dot pattern is transparent.
   6496 
   6497 2005-03-19  Darin Adler  <darin (a] apple.com>
   6498 
   6499         Reviewed by Maciej (a while back).
   6500 
   6501         - fixed <rdar://problem/4059323> local-file security check is allowing plug-in streams, but must not
   6502 
   6503         * Plugins.subproj/WebNetscapePluginStream.m:
   6504         (-[WebNetscapePluginStream initWithRequest:pluginPointer:notifyData:sendNotification:]):
   6505         Roll out change I made on 3-13. That change is needed for subresource, but not for plug-in streams.
   6506         For plug-in streams it's too risky, and leaves a serious security hole open.
   6507 
   6508 2005-03-19  Darin Adler  <darin (a] apple.com>
   6509 
   6510         Reviewed by Ken and John.
   6511 
   6512         - fixed <rdar://problem/4059123> REGRESSION (402-403): deleteWordForward: and deleteWordBackward: start deleting single characters after the first delete
   6513 
   6514         * WebView.subproj/WebHTMLView.m: (-[WebHTMLView _deleteWithDirection:granularity:killRing:isTypingAction:]):
   6515         Fixed backwards logic in here and added missing check. Set action to one of the two typing actions only
   6516         if isTypingAction is YES.
   6517 
   6518 2005-03-19  David Harrison  <harrison (a] apple.com>
   6519 
   6520         Reviewed by me (written by Patti Yeh).
   6521         
   6522         <rdar://problem/4029491> <TCIM> CangJie: the candidate window appears at the top left hand corner during typing in Mail and iChat
   6523 
   6524         * WebView.subproj/WebHTMLView.m:
   6525         (-[WebHTMLView firstRectForCharacterRange:]):
   6526         Use selected range if there is no marked range.
   6527 
   6528 === Safari-408 ===
   6529 
   6530 2005-03-18  David Harrison  <harrison (a] apple.com>
   6531 
   6532         Reviewed by Darin.
   6533 
   6534         <rdar://problem/3584942> AX: Safari Accessibility parent-child mismatch
   6535 
   6536         * WebView.subproj/WebFrameView.m:
   6537         (-[WebFrameView webCoreBridge]):
   6538         New to conform to WebCoreBridgeHolder protocol.
   6539 
   6540 2005-03-18  Richard Williamson   <rjw (a] apple.com>
   6541 	
   6542 	Fixed <rdar://problem/4057004> Data from XMLHTTPRequest is never dealloced
   6543 
   6544 	WebDataSource keeps an array of all the NSURLResponses associated
   6545 	with the load for a page.  This is used to playback delegate messages
   6546 	when loading from the page cache.  However, after the document
   6547 	has completed it's initial load, we continue to keep track of responses. 
   6548 	So, this has the consequence of keeping all the responses for a page
   6549 	around for the life of the page.  NSURLResponses are now very
   6550 	heavy.  They indirectly reference the resource data (via the
   6551 	download assessment dictionary).  This fix will keep
   6552 	references to responses around for those resources loaded during initial
   6553 	page load, but not after that point.
   6554 
   6555         Reviewed by Ken.
   6556 
   6557         * WebView.subproj/WebDataSource.m:
   6558         (-[WebDataSource _addResponse:]):
   6559         (-[WebDataSource _stopRecordingResponses]):
   6560         * WebView.subproj/WebDataSourcePrivate.h:
   6561         * WebView.subproj/WebFrame.m:
   6562         (-[WebFrame _opened]):
   6563 
   6564 2005-03-18  Ken Kocienda  <kocienda (a] apple.com>
   6565 
   6566         Reviewed by Darin
   6567 
   6568         Fix for this bug:
   6569         
   6570         <rdar://problem/4053729> Copy/paste of page with frames into Blot or Mail does nothing and loses insertion point
   6571 
   6572         * WebView.subproj/WebHTMLView.m:
   6573         (-[WebHTMLView _selectedArchive]): Wrap frameset documents in an iframe, so they can be pasted into 
   6574         existing documents which will have a body or frameset of their own.
   6575 
   6576 === Safari-407 ===
   6577 
   6578 2005-03-17  Richard Williamson   <rjw (a] apple.com>
   6579 
   6580 	Fixed <rdar://problem/4055562> REGRESSION (Tiger): Safari doesn't draw progressively-loaded JPEGs (www.theregister.co.uk, www.titantalk.com)
   6581 
   6582 	Anothe side effect of lazy loading of image meta data.  We now
   6583 	don't cache image size until size meta data is actually available.
   6584 
   6585         Reviewed by Darin.
   6586 
   6587         * WebCoreSupport.subproj/WebImageData.m:
   6588         (-[WebImageData size]):
   6589 
   6590 2005-03-16  David Harrison  <harrison (a] apple.com>
   6591 
   6592         Reviewed by Maciej.
   6593         
   6594         <rdar://problem/4048506> Deleting from beginning of editable div deletes other document elements
   6595         
   6596         Also changed WebCore.
   6597 
   6598         * WebView.subproj/WebHTMLView.m:
   6599         (-[WebHTMLView _shouldDeleteRange:]):
   6600         Added call to new bridge method canDeleteRange.
   6601 
   6602 2005-03-16  Ken Kocienda  <kocienda (a] apple.com>
   6603 
   6604         Reviewed by Darin
   6605 
   6606         Fix for this bug:
   6607         
   6608         <rdar://problem/4042935> undo doesn't work properly during inline input
   6609 
   6610         * WebView.subproj/WebHTMLView.m:
   6611         (-[WebHTMLView setMarkedText:selectedRange:]): Call new -[WebCoreBridge replaceMarkedTextWithText:] instead of 
   6612         -[WebCoreBridge replaceSelectionWithText:selectReplacement:smartReplace:]. The former call was just added in 
   6613         order to provide a better mapping of international text input onto the typing command/undo design.
   6614 
   6615 2005-03-15  Richard Williamson   <rjw (a] apple.com>
   6616 
   6617 	Fixed <rdar://problem/4040321> Exception: Someone's trying to encode a WebDataRequestParameters instance
   6618 
   6619 	If client mutates request use new Foundation SPI to address remove applewebdata properties	from request.
   6620 
   6621         Reviewed by Ken Kocienda.
   6622 
   6623         * WebView.subproj/WebBaseResourceHandleDelegate.m:
   6624         (-[WebBaseResourceHandleDelegate willSendRequest:redirectResponse:]):
   6625         * WebView.subproj/WebDataProtocol.h:
   6626         * WebView.subproj/WebDataProtocol.m:
   6627         (+[NSURLRequest _webDataRequestPropertyKey]):
   6628 
   6629 2005-03-15  Ken Kocienda  <kocienda (a] apple.com>
   6630 
   6631         Reviewed by Vicki
   6632 
   6633         Fox for this bug:
   6634         
   6635         <rdar://problem/4052642> Each delete keystroke is in its own undo group; not included in undo group with other typing
   6636 
   6637         Calling -[WebCore setSelectedDOMRange:range affinity:] had the result of "closing" any active set of typing
   6638         keystrokes grouped together in a single undo operation. My change on 27 Jan to route delete keystrokes 
   6639         through _deleteRange:killRing:... made this feature regress. Previous to that change, the backwards delete
   6640         key went through separate code that is no longer in the tree that did not set the selection in the way
   6641         it is done now.
   6642         
   6643         The solution is to add an extra argument to the set-selection call. The WebCoreBridge now offers this method:
   6644         -[WebCore setSelectedDOMRange:range affinity:closeTyping:]. Now, callers must indicate whether setting the 
   6645         selection will act to close typing or not. The code changes below all add this new argument with the
   6646         appropriate value for closeTyping.
   6647 
   6648         * WebView.subproj/WebHTMLView.m:
   6649         (-[WebHTMLView _deleteRange:killRing:prepend:smartDeleteOK:deletionAction:]): Passes NO for closeTyping when
   6650         deletionAction is deleteKeyAction or forwardDeleteKeyAction; YES when deleteSelectionAction.
   6651         (-[WebHTMLView _expandSelectionToGranularity:]): Passes YES for closeTyping.
   6652         (-[WebHTMLView selectToMark:]): Passes YES for closeTyping.
   6653         (-[WebHTMLView swapWithMark:]): Passes YES for closeTyping.
   6654         (-[WebHTMLView transpose:]): Passes YES for closeTyping.
   6655         (-[WebHTMLView _selectMarkedText]): Passes NO for closeTyping.
   6656         (-[WebHTMLView _selectRangeInMarkedText:]): Passes NO for closeTyping.
   6657         * WebView.subproj/WebView.m:
   6658         (-[WebView setSelectedDOMRange:affinity:]): Passes YES for closeTyping.
   6659 
   6660 2005-03-14  Richard Williamson   <rjw (a] apple.com>
   6661 
   6662 	Fix <rdar://problem/4051389> 8A413: gifs animating too fast
   6663 
   6664         Reviewed by Maciej.
   6665 
   6666 	Match Mozilla's policy for minimum frame duration, which is somewhat odd:
   6667 
   6668 	<= 0.01 sec use .1 sec, otherwise use specified duration.
   6669 
   6670         * WebCoreSupport.subproj/WebImageData.m:
   6671         (-[WebImageData _frameDurationAt:]):
   6672 
   6673 2005-03-14  Darin Adler  <darin (a] apple.com>
   6674 
   6675         Reviewed by Harrison.
   6676 
   6677         - fixed <rdar://problem/4049776> Seed: Mail: Disable spellcheck leaves red artifacts
   6678 
   6679         * WebView.subproj/WebFrameInternal.h: Added _unmarkAllMisspellings.
   6680         * WebView.subproj/WebFrame.m: (-[WebFrame _unmarkAllMisspellings]): Added.
   6681         Calls unmarkAllMisspellings on the bridge and self and all subframes.
   6682 
   6683         * WebView.subproj/WebView.m: (-[WebView setContinuousSpellCheckingEnabled:]):
   6684         Call _unmarkAllMisspellings on the main frame when turning continuous spell checking off.
   6685 
   6686 2005-03-14  Richard Williamson   <rjw (a] apple.com>
   6687 
   6688 	Fixed <rdar://problem/4027928> Tiger_8A394:Acrobat crashes while tried to remove the subscription errors by clicking on "Would you like to remove the subscription" from Tracker details view pane
   6689 
   6690 	The Acrobat application triggers loads of new documents in it's policy delegate.  This
   6691 	ultimately causes the WebHTMLView to be released before their event handlers have
   6692 	returned.  To bullet proof against this case we retain/release self before passing
   6693 	the event on for further handling.
   6694 	
   6695         Reviewed by Maciej.
   6696 
   6697         * WebView.subproj/WebHTMLView.m:
   6698         (-[WebHTMLView _updateMouseoverWithEvent:]):
   6699         (-[WebHTMLView scrollWheel:]):
   6700         (-[WebHTMLView mouseDown:]):
   6701         (-[WebHTMLView mouseDragged:]):
   6702         (-[WebHTMLView mouseUp:]):
   6703         (-[WebHTMLView keyDown:]):
   6704         (-[WebHTMLView keyUp:]):
   6705         (-[WebHTMLView performKeyEquivalent:]):
   6706 
   6707 2005-03-14  Vicki Murley  <vicki (a] apple.com>
   6708 
   6709 	- roll out the fix for 4040321, since it is still pending CCC review.
   6710 
   6711     2005-03-10  Richard Williamson   <rjw (a] apple.com>
   6712 
   6713         Fixed <rdar://problem/4040321> Exception: Someone's trying to encode a WebDataRequestParameters instance 
   6714 
   6715         Reviewed by Darin.
   6716 
   6717         If a delegate returns a mutated applewebdata: request in it's willSendRequest:
   6718         method, we don't load using the WebDataRequest.  Instead we do a normal load.
   6719         Unfortunately, if the request they return is mutated *copy* of the applewebdata: 
   6720         request it will hold the applewebdata: special properties.  These properties 
   6721         will be encoded into the cache.   They should not be.  So, to fix, we sanitize the
   6722         request, by removing the special properties from the request.
   6723 
   6724         Note that we had to dig into the private guts of NSURLRequest because there is
   6725         no public mechanism to remove properties from a request, see 4046775.
   6726 
   6727         * WebView.subproj/WebBaseResourceHandleDelegate.m:
   6728         (-[WebBaseResourceHandleDelegate willSendRequest:redirectResponse:]):
   6729         * WebView.subproj/WebDataProtocol.h:
   6730         * WebView.subproj/WebDataProtocol.m:
   6731         (-[NSURLRequest _webDataRequestExternalRequest]):
   6732         (-[NSURLRequest _webDataRequestSanitize]):
   6733 
   6734 === Safari-406 ===
   6735 
   6736 2005-03-13  Darin Adler  <darin (a] apple.com>
   6737 
   6738         Reviewed by Ken and Maciej.
   6739 
   6740         - fixed <rdar://problem/4049040> REGRESSION (403-405): security check prevents user stylesheet from loading (Dictionary.app doesn't work at all!)
   6741 
   6742         * Plugins.subproj/WebNetscapePluginStream.m: (-[WebNetscapePluginStream initWithRequest:pluginPointer:notifyData:sendNotification:]):
   6743         Allow plug-in subresource streams to load with any URL, ignoring the "canLoadURL" method's restriction (only
   6744         file URLs can load other file URLs), which now applies only to main resources, like web pages in frames or
   6745         object tags and plug-in main resources.
   6746 
   6747         * WebCoreSupport.subproj/WebBridge.m:
   6748         (-[WebBridge startLoadingResource:withURL:customHeaders:]): Allow subresources to load with any URL, as above.
   6749         This allows things like images, stylesheets, and JavaScript to be loaded without the "canLoadURL" method's
   6750         restriction.
   6751         (-[WebBridge startLoadingResource:withURL:customHeaders:postData:]): Ditto.
   6752         (-[WebBridge syncLoadResourceWithURL:customHeaders:postData:finalURL:responseHeaders:statusCode:]): Ditto.
   6753 
   6754 2005-03-10  Richard Williamson   <rjw (a] apple.com>
   6755 
   6756 	Fixed <rdar://problem/4040321> Exception: Someone's trying to encode a WebDataRequestParameters instance 
   6757 
   6758         Reviewed by Darin.
   6759 
   6760 	If a delegate returns a mutated applewebdata: request in it's willSendRequest:
   6761 	method, we don't load using the WebDataRequest.  Instead we do a normal load.
   6762 	Unfortunately, if the request they return is mutated *copy* of the applewebdata: 
   6763 	request it will hold the applewebdata: special properties.  These properties 
   6764 	will be encoded into the cache.   They should not be.  So, to fix, we sanitize the
   6765 	request, by removing the special properties from the request.
   6766 
   6767 	Note that we had to dig into the private guts of NSURLRequest because there is
   6768 	no public mechanism to remove properties from a request, see 4046775.
   6769 
   6770         * WebView.subproj/WebBaseResourceHandleDelegate.m:
   6771         (-[WebBaseResourceHandleDelegate willSendRequest:redirectResponse:]):
   6772         * WebView.subproj/WebDataProtocol.h:
   6773         * WebView.subproj/WebDataProtocol.m:
   6774         (-[NSURLRequest _webDataRequestExternalRequest]):
   6775         (-[NSURLRequest _webDataRequestSanitize]):
   6776 
   6777 === Safari-405 ===
   6778 
   6779 2005-03-10  Maciej Stachowiak  <mjs (a] apple.com>
   6780 
   6781         Reviewed by Vicki.
   6782 
   6783 	<rdar://problem/4046510> REGRESSION (TOT): All Flash and Shockwave plugin-based web content missing
   6784         
   6785 	* Plugins.subproj/WebNetscapePluginStream.m:
   6786         (-[WebNetscapePluginStream initWithRequest:pluginPointer:notifyData:sendNotification:]):
   6787 
   6788 2005-03-10  John Sullivan  <sullivan (a] apple.com>
   6789 
   6790         Reviewed by Vicki.
   6791         
   6792         - fixed <rdar://problem/4045843> Going back/forward to error page 
   6793         hits assertion in -[WebDataSource(WebPrivate) _setData:]
   6794 
   6795         * WebView.subproj/WebDataSource.m:
   6796         (-[WebDataSource _setData:]):
   6797         Removed bogus assertion
   6798 
   6799 2005-03-09  Deborah Goldsmith  <goldsmit (a] apple.com>
   6800 
   6801         Reviewed by Darin.
   6802 
   6803         - fixed <rdar://problem/3997044> default encoding for non-Latin incorrect
   6804 
   6805 	* WebKit/WebView.subproj/WebPreferences.m: (+[WebPreferences _systemCFStringEncoding]):
   6806         Call __CFStringGetUserDefaultEncoding to get region, and TECGetWebTextEncodings to get
   6807         the first encoding to determine the default encoding.
   6808 
   6809 2005-03-09  Darin Adler  <darin (a] apple.com>
   6810 
   6811         Reviewed by Richard.
   6812 
   6813         - fixed <rdar://problem/4034175> REGRESSION (Mail): Can't use any font with style Light/Condensed/Semibold/Extrabold, etc
   6814 
   6815         * WebView.subproj/WebHTMLView.m:
   6816         (-[WebHTMLView _styleFromFontAttributes:]): Use a constant instead of hard-coded weight for clarity.
   6817         (-[WebHTMLView _originalFontA]): Ditto.
   6818         (-[WebHTMLView _originalFontB]): Ditto.
   6819         (-[WebHTMLView _addToStyle:fontA:fontB:]): Add code to detect the case where the family name is not good enough
   6820         to specify the font precisely. In that case, use the Postscript font name instead. Also change variable names
   6821         so it's easier to understand the method.
   6822 
   6823 2005-03-06  Maciej Stachowiak  <mjs (a] apple.com>
   6824 
   6825         Reviewed by Darin.
   6826 
   6827 	<rdar://problem/4005575> Arbitrary file disclosure vulnerability due to ability to load local html from remote content
   6828         
   6829 	* Plugins.subproj/WebBaseNetscapePluginView.m:
   6830         (-[WebBaseNetscapePluginView requestWithURLCString:]):
   6831         * Plugins.subproj/WebNetscapePluginEmbeddedView.m:
   6832         (-[WebNetscapePluginEmbeddedView didStart]):
   6833         * Plugins.subproj/WebNetscapePluginStream.m:
   6834         (-[WebNetscapePluginStream initWithRequest:pluginPointer:notifyData:sendNotification:]):
   6835         * WebCoreSupport.subproj/WebBridge.m:
   6836         (-[WebBridge createWindowWithURL:frameName:]):
   6837         (-[WebBridge startLoadingResource:withURL:customHeaders:]):
   6838         (-[WebBridge startLoadingResource:withURL:customHeaders:postData:]):
   6839         (-[WebBridge syncLoadResourceWithURL:customHeaders:postData:finalURL:responseHeaders:statusCode:]):
   6840         (-[WebBridge loadURL:referrer:reload:userGesture:target:triggeringEvent:form:formValues:]):
   6841         (-[WebBridge postWithURL:referrer:target:data:contentType:triggeringEvent:form:formValues:]):
   6842         (-[WebBridge createChildFrameNamed:withURL:referrer:renderPart:allowsScrolling:marginWidth:marginHeight:]):
   6843         (-[WebBridge viewForPluginWithURL:attributeNames:attributeValues:MIMEType:]):
   6844         * WebView.subproj/WebFrame.m:
   6845         (-[WebFrame _loadURL:referrer:intoChild:]):
   6846         * WebView.subproj/WebFramePrivate.h:
   6847 
   6848 2005-03-09  Richard Williamson   <rjw (a] apple.com>
   6849 	
   6850 	Fixed <rdar://problem/4032938> Safari: text layout for MS P Gothic font is corrupted
   6851 
   6852 	The AppKit and ATS reports that MS P Gothic is fixed pitch.  It is
   6853 	not!  This is another case of "fixed pitch" being wrong.  I've
   6854 	coalesced all the special cases into our isFontFixedPitch:, and
   6855 	used a dictionary to improve speed.  No performance regression.
   6856 
   6857         Reviewed by Maciej.
   6858 
   6859         * WebCoreSupport.subproj/WebTextRenderer.m:
   6860         (-[WebTextRenderer _computeWidthForSpace]):
   6861         * WebCoreSupport.subproj/WebTextRendererFactory.m:
   6862         (-[WebTextRendererFactory clearCaches]):
   6863         (-[WebTextRendererFactory isFontFixedPitch:]):
   6864 
   6865 2005-03-09  Darin Adler  <darin (a] apple.com>
   6866 
   6867         Reviewed by Maciej.
   6868 
   6869         <rdar://problem/4040388> REGRESSION (172-173): nonrepro crash in -[NSString(WebNSURLExtras) _web_isUserVisibleURL]
   6870 
   6871         * Misc.subproj/WebNSURLExtras.m:
   6872         (-[NSString _web_isUserVisibleURL]): Fixed some pointer expressions that didn't include the index in the expression.
   6873         (readIDNScriptWhiteListFile): Removed NSLog statements in here since we decided they aren't useful and they will
   6874         write some messages on Tiger.
   6875 
   6876 2005-03-09  Darin Adler  <darin (a] apple.com>
   6877 
   6878         * DOM.subproj/DOMPrivate.h: Checked in file copied from WebCore.
   6879 
   6880 2005-03-08  Richard Williamson   <rjw (a] apple.com>
   6881 
   6882         Fixed <rdar://problem/4036949> many JPEG images fail to incremental-load due to change in ImageIO JPEG header parsing (to be fixed in WebKit)
   6883 	Fixed <rdar://problem/4042570> Need to check image properties for presence of width/height properties
   6884 
   6885 	ImageIO-55 changed how image properties are created.  They
   6886 	are now created incrementally.  So we need "re-get" the image
   6887 	properties if the properties we care about (width/height) aren't
   6888 	in the property dictionary.
   6889 
   6890         Reviewed by John.
   6891 
   6892         * WebCoreSupport.subproj/WebImageData.h:
   6893         * WebCoreSupport.subproj/WebImageData.m:
   6894         (-[WebImageData init]):
   6895         (-[WebImageData fileProperties]):
   6896         (-[WebImageData propertiesAtIndex:]):
   6897         (-[WebImageData _isSizeAvailable]):
   6898         (-[WebImageData incrementalLoadWithBytes:length:complete:callback:]):
   6899         (-[WebImageData size]):
   6900 
   6901 2005-03-08  John Sullivan  <sullivan (a] apple.com>
   6902 
   6903         A couple of tweaks to the previous patch, from Darin's review.
   6904 
   6905         * Misc.subproj/WebNSPasteboardExtras.m:
   6906         (_writableTypesForImageWithoutArchive):
   6907         remove unnecessary _web prefix
   6908         (_writableTypesForImageWithArchive):
   6909         ditto
   6910         (+[NSPasteboard _web_writableTypesForImageIncludingArchive:]):
   6911         use mutableCopy rather than initWithArray:, and adjust for name changes
   6912 
   6913 2005-03-08  John Sullivan  <sullivan (a] apple.com>
   6914 
   6915         Reviewed by Ken.
   6916         
   6917         - fixed <rdar://problem/4031826> REGRESSION (Mail): standalone images from 
   6918         Safari can't be pasted into Mail (WebKit part of fix)
   6919         
   6920         We were always declaring webarchive-related pasteboard types, even in the standalone
   6921         image cases where we had no webarchive. Unfortunately, the WebView pasteboard-related
   6922         API doesn't prevent this kind of thing from happening, because the code that
   6923         declares the types isn't guaranteed to be anywhere near the code that writes
   6924         the pasteboard data.
   6925         
   6926         After this fix, I discovered that pasting standalone images into Mail still doesn't
   6927         work right, but the remaining issues seem to be entirely in Mail. I wrote up 4041671
   6928         to cover these.
   6929 
   6930         * Misc.subproj/WebNSPasteboardExtras.h:
   6931         (+[NSPasteboard _web_writableTypesForImageIncludingArchive:]):
   6932         Added boolean parameter; clients must specify whether or not there's an
   6933         archive involved, because the array of types is different if there is.
   6934 
   6935         * Misc.subproj/WebNSPasteboardExtras.m:
   6936         (_web_writableTypesForImageWithoutArchive):
   6937         new static function, constructs (once) and returns the array of types
   6938         for images that don't have archives
   6939         (_web_writableTypesForImageWithArchive):
   6940         new static function, constructs (once) and returns the array of types
   6941         for images that do have archives
   6942         (+[NSPasteboard _web_writableTypesForImageIncludingArchive:]):
   6943         added boolean parameter, now calls one of the two new static functions
   6944         
   6945         (-[NSPasteboard _web_writeImage:URL:title:archive:types:]):
   6946         added asserts that we aren't declaring the archive types if we don't have archive data
   6947         
   6948         (-[NSPasteboard _web_declareAndWriteDragImage:URL:title:archive:source:]):
   6949         updated to pass parameter to _web_writableTypesForImageIncludingArchive:
   6950         
   6951         * WebView.subproj/WebDefaultContextMenuDelegate.m:
   6952         (-[WebDefaultUIDelegate copyImageToClipboard:]):
   6953         updated to pass parameter to _web_writableTypesForImageIncludingArchive:
   6954 
   6955         * WebView.subproj/WebImageView.m:
   6956         (-[WebImageView copy:]):
   6957         updated to pass parameter to _web_writableTypesForImageIncludingArchive:
   6958 
   6959         * WebView.subproj/WebView.m:
   6960         (-[WebView pasteboardTypesForElement:]):
   6961         updated to pass parameter to _web_writableTypesForImageIncludingArchive:
   6962 
   6963 2005-03-07  Richard Williamson   <rjw (a] apple.com>
   6964 
   6965 	More bullet proofing for <rdar://problem/4038304> CrashTracer: ....9 crashes at com.apple.WebKit: -[WebTextRenderer initWithFont:usingPrinterFont:] + 840
   6966 
   6967 	Protect against removal of Times and Times New Roman from
   6968 	system.  If these fonts are removed attempt to get system font
   6969 	instead of FATAL_ALWAYS.
   6970 
   6971         Reviewed by John.
   6972 
   6973         * WebCoreSupport.subproj/WebTextRenderer.m:
   6974         (-[WebTextRenderer initWithFont:usingPrinterFont:]):
   6975 
   6976 === Safari-403 ===
   6977 
   6978 2005-03-06  Darin Adler  <darin (a] apple.com>
   6979 
   6980         - fixed obvious mistake in IDN script code (luckily it hasn't been in a submission yet!)
   6981 
   6982         * Misc.subproj/WebNSURLExtras.m: (readIDNScriptWhiteListFile): Use "index" to index into the array,
   6983         not "script", which is the script number, not the 32-bit-word index.
   6984 
   6985 2005-03-05  Kevin Decker  <kdecker (a] apple.com>
   6986 
   6987         Reviewed by Darin.
   6988 
   6989 	Fixed: <rdar://problem/4038529> Infinite progress bar loading webcams and other sites that use multipart/x-mixed-replace
   6990 
   6991 	The previous patch I landed prevented us from loading multipart/x-mixed-replace but did not always update the progress bar accordingly.  
   6992         This stops websites from having seemingly infinite progress in the browser UI.  
   6993 
   6994         * WebCoreSupport.subproj/WebSubresourceClient.m:
   6995         (-[WebSubresourceClient didReceiveResponse:]): If this is "multipart/x-mixed-replace", remove the WebBaseResourceHandleDelegate client from 
   6996         the datasource's subresource array, otherwise -[WebDataSource isLoading] incorrectly returns YES.   Also it's possible at this point in
   6997          time we're done loading now (loaded everything else except for the multipart/x-mixed-replace content) so go ahead and check to see if 
   6998          in fact we're complete. 
   6999         * WebView.subproj/WebMainResourceClient.m:
   7000         (-[WebMainResourceClient connection:didReceiveResponse:]): ditto
   7001 
   7002 2005-03-05  Richard Williamson   <rjw (a] apple.com>
   7003 
   7004 	Fixed panther build problem.  Shouldn't include
   7005 	changes for 3968753 on panther.
   7006 
   7007         Reviewed by John.
   7008 
   7009         * WebView.subproj/WebView.m:
   7010         (-[WebView _commonInitializationWithFrameName:groupName:]):
   7011 
   7012 2005-03-05  Darin Adler  <darin (a] apple.com>
   7013 
   7014         Reviewed by John.
   7015 
   7016         - fixed <rdar://problem/4034603> REGRESSION (185-188): RadarWeb can't send enclosures anymore
   7017 
   7018         * WebView.subproj/WebFormDataStream.m:
   7019         (closeCurrentStream): Release currentData when closing the stream.
   7020         (advanceCurrentStream): Set up and retain currentData when the current stream is reading that data, so the
   7021         data won't be released while in use.
   7022         (formCreate): Initialize currentData to NULL.
   7023 
   7024         - fixed <rdar://problem/4037562> Tiger8A402: Help Viewer crashed when viewing help for iChat (infinite recursion in WebView)
   7025 
   7026         * WebView.subproj/WebView.m: (-[WebView _responderValidateUserInterfaceItem:]):
   7027         Check for the case where we ourselves are the responder. This avoids an infinite loop.
   7028         The actual code to perform operations avoids this with a global variable, but this lighter weight
   7029         solution is sufficient here because validate operations don't call through to the next responder.
   7030 
   7031 2005-03-04  Richard Williamson   <rjw (a] apple.com>
   7032 
   7033 	Fixed <rdar://problem/3968753> REGRESSION: Poor performance with differing multiple animated GIFs (was fast in Panther)
   7034 
   7035 	Disable coalesced updates (in CG).  This restores the
   7036 	panther behavior.
   7037 
   7038         Reviewed by David Harrison.
   7039 
   7040         * WebView.subproj/WebView.m:
   7041         (-[WebView _commonInitializationWithFrameName:groupName:]):
   7042 
   7043 2005-03-04  Adele Amchan  <adele (a] apple.com>
   7044 
   7045         Reviewed by Darin.
   7046 
   7047         * English.lproj/StringsNotToBeLocalized.txt: added new strings "text/x-vcf" and "text/x-csv" to the list
   7048 
   7049 2005-03-04  Adele Amchan  <adele (a] apple.com>
   7050 
   7051         Reviewed by Chris.
   7052 
   7053         Fix for <rdar://problem/4032982> Sun iPlanet app: not able to import AddressBook CSV format addresses properly
   7054         Fix for <rdar://problem/4032985> Sun iPlanet app: not able to import vCard format addresses properly
   7055 
   7056         * WebView.subproj/WebTextView.m:
   7057         (+[WebTextView unsupportedTextMIMETypes]): added "text/x-csv" and "text/x-vcf" to the list of MIME types that our text view doesn't handle
   7058 
   7059 2005-03-04  Darin Adler  <darin (a] apple.com>
   7060 
   7061         Reviewed by John.
   7062 
   7063         - fixed <rdar://problem/4036817> REGRESSION: ctrl-y broken when a line + carriage return cut
   7064 
   7065         * WebView.subproj/WebHTMLView.m:
   7066         (-[WebHTMLView _deleteRange:killRing:prepend:smartDeleteOK:deletionAction:]): Merged _handleKillRing behavior
   7067         into this function, since there's now a more-complicated way the startNewKillRingSequence boolean needs to
   7068         be handled. Set the startNewKillRingSequence boolean after the entire process so changing the selection before
   7069         and during the editing dosn't clear it. Also change "isTypingAction" parameter to "deletionAction" so we can
   7070         handle forward delete with this method.
   7071         (-[WebHTMLView _deleteSelection]): Pass deleteSelectionAction for action rather than NO for isTypingAction,
   7072         which is the way to say the same thing using the new parameter.
   7073         (-[WebHTMLView _deleteWithDirection:granularity:killRing:isTypingAction:]): Refactor to use the _deleteRange
   7074         method above. Also calls _shouldDeleteRange: for the pre-existing selection case; not doing that before was
   7075         a bug.
   7076         (-[WebHTMLView deleteToMark:]): Pass deleteSelectionAction for action rather than NO for isTypingAction,
   7077         which is the way to say the same thing using the new parameter.
   7078 
   7079 2005-03-04  Darin Adler  <darin (a] apple.com>
   7080 
   7081         Reviewed by John.
   7082 
   7083         - fixed <rdar://problem/4020413> REGRESSION (Mail): can't use fonts with names that start with "#" in Mail (Korean fonts)
   7084 
   7085         * WebView.subproj/WebHTMLView.m:
   7086         (-[WebHTMLView _styleFromFontAttributes:]): Quote font name when calling setFontFamily.
   7087         (-[WebHTMLView _addToStyle:fontA:fontB:]): Ditto.
   7088 
   7089 2005-03-04  Darin Adler  <darin (a] apple.com>
   7090 
   7091         Reviewed by John.
   7092 
   7093         - fixed <rdar://problem/3965666> IDN spoofing vulnerability caused by Unicode characters that look like ASCII characters
   7094 
   7095         * Misc.subproj/WebNSURLExtras.m:
   7096         (readIDNScriptWhiteListFile): Added. Reads file and parses script names.
   7097         (readIDNScriptWhiteList): Added. Calls readIDNScriptWhiteList on each of the white list locations in succession.
   7098         (allCharactersInIDNScriptWhiteList): Renamed from containsPossibleLatinLookalikes and changed sense.
   7099         Now calls readIDNScriptWhiteList first time, and then uses the read-in list to check the scripts.
   7100         (-[NSString _web_mapHostNameWithRange:encode:makeString:]): Call allCharactersInIDNScriptWhiteList instead of
   7101         containsPossibleLatinLookalikes.
   7102         * Resources/IDNScriptWhiteList.txt: Added.
   7103         * WebKit.pbproj/project.pbxproj: Added IDNScriptWhiteList.txt file.
   7104 
   7105         * Misc.subproj/WebKitLocalizableStrings.m: Removed. This is simply unused.
   7106         * English.lproj/StringsNotToBeLocalized.txt: Updated for recent changes.
   7107 
   7108 2005-03-04  Darin Adler  <darin (a] apple.com>
   7109 
   7110         Reviewed by John.
   7111 
   7112         - fixed <rdar://problem/3937667> REGRESSION (Mail): Zooming a window from titlebar button doesn't paint newly-exposed portions of window
   7113 
   7114         * WebView.subproj/WebHTMLView.m: (-[WebHTMLView _recursiveDisplayAllDirtyWithLockFocus:visRect:]):
   7115         Re-set-up the visRect if the bounds changes due to layout.
   7116 
   7117 === Safari-402 ===
   7118 
   7119 2005-03-03  Jens Alfke  <jens (a] apple.com>
   7120 
   7121         Reviewed by rjw.
   7122 
   7123 	<rdar://problem/3991818> REGRESSION: Images scale while loading
   7124 	The code could crop an image when not all the scanlines were available yet, and it could crop when only a sub-rect of the image was to be drawn; but if it had to do both at once, it got the coordinates wrong. Fixed that.
   7125 
   7126         * WebCoreSupport.subproj/WebImageData.m:
   7127         (-[WebImageData incrementalLoadWithBytes:length:complete:callback:]):
   7128 
   7129 2005-03-01  David Hyatt  <hyatt (a] apple.com>
   7130 
   7131 	Fix for 3841186, scrollbar shows up disabled when it should not appear at all.  Make sure updateScrollers
   7132 	is never allowed to be re-entrant from any call point by moving the guard inside the function itself.
   7133 	
   7134         Reviewed by John Sullivan
   7135 
   7136         * WebView.subproj/WebDynamicScrollBarsView.m:
   7137         (-[WebDynamicScrollBarsView updateScrollers]):
   7138         (-[WebDynamicScrollBarsView reflectScrolledClipView:]):
   7139 
   7140 2005-03-02  Chris Blumenberg  <cblu (a] apple.com>
   7141 
   7142 	Fixed: <rdar://problem/4029010> Expose method to retrieve drag image for WebView's selection
   7143 
   7144         Reviewed by sullivan.
   7145 
   7146         * WebView.subproj/WebHTMLView.m:
   7147         (-[WebHTMLView _startDraggingImage:at:operation:event:sourceIsDHTML:DHTMLWroteData:]): call _selectionDraggingImage
   7148         (-[WebHTMLView _selectionDraggingImage]): new SPI for Mail, factored from previous method
   7149         (-[WebHTMLView _selectionDraggingRect]): new SPI for Mail
   7150         * WebView.subproj/WebHTMLViewPrivate.h:
   7151 
   7152 2005-03-02  John Sullivan  <sullivan (a] apple.com>
   7153 
   7154         Reviewed by Adele.
   7155         
   7156         - fixed <rdar://problem/4023337> Safari stops loading any page (-[NSCFDictionary setObject:forKey:]: 
   7157         attempt to insert nil key)
   7158         
   7159         It is very likely that the exception being hit is caused by the same problem as WebFoundation
   7160         bug 4018486. This change makes the code robust against this kind of problem regardless.
   7161 
   7162         * WebView.subproj/WebBaseResourceHandleDelegate.m:
   7163         (-[WebBaseResourceHandleDelegate saveResource]):
   7164         Don't call addSubresource if newly-created resource is nil (but do assert on debug builds).
   7165         Also assert that originalURL and MIMEType are not nil.
   7166         
   7167         * WebView.subproj/WebDataSource.m:
   7168         (-[WebDataSource addSubresource:]):
   7169         Don't add nil subresource to dictionary, but do assert on debug builds.
   7170 
   7171 === Safari-401 ===
   7172 
   7173 2005-03-01  John Sullivan  <sullivan (a] apple.com>
   7174 
   7175         Reviewed by Darin.
   7176         
   7177         - fixed <rdar://problem/3987482> Format>Style>Italic is not enabled when a 
   7178         compose window is empty (works in Blot)
   7179 
   7180         * WebView.subproj/WebHTMLView.m:
   7181         (-[WebHTMLView becomeFirstResponder]):
   7182         call _updateFontPanel here so NSFontManager knows the right font for the menu
   7183         items and the font panel
   7184 
   7185 2005-03-01  David Harrison  <harrison (a] apple.com>
   7186 
   7187         Reviewed by Chris.
   7188         
   7189         <rdar://problem/3915560> Mail would like an SPI to enable "smart" text paste/drop
   7190 
   7191         * WebView.subproj/WebHTMLView.m:
   7192         (-[WebHTMLView _smartDeleteRangeForProposedRange:]):
   7193         (-[WebHTMLView _smartInsertForString:replacingRange:beforeString:afterString:]):
   7194         New.
   7195 
   7196 2005-02-28  John Sullivan  <sullivan (a] apple.com>
   7197 
   7198         Reviewed by Ken.
   7199         
   7200         - WebKit part of fix for <rdar://problem/4023490> REGRESSION (125-185): Tabbing through links 
   7201         on frameset page gets stuck at end (tivofaq.com)
   7202         
   7203         This tab-to-links stuff has been in shaky condition ever since AppKit futzed with
   7204         tabbing behavior in Tiger to add support for including the toolbar in the key loop.
   7205         I made some changes months ago to compensate for that, but some cases, such as this
   7206         one, still weren't fixed.
   7207 
   7208         * WebCoreSupport.subproj/WebBridge.m:
   7209         (-[WebBridge _nextKeyViewOutsideWebFrameViewsWithValidityCheck:]):
   7210         new bottleneck method, extracted from nextKeyViewOutsideWebFrameViews; handles
   7211         nextKeyView or nextValidKeyView depending on parameter.
   7212         (-[WebBridge nextKeyViewOutsideWebFrameViews]):
   7213         now calls extracted method
   7214         (-[WebBridge nextValidKeyViewOutsideWebFrameViews]):
   7215         new method, calls new bottleneck method
   7216         
   7217         * WebView.subproj/WebHTMLView.m:
   7218         (-[WebHTMLView nextValidKeyView]):
   7219         when we're stuck at the end of a nextKeyView chain inside a nexted frame, use
   7220         nextValidKeyViewOutsideWebFrameViews. Make sure we don't end up looking inside
   7221         the web frame views while doing this.
   7222 
   7223 2005-02-25  Darin Adler  <darin (a] apple.com>
   7224 
   7225         Reviewed by John.
   7226 
   7227         - fixed <rdar://problem/4025088> window onblur and onfocus don't fire when text field has focus
   7228 
   7229         * WebView.subproj/WebHTMLView.m:
   7230         (-[WebHTMLView updateFocusState]): Renamed from updateFocusDisplay. Added call to setWindowHasFocus: method.
   7231         (-[WebHTMLView viewDidMoveToWindow]): Call method by new name.
   7232         (-[WebHTMLView windowDidBecomeKey:]): Ditto.
   7233         (-[WebHTMLView windowDidResignKey:]): Ditto.
   7234         (-[WebHTMLView becomeFirstResponder]): Ditto.
   7235         (-[WebHTMLView resignFirstResponder]): Ditto.
   7236 
   7237 === Safari-400 ===
   7238 
   7239 2005-02-25  Richard Williamson   <rjw (a] apple.com>
   7240 
   7241 	Fixed <rdar://problem/4000962> 8A375: Help Viewer displays voiced sound and semi-voiced characters strangely (characters don't seem to be composed)
   7242 
   7243 	Added special case for voiced marks.
   7244 
   7245         Reviewed by John.
   7246 
   7247         * WebCoreSupport.subproj/WebTextRenderer.m:
   7248         (widthForNextCharacter):
   7249 
   7250 2005-02-25  Darin Adler  <darin (a] apple.com>
   7251 
   7252         Reviewed by John.
   7253 
   7254         - fixed <rdar://problem/4019823> Seed: Control-Y doesn't work
   7255 
   7256         * WebView.subproj/WebHTMLView.m:
   7257         (-[WebHTMLView _deleteWithDirection:granularity:killRing:isTypingAction:]): Call _handleKillRing
   7258         after setting the selection, since it uses the selection to get the text.
   7259         (-[WebHTMLView _insertText:selectInsertedText:]): Check for empty string to avoid an assertion
   7260         on the other side of the bridge when you yank the empty string.
   7261 
   7262 2005-02-24  Richard Williamson   <rjw (a] apple.com>
   7263 
   7264 	Fixed <rdar://problem/3382926> Bidi neutrals at RTL/LTR boundaries not handled correctly.
   7265 
   7266 	If directionality is specified use that as initial directionality,
   7267 	rather than neutral directionality.	
   7268 
   7269         Reviewed by Hyatt.
   7270 
   7271         * WebCoreSupport.subproj/WebTextRenderer.m:
   7272         (widthForNextCharacter):
   7273 
   7274 2005-02-24  Adele Amchan  <adele (a] apple.com>
   7275 
   7276         Reviewed by Chris.
   7277        
   7278         Fix for <rdar://problem/4023393> Safari crashed in khtml::RenderObject::repaintAfterLayoutIfNeeded(QRect const&, QRect const&)
   7279 
   7280         We were crashing after hitting PageDown when viewing a pdf because 
   7281         WebKit was calling over to WebCore to scroll overflow areas.
   7282         Since this only needs to be done if we're dealing with a WebHTMLView, 
   7283         I added a wrapper function to check the documentView before calling
   7284         over to WebCore.
   7285 
   7286         * WebView.subproj/WebFrameView.m:
   7287         (-[WebFrameView _scrollOverflowInDirection:granularity:]): added wrapper function that checks if documentView is a WebHTMLView 
   7288         (-[WebFrameView scrollToBeginningOfDocument:]): uses new wrapper function now
   7289         (-[WebFrameView scrollToEndOfDocument:]): uses new wrapper function now
   7290         (-[WebFrameView _pageVertically:]): uses new wrapper function now
   7291         (-[WebFrameView _pageHorizontally:]): uses new wrapper function now
   7292         (-[WebFrameView _scrollLineVertically:]): uses new wrapper function now
   7293         (-[WebFrameView _scrollLineHorizontally:]): uses new wrapper function now
   7294 
   7295 2005-02-24  Richard Williamson   <rjw (a] apple.com>
   7296 
   7297 	Fixed <rdar://problem/3985889> REGRESSION (125-180): setting <img> src to GIF that already animated does not animate; just shows final frame
   7298 	
   7299         Reviewed by Hyatt.
   7300 
   7301         * WebCoreSupport.subproj/WebImageData.h:
   7302         * WebCoreSupport.subproj/WebImageData.m:
   7303         (-[WebImageData resetAnimation]):
   7304         * WebCoreSupport.subproj/WebImageRenderer.m:
   7305         (-[WebImageRenderer resetAnimation]):
   7306         (-[WebInternalImage resetAnimation]):
   7307         (-[WebImageRenderer drawImageInRect:fromRect:compositeOperator:context:]):
   7308 
   7309 2005-02-24  Kevin Decker  <kdecker (a] apple.com>
   7310 
   7311         Reviewed by John.
   7312 
   7313 	Fixed <rdar://problem/3962401> Don't load multipart/x-mixed-replace content to prevent memory leak
   7314 
   7315 	Since we're not going to fix <rdar://problem/3087535> for Tiger, we should not load multipart/x-mixed-replace content.  Pages with such content contain what is essentially an infinite load and therefore may leak.
   7316 
   7317         * WebView.subproj/WebMainResourceClient.m: 
   7318         (-[WebMainResourceClient connection:didReceiveResponse:]):  Disabled loading of multipart/x-mixed-replace content until we fully implement server side push. 
   7319     	 * WebCoreSupport.subproj/WebSubresourceClient.m: 
   7320         (-[WebSubresourceClient didReceiveResponse:]): Ditto. Same exact thing for sub resources. 
   7321 
   7322 
   7323 2005-02-23  John Sullivan  <sullivan (a] apple.com>
   7324 
   7325         Reviewed by Ken.
   7326         
   7327         - fixed <rdar://problem/4021370> REGRESSION (Tiger): WebKit part of fix for 
   7328         shift-tab on tivofaq doing the wrong thing
   7329 
   7330         * WebView.subproj/WebFrameView.m:
   7331         (-[WebFrameView becomeFirstResponder]):
   7332         If our previousValidKeyView is nil or self (same as nil modulo AppKit oddness),
   7333         look out of the box and get the previousValidKeyView of our webview.
   7334 
   7335 2005-02-23  Darin Adler  <darin (a] apple.com>
   7336 
   7337         Reviewed by Hyatt.
   7338 
   7339         - fixed <rdar://problem/4010196> REGRESSION (125-186+): 8-character timestamps in gmail wrap to 2 lines (width:8ex; font-size:80%)
   7340 
   7341         * WebCoreSupport.subproj/WebTextRenderer.m: (-[WebTextRenderer xHeight]): Return the maximum
   7342         of the "x" height and width. Comment in the code explains why in more detail.
   7343 
   7344 2005-02-22  Richard Williamson   <rjw (a] apple.com>
   7345 
   7346 	Fixed <rdar://problem/3937203> when a div adds a scrollbar (overflow:auto) we do not get regions
   7347 
   7348 	Compare regions after automatice scroll regions have been
   7349 	added.
   7350 
   7351         Reviewed by Maciej.
   7352 
   7353         * WebCoreSupport.subproj/WebBridge.h:
   7354         * WebCoreSupport.subproj/WebBridge.m:
   7355         (-[WebBridge dealloc]):
   7356         (-[WebBridge _compareDashboardRegions:]):
   7357         (-[WebBridge dashboardRegionsChanged:]):
   7358 
   7359 2005-02-22  Richard Williamson   <rjw (a] apple.com>
   7360 
   7361 	Fixed <rdar://problem/4012463> Dashboard widgets don't work with authenticating proxies
   7362 
   7363 	Added new SPI for dashboard that just calls default delegate
   7364 	behavior.
   7365 
   7366         Reviewed by Maciej.
   7367 
   7368         * WebView.subproj/WebView.m:
   7369         (-[WebView handleAuthenticationForResource:challenge:fromDataSource:]):
   7370         * WebView.subproj/WebViewPrivate.h:
   7371 
   7372 2005-02-22  Chris Blumenberg  <cblu (a] apple.com>
   7373 
   7374         Reviewed by mjs.
   7375 
   7376         * WebCoreSupport.subproj/WebBridge.m:
   7377         (-[WebBridge issuePasteAndMatchStyleCommand]): support for new "PasteAndMatchStyle" exec command
   7378 
   7379 === Safari-188 ===
   7380 
   7381 2005-02-21  David Harrison  <harrison (a] apple.com>
   7382 
   7383         Reviewed by Darin.
   7384 
   7385         <rdar://problem/3943090> REGRESSION (Mail): Spelling underline incompletely erased following certain steps
   7386 
   7387         * WebCoreSupport.subproj/WebTextRenderer.m:
   7388         (-[WebTextRenderer misspellingLineThickness]):
   7389         (-[WebTextRenderer misspellingLinePatternWidth]):
   7390         Replaced #defines with these methods, so others can get the same info.
   7391         
   7392         (-[WebTextRenderer drawLineForMisspelling:withWidth:]):
   7393         Keep underline within originally specified bounds.
   7394         
   7395 
   7396 2005-02-21  Darin Adler  <darin (a] apple.com>
   7397 
   7398         Reviewed by John.
   7399 
   7400         - fixed <rdar://problem/4016358> don't ever display IDN URLs with characters from "possible Latin look-alike" scripts
   7401 
   7402         * Misc.subproj/WebNSURLExtras.m:
   7403         (containsPossibleLatinLookalikes): Added.
   7404         (-[NSString _web_mapHostNameWithRange:encode:makeString:]): Call containsPossibleLatinLookalikes, and if true,
   7405         don't decode the host name.
   7406 
   7407 2005-02-19  Kevin Decker  <kdecker (a] apple.com>
   7408 
   7409         Reviewed by Chris.
   7410 
   7411 	Fixed <rdar://problem/4010765> Flash player can be used to arbitrarily open popup windows without user permission
   7412 	
   7413 	Our window.open() policy is to refuse the <script>window.open(...)</script> case and allow the inline the <a href="javascript:window.open('foo')> case.  Clever advertisers at some point realized that by executing their Javascript through the Flash plugin, Safari would always treat their code as the inline case, and thus, they were able to work around our popup blocker. 
   7414 
   7415         * Plugins.subproj/WebBaseNetscapePluginView.h: Addded currentEventIsUserGesture boolean ivar. 
   7416         * Plugins.subproj/WebBaseNetscapePluginView.m:
   7417         (-[WebBaseNetscapePluginView sendEvent:]): If at any point the user clicks or presses a key from within a plugin, set the currentEventIsUserGesture flag to true. This is important to differentiate legitimate window.open() calls originating from plugins;  we still want to allow those. 
   7418         (-[WebBaseNetscapePluginView initWithFrame:]): In our asynchronous load, pass along currentEventIsUserGesture to the PluginRequest. 
   7419         (-[WebBaseNetscapePluginView evaluateJavaScriptPluginRequest:]): Inform WebCore if this was a user originated gesture when calling executeScript(). 
   7420         (-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:sendNotification:]):
   7421         (-[WebPluginRequest initWithRequest:frameName:notifyData:sendNotification:didStartFromUserGesture:]):
   7422         (-[WebPluginRequest isCurrentEventUserGesture]): Added. 
   7423 
   7424 2005-02-18  Chris Blumenberg  <cblu (a] apple.com>
   7425 
   7426 	Fixed: <rdar://problem/3945271> REGRESSION (Mail): pasted plain text should pick up typing style instead of being unstyled
   7427 
   7428         Reviewed by kocienda.
   7429 
   7430         * WebView.subproj/WebDataSource.m:
   7431         (-[WebDataSource _replaceSelectionWithArchive:selectReplacement:]): pass NO for matchStyle to replaceSelection
   7432         * WebView.subproj/WebHTMLView.m:
   7433         (-[WebHTMLView _documentFragmentFromPasteboard:allowPlainText:chosePlainText:]): return new chosePlainText parameter
   7434         (-[WebHTMLView _pasteWithPasteboard:allowPlainText:]): pass chosePlainText for matchStyle to replaceSelection
   7435         (-[WebHTMLView concludeDragForDraggingInfo:actionMask:]): ditto
   7436 
   7437 2005-02-17  Richard Williamson   <rjw (a] apple.com>
   7438 
   7439 	Removed code that should not have been checked in from
   7440 	last patch.
   7441 
   7442         * WebCoreSupport.subproj/WebTextRendererFactory.m:
   7443         (-[WebTextRendererFactory isFontFixedPitch:]):
   7444 
   7445 2005-02-17  Richard Williamson   <rjw (a] apple.com>
   7446 
   7447         Fixed <rdar://problem/3999467> when Osaka-Mono is specified as fixed width font, Osaka used instead
   7448 
   7449 	Fixed w/o introducing a performance regression.
   7450 
   7451         Reviewed by Vicki (and earlier by Dave Harrison).
   7452 
   7453         * WebCoreSupport.subproj/WebTextRenderer.m:
   7454         (-[WebTextRenderer _computeWidthForSpace]):
   7455         (widthForNextCharacter):
   7456         * WebCoreSupport.subproj/WebTextRendererFactory.h:
   7457         * WebCoreSupport.subproj/WebTextRendererFactory.m:
   7458         (-[NSFont _web_isFakeFixedPitch]):
   7459         (-[WebTextRendererFactory isFontFixedPitch:]):
   7460         (-[WebTextRendererFactory fontWithFamily:traits:size:]):
   7461 
   7462 2005-02-17  Richard Williamson   <rjw (a] apple.com>
   7463 
   7464 	Fixed <rdar://problem/3959304> PDF in img tag is not rendered correctly anymore
   7465 
   7466 	We were incorrectly adding image position when flipping coordinates.
   7467 
   7468         Reviewed by David Harrison.
   7469 
   7470         * WebCoreSupport.subproj/WebImageData.m:
   7471         (-[WebImageData _PDFDrawFromRect:toRect:operation:alpha:flipped:context:]):
   7472 
   7473 2005-02-17  Richard Williamson   <rjw (a] apple.com>
   7474 
   7475 	Fixed <rdar://problem/4007262> Seed: Flight tracker scrolling moves to the left
   7476 
   7477 	Added SPI for dashboard to disable wheel scrolling of the WebClipView.
   7478 
   7479         Reviewed by Ken.
   7480 
   7481         * ChangeLog:
   7482         * WebView.subproj/WebClipView.m:
   7483         (-[WebClipView _focusRingVisibleRect]):
   7484         (-[WebClipView scrollWheel:]):
   7485         * WebView.subproj/WebView.m:
   7486         (-[WebViewPrivate init]):
   7487         (-[WebView drawRect:]):
   7488         (-[WebView _dashboardBehavior:]):
   7489         * WebView.subproj/WebViewInternal.h:
   7490         * WebView.subproj/WebViewPrivate.h:
   7491 
   7492 === Safari-187 ===
   7493 
   7494 2005-02-17  Vicki Murley <vicki (a] apple.com>
   7495 
   7496 	- roll out this change, since it causes a 1.5% performance regression
   7497 
   7498     2005-02-15  Richard Williamson   <rjw (a] apple.com>
   7499         
   7500         Fixed <rdar://problem/3999467> when Osaka-Mono is specified as fixed width font, Osaka used instead
   7501         
   7502         Lie about Osaka-Mono.  Treat it as fixed pitch, even though,
   7503         strictly speaking it isn't.  (Similar to what we do with
   7504         Courier New.)
   7505 
   7506         Reviewed by David Harrison.
   7507 
   7508         * WebCoreSupport.subproj/WebTextRenderer.m:
   7509         (-[WebTextRenderer _computeWidthForSpace]):
   7510         * WebCoreSupport.subproj/WebTextRendererFactory.h:
   7511         * WebCoreSupport.subproj/WebTextRendererFactory.m:
   7512         (-[NSFont _web_isFakeFixedPitch]): 
   7513         (-[WebTextRendererFactory isFontFixedPitch:]):
   7514         (-[WebTextRendererFactory fontWithFamily:traits:size:]):
   7515 
   7516 2005-02-17  John Sullivan  <sullivan (a] apple.com>
   7517 
   7518         Reviewed by Ken.
   7519         
   7520         - fixed <rdar://problem/3997185> The Web view on .Mac Prefs caused System Prefs 
   7521         to lockup (resolved by re-boot only)
   7522 
   7523         * WebCoreSupport.subproj/WebBridge.m:
   7524         (-[WebBridge nextKeyViewOutsideWebFrameViews]):
   7525         Don't allow recursion here; assert on debug build, return nil on deployment. I
   7526         couldn't get my machine into a state to repro this problem (and neither could the
   7527         originator), but it's obvious from the stack crawl that this method was recursing
   7528         when it shouldn't have.
   7529 
   7530 2005-02-16  John Sullivan  <sullivan (a] apple.com>
   7531 
   7532         Written by Darin, reviewed by me.
   7533         
   7534         - WebKit part of fix for <rdar://problem/4007384> 
   7535         FILTER: Bookmark of RSS with Japanese search word & multiple RSS pages loses filter
   7536 
   7537         * DOM.subproj/DOMPrivate.h:
   7538         updated this file, which is a copy of the WebCore version
   7539 
   7540 2005-02-16  Richard Williamson   <rjw (a] apple.com>
   7541 
   7542 	Fixed <rdar://problem/3966973> Tiger 8A357: Binary Compatiblity: frequent Webstractor.app crashes [WebImageData _nextFrame]
   7543 
   7544 	Webstractor.app was playing tricks to create thumbnails of
   7545 	pages.  This caused the 'focusView' to be incorrect during
   7546 	animated GIF frame rendering.
   7547 
   7548         Reviewed by Chris.
   7549 
   7550         * WebCoreSupport.subproj/WebImageRenderer.m:
   7551         (-[WebImageRenderer _startOrContinueAnimationIfNecessary]):
   7552 
   7553 2005-02-16  Vicki Murley  <vicki (a] apple.com>
   7554 
   7555         Reviewed by me, code change by Darin.
   7556 
   7557         - fixed the build on Panther
   7558 
   7559         * WebView.subproj/WebFormDataStream.m: (webSetHTTPBody):
   7560         Added a Panther-specific code path that just loads all the data into one big
   7561         NSData object. This means that bug 3686434 won't be fixed on SUPanWheat; we'll
   7562         still load the file into memory before sending it to the server on Panther.
   7563 
   7564 2005-02-15  Richard Williamson   <rjw (a] apple.com>
   7565 
   7566 	Fixed <rdar://problem/3998368> Tiger8A376: WebTextRenderer assertion failure in Safari while browsing news.bbc.co.uk
   7567 
   7568 	Removed use of FATAL_ALWAYS from getUncachedWidth().  It's unclear
   7569 	why we would trigger the FATAL_ALWAYS.  In the past we've seen
   7570 	the message triggered because of corrupt fonts.  Anyway, in this
   7571 	particular case, we will now return 0 for the character width,
   7572 	rather than exiting.
   7573 
   7574         Reviewed by David Harrison.
   7575 
   7576         * WebCoreSupport.subproj/WebTextRenderer.m:
   7577         (getUncachedWidth):
   7578 
   7579 2005-02-15  Richard Williamson   <rjw (a] apple.com>
   7580 
   7581 	Fixed <rdar://problem/3999467> when Osaka-Mono is specified as fixed width font, Osaka used instead
   7582 
   7583 	Lie about Osaka-Mono.  Treat it as fixed pitch, even though,
   7584 	strictly speaking it isn't.  (Similar to what we do with
   7585 	Courier New.)
   7586 
   7587         Reviewed by David Harrison.
   7588 
   7589         * WebCoreSupport.subproj/WebTextRenderer.m:
   7590         (-[WebTextRenderer _computeWidthForSpace]):
   7591         * WebCoreSupport.subproj/WebTextRendererFactory.h:
   7592         * WebCoreSupport.subproj/WebTextRendererFactory.m:
   7593         (-[NSFont _web_isFakeFixedPitch]):
   7594         (-[WebTextRendererFactory isFontFixedPitch:]):
   7595         (-[WebTextRendererFactory fontWithFamily:traits:size:]):
   7596 
   7597 2005-02-14  Darin Adler  <darin (a] apple.com>
   7598 
   7599         Reviewed by John.
   7600 
   7601         - fixed <rdar://problem/3686434> Safari uses too much RAM on file upload, leading to malloc errors and crashes (HP printers)
   7602 
   7603         * WebView.subproj/WebFormDataStream.h: Added webSetHTTPBody, which creates and connects an appropriate
   7604         stream to an NSMutableURLRequest.
   7605         * WebView.subproj/WebFormDataStream.m: Added implementation here.
   7606 
   7607         * WebCoreSupport.subproj/WebBridge.m:
   7608         (-[WebBridge syncLoadResourceWithURL:customHeaders:postData:finalURL:responseHeaders:statusCode:]):
   7609         Use webSetHTTPBody.
   7610         * WebCoreSupport.subproj/WebSubresourceClient.m:
   7611         (+[WebSubresourceClient startLoadingResource:withURL:customHeaders:postData:referrer:forDataSource:]):
   7612         Use webSetHTTPBody.
   7613         * WebView.subproj/WebFrame.m:
   7614         (-[WebFrame _loadItem:withLoadType:]): Use webSetHTTPBody.
   7615         (-[WebFrame _postWithURL:referrer:target:data:contentType:triggeringEvent:form:formValues:]): Ditto.
   7616 
   7617         * English.lproj/StringsNotToBeLocalized.txt: Updated for this change and other recent changes.
   7618 
   7619 2005-02-11  Richard Williamson   <rjw (a] apple.com>
   7620 
   7621 	Fixed <rdar://problem/4002505> 8A378: Endlessly animating gif's on http://www.entropy.ch
   7622 	
   7623 	If animated images had no loop count property we were incorrectly
   7624 	looping forver.  Note, that in the course of fixing this bug
   7625 	I found that ImageIO is incorrectly NOT reporting the loop count
   7626 	for a whole class of animated GIFs.
   7627 
   7628         Reviewed by Ken Kocienda.
   7629 
   7630         * WebCoreSupport.subproj/WebImageData.m:
   7631         (-[WebImageData _repetitionCount]):
   7632 
   7633 === Safari-186 ===
   7634 
   7635 2005-02-11  Vicki Murley  <vicki (a] apple.com>
   7636 
   7637         Reviewed by Darin.
   7638 
   7639 	- fix deployment build on Panther
   7640  
   7641         * WebView.subproj/WebHTMLView.m:
   7642         (-[WebHTMLView changeBaseWritingDirection:]): ifdef out NSWritingDirectionNatural
   7643         (-[WebHTMLView toggleBaseWritingDirection:]): fix a spacing issue
   7644 
   7645 2005-02-10  David Harrison  <harrison (a] apple.com>
   7646 
   7647         Reviewed by Richard.
   7648 
   7649         <rdar://problem/3991652> REGRESSION (Mail): Deleting entire line in reply deletes extra blank line and moves insertion point
   7650         
   7651         * WebView.subproj/WebHTMLView.m:
   7652         (-[WebHTMLView _deleteRange:killRing:prepend:smartDeleteOK:isTypingAction:]):
   7653         (-[WebHTMLView _startDraggingImage:at:operation:event:sourceIsDHTML:DHTMLWroteData:]):
   7654         (-[WebHTMLView _deleteWithDirection:granularity:killRing:isTypingAction:]):
   7655         (-[WebHTMLView selectToMark:]):
   7656         (-[WebHTMLView swapWithMark:]):
   7657         (-[WebHTMLView transpose:]):
   7658         (-[WebHTMLView _selectMarkedText]):
   7659         (-[WebHTMLView _selectRangeInMarkedText:]):
   7660         Adopt new default affinity of NSSelectionAffinityDownstream as of <rdar://problem/3937447>.
   7661         
   7662 2005-02-10  Darin Adler  <darin (a] apple.com>
   7663 
   7664         Reviewed by Harrison.
   7665 
   7666         - fixed <rdar://problem/4002084> Setting ResourceLoadDelegate to nil can cause a crash
   7667 
   7668         * WebView.subproj/WebView.m: (-[WebView _cacheResourceLoadDelegateImplementations]):
   7669         Set booleans to either YES or NO, rather than setting them only in the YES case.
   7670 
   7671 2005-02-10  Darin Adler  <darin (a] apple.com>
   7672 
   7673         Reviewed by Harrison.
   7674 
   7675         - fixed <rdar://problem/3991225> Format->Style->Underline menu item does not get checked when selected text is underlined
   7676 
   7677         * WebView.subproj/WebHTMLView.m:
   7678         (-[WebHTMLView validateUserInterfaceItem:]): Added tons of additional cases in here for all the
   7679         "action" style methods in this class that don't always want to be valid. For the ones where state
   7680         makes sense, added the state-checking code too for the menu item case.
   7681         (-[WebHTMLView ignoreSpelling:]): Removed unnecessary "editable text only" check since this command
   7682         would work fine on a non-editable selection.
   7683         (-[WebHTMLView swapWithMark:]): Ditto.
   7684         (-[WebHTMLView changeBaseWritingDirection:]): Added. Like toggle, but based on the sender's tag.
   7685 
   7686 2005-02-08  Darin Adler  <darin (a] apple.com>
   7687 
   7688         "Reviewed" by Richard (he told me the file was obsolete).
   7689 
   7690         - got rid of an obsolete file
   7691 
   7692         * Plugins.subproj/npsap.h: Removed.
   7693         * copy-webcore-files-to-webkit: Removed npsap.h.
   7694 
   7695 2005-02-09  Richard Williamson   <rjw (a] apple.com>
   7696 
   7697 	Fixed <rdar://problem/4000073> non-screen font error on www.worldofwarcraft.com
   7698 
   7699         Reviewed by John Sullivan.
   7700 
   7701         * WebCoreSupport.subproj/WebTextRenderer.m:
   7702         (-[WebTextRenderer _smallCapsFont]):
   7703 
   7704 === Safari-185 ===
   7705 
   7706 2005-02-07  Chris Blumenberg  <cblu (a] apple.com>
   7707 
   7708 	Fixed: <rdar://problem/3993354> Safari claims to put RTFD on the pasteboard, but doesn't, in some cases
   7709 
   7710         Reviewed by john.
   7711 
   7712         * WebView.subproj/WebHTMLView.m:
   7713         (-[WebHTMLView _stripAttachmentCharactersFromAttributedString:]): moved
   7714         (-[WebHTMLView _writeSelectionWithPasteboardTypes:toPasteboard:cachedAttributedString:]): take cachedAttributedString parameter in case the attributed string was gotten already
   7715         (-[WebHTMLView _writeSelectionToPasteboard:]): omit RTFD from the types list when there are no attachments
   7716 
   7717 2005-02-07  David Harrison  <harrison (a] apple.com>
   7718 
   7719         Reviewed by Ken.
   7720 
   7721         <rdar://problem/3990693> REGRESSION (8A373): ctrl-k now deletes just one character instead of line
   7722         
   7723         * WebView.subproj/WebHTMLView.m:
   7724         (-[WebHTMLView _deleteWithDirection:granularity:killRing:isTypingAction:]):
   7725         Set the selection so that deleteKeyPressedWithSmartDelete knows what to delete.
   7726 
   7727 2005-02-06  Darin Adler  <darin (a] apple.com>
   7728 
   7729         Reviewed by Maciej.
   7730 
   7731         - fixed <rdar://problem/3963166> PDFView SPI print method is being deprecated, moving to PDFDocument; please update WebKit
   7732 
   7733         * WebView.subproj/WebPDFView.m: (-[WebPDFView printOperationWithPrintInfo:]): Target the document instead of the view.
   7734 
   7735         * English.lproj/StringsNotToBeLocalized.txt: Updated for recent changes and also moved one translation to be a file-specific
   7736         item rather than a file-independent one.
   7737 
   7738 2005-02-05  Chris Blumenberg  <cblu (a] apple.com>
   7739 
   7740 	Fixed: <rdar://problem/3991974> REGRESSION: www.jabra.com world location screen does not work
   7741 
   7742         Reviewed by hyatt.
   7743 
   7744         * WebCoreSupport.subproj/WebBridge.m:
   7745         (-[WebBridge viewForPluginWithURL:attributeNames:attributeValues:MIMEType:]): use the baseURL from the bridge rather than from the response
   7746 
   7747 2005-02-04  Chris Blumenberg  <cblu (a] apple.com>
   7748 
   7749 	Fixed: <rdar://problem/3802781> rtf->html pasteboard conversion using xhtml
   7750 
   7751         Reviewed by kocienda.
   7752 
   7753         * WebView.subproj/WebHTMLView.m:
   7754         (+[WebHTMLView _excludedElementsForAttributedStringConversion]): new
   7755         (-[WebHTMLView _documentFragmentFromPasteboard:allowPlainText:]): call _excludedElementsForAttributedStringConversion
   7756 
   7757 2005-02-04  Chris Blumenberg  <cblu (a] apple.com>
   7758 
   7759 	Fixed: <rdar://problem/3832973> copy text from PowerPoint, paste into Blot (or presumably Mail) and get a single missing image icon
   7760 
   7761         Reviewed by john.
   7762 
   7763         * WebView.subproj/WebHTMLView.m:
   7764         (-[WebHTMLView _documentFragmentFromPasteboard:allowPlainText:]): prefer RTF and RTFD over images just as NSTextView does
   7765 
   7766 2005-02-03  Chris Blumenberg  <cblu (a] apple.com>
   7767 
   7768 	Fixed: <rdar://problem/3555137> REGRESSION (125-173): Flash animation can erase parts of chrome (bookmarks bar & tab bar)
   7769 
   7770 	convertRect:toView: returns incorrect results inside of viewWillMoveToWindow: with a nil window. Workaround this by catching this case.
   7771 
   7772         Reviewed by darin.
   7773 
   7774         * Plugins.subproj/WebBaseNetscapePluginView.m:
   7775         (-[WebBaseNetscapePluginView superviewsHaveSuperviews]): new
   7776         (-[WebBaseNetscapePluginView saveAndSetPortStateForUpdate:]): clip out the plug-in view when superviewsHaveSuperviews returns NO
   7777 
   7778 2005-02-03  Chris Blumenberg  <cblu (a] apple.com>
   7779 
   7780 	Fixed: <rdar://problem/3893513> Sun iPlanet app: when saving to a file it brings up a window with the thing to be saved instead
   7781 
   7782         Reviewed by adele.
   7783 
   7784         * WebView.subproj/WebTextView.m:
   7785         (+[WebTextView unsupportedTextMIMETypes]): added "text/ldif" to the list of MIME types that our text view doesn't handle
   7786 
   7787 === Safari-183 ===
   7788 
   7789 2005-02-03  Chris Blumenberg  <cblu (a] apple.com>
   7790 
   7791         * English.lproj/StringsNotToBeLocalized.txt: updated
   7792 
   7793 2005-02-03  Chris Blumenberg  <cblu (a] apple.com>
   7794 
   7795 	Fixed: <rdar://problem/3989611> Evite style "add vCalendar to calendar" do not work
   7796 
   7797         Reviewed by adele.
   7798 
   7799         * WebView.subproj/WebTextView.m:
   7800         (+[WebTextView unsupportedTextMIMETypes]): added "text/x-vcalendar" to the list of MIME types our text view doesn't handle
   7801 
   7802 2005-02-03  Vicki Murley  <vicki (a] apple.com>
   7803 
   7804         Reviewed by Darin.
   7805 
   7806 	- fix deployment build breakage on Panther
   7807  
   7808         * WebView.subproj/WebHTMLView.m:
   7809         (-[WebHTMLView toggleBaseWritingDirection:]):
   7810 
   7811 2005-02-02  John Sullivan  <sullivan (a] apple.com>
   7812 
   7813         Reviewed by Chris.
   7814         
   7815         - WebKit part of fix for <rdar://problem/3980651> REGRESSION (125-180): Huge number of pages printed from certain page, 
   7816         iFrame involved
   7817         
   7818         This also fixes the problems with printing from GMail, yay!
   7819 
   7820         * WebView.subproj/WebHTMLView.m:
   7821         (-[WebHTMLView _setPrinting:minimumPageWidth:maximumPageWidth:adjustViewSize:]):
   7822         Don't adjust margins for header/footer here, because this is called for each subframe.
   7823         (-[WebHTMLView knowsPageRange:]):
   7824         Do adjust margins for header/footer here (analogous to WebTextView and WebImageView).
   7825         Also, round the page height to an integer here (noticed in passing).
   7826 
   7827 2005-02-02  Chris Blumenberg  <cblu (a] apple.com>
   7828 
   7829 	Fixed: <rdar://problem/3986546> Cut, delete, and paste menu items are active when a image is opened in window
   7830 
   7831         Reviewed by john.
   7832 
   7833         * WebView.subproj/WebView.m:
   7834         (-[WebView _responderValidateUserInterfaceItem:]): new, has the responder validate the item 
   7835         (-[WebView validateUserInterfaceItem:]): call VALIDATE for each repsonder selector using FOR_EACH_RESPONDER_SELECTOR macro
   7836         (-[WebView _performResponderOperation:with:]): call factored out method _responderForResponderOperations
   7837         (-[WebView _responderForResponderOperations]): new, code from _performResponderOperation:with:
   7838 
   7839 2005-02-02  Chris Blumenberg  <cblu (a] apple.com>
   7840 
   7841 	Fixed: <rdar://problem/3983628> control-click on WebView is not selecting the word under the cursor (Mail, non-editable WebView)
   7842 
   7843         Reviewed by rjw.
   7844 
   7845         * WebCoreSupport.subproj/WebBridge.m:
   7846         (-[WebBridge selectWordBeforeMenuEvent]): new
   7847         * WebView.subproj/WebView.m:
   7848         (-[WebView _selectWordBeforeMenuEvent]): new SPI
   7849         (-[WebView _setSelectWordBeforeMenuEvent:]): new SPI
   7850         * WebView.subproj/WebViewInternal.h:
   7851         * WebView.subproj/WebViewPrivate.h:
   7852 
   7853 2005-02-02  Chris Blumenberg  <cblu (a] apple.com>
   7854 
   7855 	Fixed: <rdar://problem/3986013> Assertion failure going back after page load error (no apparent problem in nondebug build)
   7856 
   7857         Reviewed by rjw.
   7858 
   7859         * WebView.subproj/WebDataSource.m:
   7860         (-[WebDataSource _setPrimaryLoadComplete:]): don't set the data source data when the main client is nil
   7861 
   7862 2005-02-02  Ken Kocienda  <kocienda (a] apple.com>
   7863 
   7864         Reviewed by Darin
   7865 
   7866         Fix for this bug:
   7867         
   7868         <rdar://problem/3823109> WebKit should support -toggleBaseWritingDirection: (bidi editing support)
   7869 
   7870         * WebView.subproj/WebHTMLView.m:
   7871         (-[WebHTMLView _applyParagraphStyleToSelection:withUndoAction:]): New function that calls through to
   7872         new feature that allows callers to force all properties in a style to be applied as block styles.
   7873         (-[WebHTMLView _alignSelectionUsingCSSValue:withUndoAction:]): Removed FIXME comment for something that has been fixed.
   7874         (-[WebHTMLView toggleBaseWritingDirection:]): Implemented.
   7875 
   7876 2005-02-01  Richard Williamson   <rjw (a] apple.com>
   7877 
   7878 	Fixed <rdar://problem/3977727> WebKit should use new SPI to support faster GIF rendering
   7879 
   7880 	Note:  This REQUIRES build >= 3A362 when building on Tiger.
   7881 
   7882         Reviewed by John.
   7883 
   7884         * WebCoreSupport.subproj/WebImageData.m:
   7885         (-[WebImageData _imageSourceOptions]):
   7886 
   7887 === Safari-182 ===
   7888 
   7889 2005-02-01  Richard Williamson   <rjw (a] apple.com>
   7890 
   7891 	Added new SPI for <rdar://problem/3967063> need spi on WebView to turn of lcd text for Dashboard
   7892 
   7893         Reviewed by Chris.
   7894 
   7895         * WebCoreSupport.subproj/WebTextRenderer.m:
   7896         (_drawGlyphs):
   7897         * WebView.subproj/WebView.m:
   7898         (-[WebView drawRect:]):
   7899         (-[WebView _dashboardBehavior:]):
   7900         (+[WebView _setShouldUseFontSmoothing:]):
   7901         (+[WebView _shouldUseFontSmoothing]):
   7902         * WebView.subproj/WebViewInternal.h:
   7903         * WebView.subproj/WebViewPrivate.h:
   7904 
   7905 2005-01-31  Chris Blumenberg  <cblu (a] apple.com>
   7906 
   7907 	Fixed: <rdar://problem/3949806> REGRESSION: Source window fails to refresh correctly on reload
   7908 
   7909 	The data method was being called on WebDataSource before the data was set. This fix makes WebDataSource set the data before releasing the main client instead of waiting for the main client to set it when it is dealloced.
   7910 
   7911         Reviewed by darin.
   7912 
   7913         * WebView.subproj/WebDataSource.m:
   7914         (-[WebDataSource _setData:]): moved within file
   7915         (-[WebDataSource _setPrimaryLoadComplete:]): call _setData: with the data from the main client before letting go of the main client
   7916         * WebView.subproj/WebDataSourcePrivate.h:
   7917         * WebView.subproj/WebMainResourceClient.m:
   7918         (-[WebMainResourceClient releaseResources]): removed call to _setData: since the data source may need the data before releaseResources is called
   7919 
   7920 2005-01-31  Chris Blumenberg  <cblu (a] apple.com>
   7921 
   7922 	Fixed: <rdar://problem/3946285> Seed: Safari crashed by selecting all at internet-moebel.com
   7923 
   7924         Reviewed by john.
   7925 
   7926         * WebView.subproj/WebHTMLView.m:
   7927         (-[WebHTMLView _hitViewForEvent:]): new, factored hit test hack to this method
   7928         (-[WebHTMLView _updateMouseoverWithEvent:): call _hitViewForEvent:
   7929         (-[WebHTMLView acceptsFirstMouse:]): call _setMouseDownEvent: and _isSelectionEvent: on the hit HTMLView or else when it's asked to drag it will assert
   7930         (-[WebHTMLView shouldDelayWindowOrderingForEvent:]): ditto
   7931 
   7932 2005-01-31  David Harrison  <harrison (a] apple.com>
   7933 
   7934         Reviewed by Darin.
   7935 
   7936         <rdar://problem/3961239> AX Setting AXFocused on AXScrollArea of AXWebArea will cause keyboard selection change
   7937 
   7938         * WebView.subproj/WebHTMLView.m:
   7939         (-[WebHTMLView maintainsInactiveSelection]):
   7940         Keep the selection when the new first respomder is our own scrollview, in both editable and non-editaqble content.
   7941 
   7942 2005-01-31  Jens Alfke  <jens (a] apple.com>
   7943 
   7944         Reviewed by John.
   7945 
   7946 	- Fixed <rdar://problem/3903199> REGRESSION: Large background patterns slide around while loading
   7947 
   7948         * WebCoreSupport.subproj/WebImageData.m:
   7949         (drawPattern):
   7950         (-[WebImageData tileInRect:fromPoint:context:]):
   7951 
   7952 2005-01-30  Darin Adler  <darin (a] apple.com>
   7953 
   7954         Reviewed by John.
   7955 
   7956         - fixed <rdar://problem/3965265> Safari displays HTML as source when default encoding is Hebrew (due to direction overrides added by encoding converter)
   7957 
   7958         * WebView.subproj/WebPreferencesPrivate.h: Added _systemCFStringEncoding, and changed
   7959         _setInitialDefaultTextEncodingToSystemEncoding to be a class method.
   7960         * WebView.subproj/WebPreferences.m:
   7961         (+[WebPreferences _systemCFStringEncoding]): Added. New SPI to be used by Safari. Broken out of
   7962         _setInitialDefaultTextEncodingToSystemEncoding, but also added cases for MacArabic and MacHebrew.
   7963         (+[WebPreferences _setInitialDefaultTextEncodingToSystemEncoding]): Refactor to use _systemCFStringEncoding.
   7964 
   7965 2005-01-28  Jens Alfke  <jens (a] apple.com>
   7966 
   7967         Reviewed by Richard.
   7968 
   7969 	<rdar://problem/3727680> printing some page with WebKit generates a PDF with a 1x1 image with soft mask (causes Acrobat to hang during print spooling)
   7970 
   7971 	Detect 1x1 images, extract and cache color of single pixel, reduce draw and tile operations to a color fill (or to a no-op if the pixel is clear.)
   7972 
   7973         * WebCoreSupport.subproj/WebImageData.h:
   7974         * WebCoreSupport.subproj/WebImageData.m:
   7975         (-[WebImageData _invalidateImages]):
   7976         (-[WebImageData _checkSolidColor:]):
   7977         (-[WebImageData _cacheImages:allImages:]):
   7978         (-[WebImageData _fillSolidColorInRect:compositeOperation:context:]):
   7979         (-[WebImageData tileInRect:fromPoint:context:]):
   7980 
   7981 2005-01-28  David Harrison  <harrison (a] apple.com>
   7982 
   7983         Reviewed by Darin.
   7984 
   7985         <rdar://problem/3584942> AX: Safari Accessibility parent-child mismatch
   7986 
   7987         Use AppKit SPI _accessibilityParentForSubview to return KWQAccObject parent of AppKit AX object.
   7988         
   7989         * WebView.subproj/WebHTMLView.m:
   7990         (-[WebHTMLView _accessibilityParentForSubview:]):
   7991         New.
   7992 
   7993 2005-01-28  Chris Blumenberg  <cblu (a] apple.com>
   7994 
   7995 	WebKit side of: <rdar://problem/3951283> can view pages from the back/forward cache that should be disallowed by Parental Controls
   7996 
   7997         Reviewed by john.
   7998 
   7999         * WebView.subproj/WebDefaultPolicyDelegate.m:
   8000         (-[WebDefaultPolicyDelegate webView:shouldGoToHistoryItem:]): new private delegate method
   8001         * WebView.subproj/WebFrame.m:
   8002         (-[WebFrame _goToItem:withLoadType:]): call new delegate method
   8003         * WebView.subproj/WebPolicyDelegatePrivate.h:
   8004 
   8005 2005-01-26  Maciej Stachowiak  <mjs (a] apple.com>
   8006 
   8007         Reviewed by Darin, Hyatt and Ken.
   8008 
   8009 	<rdar://problem/3790449> REGRESSION (Mail): underline behavior is flaky because of how CSS handles text-decoration
   8010 
   8011         * WebView.subproj/WebHTMLView.m:
   8012         (-[WebHTMLView _styleFromFontAttributes:]): Use new -khtml-text-decorations-in-effect
   8013 	property
   8014         (-[WebHTMLView _styleForAttributeChange:]): likewise
   8015         (-[WebHTMLView underline:]): likewise
   8016 
   8017 2005-01-27  Ken Kocienda  <kocienda (a] apple.com>
   8018 
   8019         Reviewed by Maciej
   8020 
   8021         * WebView.subproj/WebHTMLView.m:
   8022         (-[WebHTMLView _handleKillRing:prepend:]): New helper function. Code factored out from 
   8023          _deleteRange:killRing:prepend:smartDeleteOK:isTypingAction:.
   8024         (-[WebHTMLView _deleteRange:killRing:prepend:smartDeleteOK:isTypingAction:]): No longer takes 
   8025         unused preflight argument. Now takes new isTypingAction argument. Uses isTypingAction to
   8026         determine which flavor of delete command to call.
   8027         (-[WebHTMLView _deleteSelection]): No longer passes unused preflight argument. Now passes new isTypingAction argument.
   8028         (-[WebHTMLView _deleteWithDirection:granularity:killRing:isTypingAction:]): Rearranged code to call
   8029         correct flavor of delete command, based on whether typing should be preserved. Some other cleanups.
   8030         (-[WebHTMLView deleteForward:]): Add _isEditable check.
   8031         (-[WebHTMLView deleteBackward:]): Now calls _deleteWithDirection instead of having unique behavior different 
   8032         from forward delete.
   8033         (-[WebHTMLView deleteWordForward:]): Add new isTypingAction flag to _deleteWithDirection call.
   8034         (-[WebHTMLView deleteWordBackward:]): Ditto.
   8035         (-[WebHTMLView deleteToBeginningOfLine:]): Ditto.
   8036         (-[WebHTMLView deleteToEndOfLine:]): Ditto.
   8037         (-[WebHTMLView deleteToBeginningOfParagraph:]): Ditto.
   8038         (-[WebHTMLView deleteToEndOfParagraph:]): Ditto.
   8039         (-[WebHTMLView deleteToMark:]): Ditto.
   8040 
   8041 === Safari-181 ===
   8042 
   8043 2005-01-27  Chris Blumenberg  <cblu (a] apple.com>
   8044 
   8045 	Fixed: <rdar://problem/3973272> REGRESSION: Safari uses QT plugin to display PNG images
   8046 
   8047         Reviewed by john.
   8048 
   8049         * Plugins.subproj/WebBasePluginPackage.m: use renamed QT bundle ID
   8050 
   8051 2005-01-26  Darin Adler  <darin (a] apple.com>
   8052 
   8053         Reviewed by John.
   8054 
   8055         - fixed <rdar://problem/3829517> WebView still draws white when setDrawsBackground set to NO and no content loaded yet
   8056 
   8057         * WebView.subproj/WebFrameView.m: (-[WebFrameView drawRect:]): Check drawsBackground, and don't
   8058         draw the white "no document" background if it's NO. This fixes things for frames with no document.
   8059         * WebView.subproj/WebImageView.m: (-[WebImageView drawRect:]): Same as above. This fixes things
   8060         for frames with just an image.
   8061         * WebView.subproj/WebFrame.m: (-[WebFrame _updateDrawsBackground]): Call setDrawsBackground: on the
   8062         document view if it implements it. This fixes things for frames with plain text.
   8063 
   8064 2005-01-25  John Sullivan  <sullivan (a] apple.com>
   8065 
   8066         Reviewed by Chris.
   8067         
   8068         - WebKit part of fix for: <rdar://problem/3970670> Text context menu 
   8069           in WebKit needs "Look Up in Dictionary" item
   8070 
   8071         * WebView.subproj/WebDefaultContextMenuDelegate.m:
   8072         (localizedMenuTitleFromAppKit):
   8073         return English string in the case where AppKit bundle is found but doesn't
   8074         contain the expected string. This case will be hit by people testing with
   8075         an older AppKit.
   8076         (-[WebDefaultUIDelegate menuItemWithTag:]):
   8077         create Look Up in Dictionary item
   8078         (-[WebDefaultUIDelegate contextMenuItemsForElement:]):
   8079         add Look Up in Dictionary item and separator
   8080         (-[WebDefaultUIDelegate editingContextMenuItemsForElement:]):
   8081         ditto
   8082 
   8083         * WebView.subproj/WebHTMLView.m:
   8084         (-[WebHTMLView _lookUpInDictionaryFromMenu:]):
   8085         new method, handles bringing up the Dictionary window. Includes FIXMEs
   8086         for a couple of the known loose ends.
   8087         (-[WebHTMLView validateUserInterfaceItem:]):
   8088         handle Look Up in Dictionary item like the other new items
   8089         
   8090         * WebView.subproj/WebUIDelegatePrivate.h:
   8091         added SPI constant for Look Up in Dictionary menu item
   8092 
   8093 2005-01-24  Maciej Stachowiak  <mjs (a] apple.com>
   8094 
   8095         Fixed Panther build (missing ifdef)
   8096 
   8097         * WebView.subproj/WebDefaultContextMenuDelegate.m:
   8098 
   8099 2005-01-24  John Sullivan  <sullivan (a] apple.com>
   8100 
   8101         Reviewed by Darin.
   8102         
   8103         - WebKit part of fix for <rdar://problem/3960231> Text context menu in WebKit needs Spotlight and Google items
   8104         
   8105         * WebView.subproj/WebDefaultContextMenuDelegate.m:
   8106         (localizedMenuTitleFromAppKit):
   8107         new function, gets localized string from AppKit so we can avoid adding localized
   8108         strings to WebKit at this late date in Tiger. Returns the non-localized English
   8109         string if we can't find the localized string in AppKit.
   8110         (-[WebDefaultUIDelegate menuItemWithTag:]):
   8111         handle the two new menu items by tag name
   8112         (-[WebDefaultUIDelegate contextMenuItemsForElement:]):
   8113         add menu items for Search in Google and Search in Spotlight to selected-text menu item
   8114         for the noneditable case
   8115         (-[WebDefaultUIDelegate editingContextMenuItemsForElement:]):
   8116         add menu items for Search in Google and Search in Spotlight to selected-text menu item
   8117         for the editable case
   8118 
   8119         * WebView.subproj/WebHTMLView.m:
   8120         (-[WebHTMLView _searchWithGoogleFromMenu:]):
   8121         implement this menu item action method, using same method name and implementation as NSTextView
   8122         (-[WebHTMLView _searchWithSpotlightFromMenu:]):
   8123         implement this menu item action method, using same basic implementation as NSTextView
   8124         (-[WebHTMLView validateUserInterfaceItem:]):
   8125         validate new menu items
   8126         
   8127         * WebView.subproj/WebUIDelegatePrivate.h:
   8128         define new tags for new menu items
   8129 
   8130         * English.lproj/StringsNotToBeLocalized.txt:
   8131         updated for these changes
   8132 
   8133 2005-01-24  Darin Adler  <darin (a] apple.com>
   8134 
   8135         * WebView.subproj/WebDataSource.m: (+[WebDataSource _repTypesAllowImageTypeOmission:]):
   8136         Do the same check as for view types, so the representation types are consistent.
   8137 
   8138 2005-01-24  Darin Adler  <darin (a] apple.com>
   8139 
   8140         Reviewed by John.
   8141 
   8142         - fixed <rdar://problem/3791158> REGRESSION (Mail): copyFont: and pasteFont: copy and paste only the NSFont, not other attributes
   8143 
   8144         * WebView.subproj/WebHTMLView.m: (-[WebHTMLView _styleFromFontAttributes:]): Added the last
   8145         few loose ends here: strikethrough and underline.
   8146 
   8147         - fixed <rdar://problem/3967393> add a user default that lets you turn off WebKit PDF support
   8148 
   8149         * WebView.subproj/WebFrameView.m: (+[WebFrameView _viewTypesAllowImageTypeOmission:]):
   8150         Leave the PDF-handling classes out of the dictionary if the secret default is set.
   8151 
   8152         * English.lproj/StringsNotToBeLocalized.txt: Updated for recent changes.
   8153 
   8154 2005-01-20  Darin Adler  <darin (a] apple.com>
   8155 
   8156         Reviewed by Kristin Forster.
   8157 
   8158         - fixed <rdar://problem/3964972> update _initWithCGSEvent:eventRef: call in mouse moved workaround (breaks cursors in Carbon WebKit applications)
   8159 
   8160         * Carbon.subproj/HIWebView.m: (MouseMoved): Instead of munging the event record's window number directly
   8161         before calling _initWithCGSEvent, on Tiger we call _eventRelativeToWindow on the event after creating it.
   8162         Also added a check so that with Macromedia Contribute's workaround in place we don't do anything at all
   8163         to the event. Tested with both Contribute and CarbonWeb.
   8164 
   8165         * English.lproj/StringsNotToBeLocalized.txt: Update for recent changes.
   8166 
   8167 2005-01-20  Richard Williamson   <rjw (a] apple.com>
   8168 
   8169 	Fixed <rdar://problem/3815672> REGRESSION (Mail): Japanese text cannot be made bold
   8170 
   8171 	The AppKit's font substitution API doesn't match font traits! 
   8172 	It only find fonts that contain the appropriate glyphs.  This
   8173 	patch attempts to find the best variation within a family.
   8174 
   8175         Reviewed by Maciej.
   8176 
   8177         * WebCoreSupport.subproj/WebTextRenderer.m:
   8178         (-[WebTextRenderer _substituteFontForString:families:]):
   8179 
   8180 === Safari-180 ===
   8181 
   8182 2005-01-20  Ken Kocienda  <kocienda (a] apple.com>
   8183 
   8184         Reviewed by John
   8185 
   8186         Fix for this bug:
   8187         
   8188         <rdar://problem/3786659> REGRESSION (Mail): editable WebViews don't work with "size up" and "size down" NSFontManager changes
   8189 
   8190         * WebView.subproj/WebHTMLView.m:
   8191         (-[WebHTMLView _addToStyle:fontA:fontB:]): This is the WebKit side of the fix. Replaced unimplemented code blocks
   8192         with FIXME's in them for make bigger and make smaller with real working code.
   8193 
   8194 2005-01-19  David Hyatt  <hyatt (a] apple.com>
   8195 
   8196 	Fix for 3513067, spaces being lost when RTL text is rendered.  Make sure not to allow hangers or spaces
   8197 	in the margin.
   8198 	
   8199         Reviewed by john
   8200 	
   8201         * WebCoreSupport.subproj/WebTextRenderer.m:
   8202         (-[WebTextRenderer _createATSUTextLayoutForRun:style:]):
   8203 
   8204 2005-01-19  Darin Adler <darin (a] apple.com>
   8205 
   8206         Reviewed by vicki
   8207 
   8208 	- fixed <rdar://problem/3962559> stopAnimationsInView leaks after cvs-base
   8209  
   8210         * WebCoreSupport.subproj/WebImageData.m: (+[WebImageData stopAnimationsInView:]): add a release
   8211 
   8212 2005-01-19  Chris Blumenberg  <cblu (a] apple.com>
   8213 
   8214 	Fixed: <rdar://problem/3961809> plug-in code attempts to load empty URL
   8215 
   8216         Reviewed by john.
   8217 
   8218         * Plugins.subproj/WebNetscapePluginEmbeddedView.m:
   8219         (-[WebNetscapePluginEmbeddedView didStart]): don't start load if URL is empty
   8220 
   8221 2005-01-17  Darin Adler  <darin (a] apple.com>
   8222 
   8223         * DOM.subproj/DOMPrivate.h: Check in generated file.
   8224 
   8225 2005-01-17  Darin Adler  <darin (a] apple.com>
   8226 
   8227         Reviewed by John and Richard.
   8228 
   8229         - fixed <rdar://problem/3907453> printing a multi-page PDF document from Safari doesn't produce correct output
   8230 
   8231         * WebView.subproj/WebFrameViewPrivate.h: Added.
   8232         * WebView.subproj/WebFrameView.m:
   8233         (-[WebFrameView canPrintHeadersAndFooters]): Added. Returnes NO for documents that can't print headers or footers,
   8234         and delegates to the document view to answer the question. Defaults to NO, since only a view that actively does
   8235         the work is compatible with our header and footer code.
   8236         (-[WebFrameView printOperationWithPrintInfo:]): Added. Returns an NSPrintOperation set up for printing. The reason
   8237         we return this rather than an NSView is that in the PDFView case, the print info is changed around before creating
   8238         the NSPrintOperation, and also the PDFKit SPI works this way.
   8239 
   8240         * WebView.subproj/WebHTMLView.m: (-[WebHTMLView canPrintHeadersAndFooters]): Added. Returns YES.
   8241         * WebView.subproj/WebImageView.m: (-[WebImageView canPrintHeadersAndFooters]): Ditto.
   8242         * WebView.subproj/WebTextView.m: (-[WebTextView canPrintHeadersAndFooters]): Ditto.
   8243 
   8244         * WebView.subproj/WebPDFView.m:
   8245         (-[WebPDFView canPrintHeadersAndFooters]): Added. Returns NO.
   8246         (-[WebPDFView printOperationWithPrintInfo:]): Added. Calls getPrintOperationForPrintInfo: autoRotate:YES on the PDFView.
   8247 
   8248         * WebKit.pbproj/project.pbxproj: Added WebFrameViewPrivate.h as a new private header.
   8249 
   8250 2005-01-13  Chris Blumenberg  <cblu (a] apple.com>
   8251 
   8252 	Fixed: <rdar://problem/3932107> Safari does not load QT Cocoa plug-in if the WebPluginMIMETypes key is not in the info.plist
   8253 
   8254 	Fixing this bug required that we allow WebKit plug-ins (as well as Netscape plug-ins) support BP_CreatePluginMIMETypesPreferences
   8255 	which allows plug-ins create an auxiliary MIME types file.
   8256 
   8257         Reviewed by adele.
   8258 
   8259         * Plugins.subproj/WebBasePluginPackage.h:
   8260         * Plugins.subproj/WebBasePluginPackage.m:
   8261         (+[WebBasePluginPackage preferredLocalizationName]): moved from WebNetscapePluginPackage
   8262         (-[WebBasePluginPackage pListForPath:createFile:]): ditto
   8263         (-[WebBasePluginPackage getPluginInfoFromPLists]): ditto
   8264         (-[WebBasePluginPackage isLoaded]): return isLoaded ivar
   8265         (-[WebBasePluginPackage load]): if loaded, get BP_CreatePluginMIMETypesPreferences symbol
   8266         * Plugins.subproj/WebNetscapePluginPackage.h:
   8267         * Plugins.subproj/WebNetscapePluginPackage.m:
   8268         (-[WebNetscapePluginPackage load]): call super when done so BP_CreatePluginMIMETypesPreferences can be initialized
   8269         * Plugins.subproj/WebPluginPackage.m:
   8270         (-[WebPluginPackage initWithPath:]): call getPluginInfoFromPLists
   8271         (-[WebPluginPackage load]): call super when done so BP_CreatePluginMIMETypesPreferences can be initialized
   8272 
   8273 2005-01-13  Richard Williamson   <rjw (a] apple.com>
   8274 
   8275 	Fixed <rdar://problem/3952809> WebJavaPlugIn.h comments need method name corrected (webPlugInCallJava)
   8276 
   8277         Reviewed by Maciej.
   8278 
   8279         * Plugins.subproj/WebJavaPlugIn.h:
   8280 
   8281 === Safari-179 ===
   8282 
   8283 2005-01-13  Vicki Murley <vicki (a] apple.com>
   8284 
   8285         Reviewed by Adele.
   8286 
   8287         - fix <rdar://problem/3946836> Safari about box lists 2004 instead of 2005
   8288 
   8289         * WebKit.pbproj/project.pbxproj: bump "2004" to "2005"
   8290 
   8291 2005-01-13  Richard Williamson   <rjw (a] apple.com>
   8292 
   8293 	Fixed <rdar://problem/3951911> REGRESSION: Animated GIF images with loop counts no longer update
   8294 
   8295 	Draw last image after animation loop terminates.  (We
   8296 	were drawing the image at index+1, which doesn't exist!)
   8297 
   8298         Reviewed by Darin.
   8299 
   8300         * WebCoreSupport.subproj/WebImageData.m:
   8301         (-[WebImageData _nextFrame:]):
   8302 
   8303 2005-01-13  Richard Williamson   <rjw (a] apple.com>
   8304 
   8305 	Fixed <rdar://problem/3952084> REGRESSION: Links at projectseven.com now draw and update incorrectly during hover
   8306 
   8307 	Turn off use of new CGContextStrokeLineSegments API.  We should
   8308 	turn back on when 3952944 is fixed.
   8309 
   8310         Reviewed by Darin.
   8311 
   8312         * WebCoreSupport.subproj/WebTextRenderer.m:
   8313         (-[WebTextRenderer drawLineForCharacters:yOffset:width:color:thickness:]):
   8314 
   8315 2005-01-13  Chris Blumenberg  <cblu (a] apple.com>
   8316 
   8317 	Fixed: <rdar://problem/3937663> repro assertion failure and crash dragging image that has PDF source
   8318 
   8319         Reviewed by adele.
   8320 
   8321         * Misc.subproj/WebNSViewExtras.m:
   8322         (-[NSView _web_dragImage:rect:event:pasteboard:source:offset:]): if [WebImageRenderer image] returns nil, fallback to code that uses a file icon as the drag image
   8323         * WebCoreSupport.subproj/WebImageRendererFactory.m:
   8324         (-[WebImageRendererFactory supportedMIMETypes]): removed code that omits PDF and PostScript from the list since this omission is only needed in WebImageView
   8325         * WebView.subproj/WebImageView.m:
   8326         (+[WebImageView supportedImageMIMETypes]): added code that omits PDF and PostScript since we don't want WebImageView to render these types
   8327 
   8328 2005-01-10  Maciej Stachowiak  <mjs (a] apple.com>
   8329 
   8330         Reviewed by Darin.
   8331 
   8332 	<rdar://problem/3758033> REGRESSION (Mail): Support attributes in marked text (International input)
   8333         
   8334 	* WebCoreSupport.subproj/WebTextRenderer.m:
   8335         (-[WebTextRenderer drawLineForCharacters:yOffset:width:color:thickness:]): Changed to support
   8336 	underline thickness. Also added a bit of a hack here to move thickness 2 underlines down by
   8337 	.5 pixels, since the rendering engine can't give a fractional pixel offset.
   8338         * WebView.subproj/WebHTMLView.m:
   8339         (-[WebHTMLView validAttributesForMarkedText]): Support underline, underline color and marked
   8340 	clause attributes. Others that NSText supports are unimplemented for now.
   8341         (-[WebHTMLView firstRectForCharacterRange:]): Remove needless logging.
   8342         (-[WebHTMLView unmarkText]): Updated for new WebCore SPI.
   8343         (-[WebHTMLView _extractAttributes:ranges:fromAttributedString:]): New method to pull the attributes
   8344 	and ranges out of an attributed string.
   8345         (-[WebHTMLView setMarkedText:selectedRange:]): Extract attributes and pass to WebCore.
   8346         (-[WebHTMLView insertText:]): Add comment noting that we don't really handle attributed strings
   8347 	here.
   8348 
   8349 2005-01-12  Darin Adler  <darin (a] apple.com>
   8350 
   8351         Reviewed by Ken.
   8352 
   8353         - fixed <rdar://problem/3848257> WebView will draw more than AppKit asks it to, so views behind won't redraw enough (transparent WebView)
   8354 
   8355         * WebView.subproj/WebHTMLView.m:
   8356         (-[WebHTMLView _propagateDirtyRectsToOpaqueAncestors]): As recommended by Troy Stephens, do the
   8357         layouts here in this call, since it's before propagating the dirty rects to our ancestors.
   8358         This fixes the bug, but we only do it if the WebView is not opaque, because otherwise we can
   8359         optimize by only doing layouts you really need, and doing them later on is safe because we
   8360         know we don't need to draw any of the views behind us.
   8361         (-[WebHTMLView _layoutIfNeeded]): Added. Factored out from the method below.
   8362         (-[WebHTMLView _web_layoutIfNeededRecursive]): Added. Like the other "layout if needed" call,
   8363         but unconditional.
   8364         (-[WebHTMLView _web_layoutIfNeededRecursive:testDirtyRect:]): Factored out the guts into the
   8365         _layoutIfNeeded method above. Otherwise unchanged.
   8366         (-[NSView _web_layoutIfNeededRecursive]): Added.
   8367 
   8368         * WebView.subproj/WebFrame.m: (-[WebFrame _updateDrawsBackground]): Call setDrawsBackground:NO
   8369         on the scroll view when changing the frame to no longer be in "draws background" mode. This
   8370         is needed because the frame manages the "draws background" mode of the scroll view. It won't
   8371         have any effect if you call setDrawsBackground:NO before starting to use a WebView, but without
   8372         it calling setDrawsBackground:NO later won't have an immediate effect (easily visible in Safari).
   8373         This was hidden before because the HTML view was filling with transparent color, which blew away
   8374         the fill that was done by NSScrollView.
   8375 
   8376         - fixed <rdar://problem/3921129> reproducible crash at www.funnychristmas.com in CFSet manipulation in WebImageData
   8377 
   8378         * WebCoreSupport.subproj/WebImageData.m:
   8379         (-[WebImageData _imageSourceOptions]): Changed types so we don't need a cast.
   8380         (+[WebImageData stopAnimationsInView:]): Instead of building a set of sets, by putting in the sets with addObject,
   8381         build a single set using unionSet, and then iterate the objects instead of having to iterate the sets and then the
   8382         objects in each set. The old code ended up sharing the sets with the live code, when the whole idea was to gather
   8383         all the renderers because the process of stopping modifies the active sets.
   8384 
   8385 2005-01-12  Richard Williamson   <rjw (a] apple.com>
   8386 
   8387 	Fixed <rdar://problem/3926825> Safari ignores GIF loop count
   8388 
   8389 	Get loop count from file properties, not image properties.
   8390 
   8391         Reviewed by Ken Kocienda.
   8392 
   8393         * WebCoreSupport.subproj/WebImageData.h:
   8394         * WebCoreSupport.subproj/WebImageData.m:
   8395         (-[WebImageData _commonTermination]):
   8396         (-[WebImageData fileProperties]):
   8397         (-[WebImageData _floatProperty:type:at:]):
   8398         (-[WebImageData _floatFileProperty:type:]):
   8399         (-[WebImageData _repetitionCount]):
   8400 
   8401 2005-01-11  Chris Blumenberg  <cblu (a] apple.com>
   8402 
   8403 	Fixed: <rdar://problem/3934749> assertion failure in WebBaseNetscapePluginView loading movie
   8404 
   8405         Reviewed by john.
   8406 
   8407         * Plugins.subproj/WebBaseNetscapePluginView.m:
   8408         (-[WebBaseNetscapePluginView start]): call canStart before asserting about the webView
   8409 
   8410 2005-01-11  John Sullivan  <sullivan (a] apple.com>
   8411 
   8412         Reviewed by Darin.
   8413         
   8414         - fixed <rdar://problem/3446838> REGRESSION (Mail): text decorations don't print 
   8415         (e.g. <strike>, underline)
   8416 
   8417         * WebCoreSupport.subproj/WebTextRenderer.m:
   8418         (-[WebTextRenderer drawLineForCharacters:yOffset:withWidth:withColor:]):
   8419         This bottleneck routine for drawing a line was setting the linewidth to 0 when
   8420         the graphics context was not drawing to the screen. Thus, no lines. Now links
   8421         are underlined when printing from Safari (as well as Mail).
   8422 
   8423 2005-01-11  Richard Williamson   <rjw (a] apple.com>
   8424 
   8425 	Fixed 3949145.  CG has a much faster API for drawing lines.
   8426 	Switched over to that new API (CGContextStrokeLineSegments).
   8427 
   8428         Reviewed by John Sullivan.
   8429 
   8430         * WebCoreSupport.subproj/WebTextRenderer.m:
   8431         (-[WebTextRenderer drawLineForCharacters:yOffset:withWidth:withColor:]):
   8432 
   8433 2005-01-10  Chris Blumenberg  <cblu (a] apple.com>
   8434 
   8435 	Fixed: <rdar://problem/3948862> REGRESSION: missing images when RTFD is pasted into editable WebView
   8436 
   8437 	This problem occurred because we were creating image elements before creating corresponding image resources. The fix is to have AppKit call us back to create the resources before it creates the elements.
   8438 
   8439         Reviewed by john.
   8440 
   8441         * WebView.subproj/WebHTMLView.m:
   8442         (-[WebHTMLView _documentFragmentFromPasteboard:allowPlainText:]): don't deal with subresources since that's now done by the following method
   8443         (-[WebHTMLView resourceForData:preferredFilename:]): new handler method called by AppKit
   8444 
   8445 === Safari-178 ===
   8446 
   8447 2005-01-06  David Harrison  <harrison (a] apple.com>
   8448 
   8449         Reviewed by Dave Hyatt
   8450 
   8451         <rdar://problem/3588548> AX: tabbing does not work correctly with the screen reader and a focused link; need AXFocusedUIElement to work.
   8452 
   8453         * WebView.subproj/WebHTMLView.m:
   8454         (-[WebHTMLView accessibilityFocusedUIElement]):
   8455         Implement this so that AppKit can use it from NSAccessibilityHandleFocusChanged.
   8456 
   8457 2005-01-05  Chris Blumenberg  <cblu (a] apple.com>
   8458 
   8459 	Fixed: <rdar://problem/3936865> REGRESSION: canvas.drawImage no longer scales properly
   8460 
   8461         Reviewed by john.
   8462 
   8463         * WebCoreSupport.subproj/WebImageData.m: use the height of the inRect instead of the fromRect when setting the origin of the context
   8464 
   8465 2005-01-04  Chris Blumenberg  <cblu (a] apple.com>
   8466 
   8467 	Fixed: <rdar://problem/3928329> WebKit should pass nil for "language" to checkSpellingOfString:
   8468 
   8469         Reviewed by kocienda.
   8470 
   8471         * WebView.subproj/WebHTMLView.m:
   8472         (-[WebHTMLView _isSelectionMisspelled]): pass nil not @"" for language
   8473 
   8474 2004-12-21  Maciej Stachowiak  <mjs (a] apple.com>
   8475 
   8476         Reviewed by Darin.
   8477 
   8478 	<rdar://problem/3888931> frame naming allows malicious site to bring up a window when you click on a link in another
   8479 
   8480         Implement a security check on name frame visbility. This is the
   8481 	same rule as mozilla. You can only target frames by name if you
   8482 	are in the same window, have the same domain as the frame or an
   8483 	ancestor, or if it's a top level window have the same domain as
   8484 	the opener.
   8485 	
   8486         * WebView.subproj/WebFrame.m:
   8487         (-[WebFrame _shouldAllowAccessFrom:]):
   8488         (-[WebFrame _descendantFrameNamed:sourceFrame:]):
   8489         (-[WebFrame findFrameNamed:]):
   8490         * WebView.subproj/WebFramePrivate.h:
   8491         * WebView.subproj/WebView.m:
   8492         (-[WebView _findFrameInThisWindowNamed:sourceFrame:]):
   8493         (-[WebView _findFrameNamed:sourceFrame:]):
   8494         * WebView.subproj/WebViewPrivate.h:
   8495 
   8496 === Safari-177 ===
   8497 
   8498 === Safari-176 ===
   8499 
   8500 2004-12-20  Richard Williamson   <rjw (a] apple.com>
   8501 
   8502 	Add call to new API.  ImageIO deprecated some older (although
   8503 	quite new!) API.   This caused us to fail to build on 337 or later.
   8504 
   8505 	Developers wanting to build on older versions of Tiger must define
   8506 	USE_DEPRECATED_IMAGESOURCE_API in WebImageData.m.
   8507 
   8508         Reviewed by Vicki.
   8509 
   8510         * WebCoreSupport.subproj/WebImageData.m:
   8511         (-[WebImageData propertiesAtIndex:]):
   8512 
   8513 2004-12-20  Richard Williamson   <rjw (a] apple.com>
   8514 
   8515 	Don't call Tiger SPI on Panther.
   8516 
   8517         Reviewed by Vicki.
   8518 
   8519         * WebCoreSupport.subproj/WebTextRendererFactory.m:
   8520         (+[WebTextRendererFactory createSharedFactory]):
   8521 
   8522 2004-12-20  Richard Williamson   <rjw (a] apple.com>
   8523 
   8524 	Fixed <rdar://problem/3884448> WebKit should turn on CG local font cache
   8525 
   8526 	Enable mutli-tier font caching.  We should see a performance boost with this
   8527 	change.
   8528 
   8529         Reviewed by Chris.
   8530 
   8531         * WebCoreSupport.subproj/WebTextRendererFactory.m:
   8532         (+[WebTextRendererFactory createSharedFactory]):
   8533 
   8534 2004-12-20  Richard Williamson   <rjw (a] apple.com>
   8535 
   8536 	Fix image decoding to separately decode image meta data from actual image bits.  I
   8537 	incorrectly consolidated decode of meta data and image bits resulting in a huge
   8538 	performance regression.
   8539 
   8540 	Double size of WebCore cache on lower end machines.  On the PLT run on machines with
   8541 	256MB of memory, too many images were being evicted, causing a re-decode on the PLT.
   8542 	Upping the lower limit of the cache size ensure that no images are evicted (this
   8543 	goes hand-in-hand with the change to the minimum object size from 32K to 40K).
   8544 
   8545         Reviewed by Ken.
   8546 
   8547         * WebCoreSupport.subproj/WebImageData.h:
   8548         * WebCoreSupport.subproj/WebImageData.m:
   8549         (+[WebImageData initialize]):
   8550         (-[WebImageData _commonTermination]):
   8551         (-[WebImageData _invalidateImages]):
   8552         (-[WebImageData _invalidateImageProperties]):
   8553         (-[WebImageData imageAtIndex:]):
   8554         (-[WebImageData propertiesAtIndex:]):
   8555         (-[WebImageData _cacheImages:allImages:]):
   8556         (-[WebImageData decodeData:isComplete:callback:]):
   8557         (-[WebImageData incrementalLoadWithBytes:length:complete:callback:]):
   8558         * WebView.subproj/WebPreferences.m:
   8559         (+[WebPreferences initialize]):
   8560 
   8561 2004-12-20  Richard Williamson   <rjw (a] apple.com>
   8562 
   8563 	Fixed build problem caused by change to ImageIO API.
   8564 
   8565         Reviewed by Adele.
   8566 
   8567         * WebCoreSupport.subproj/WebImageData.m:
   8568 
   8569 2004-12-19  Darin Adler  <darin (a] apple.com>
   8570 
   8571         Reviewed by Kevin.
   8572 
   8573         - some garbage collection fixes
   8574 
   8575         * Misc.subproj/WebNSObjectExtras.h: (WebCFAutorelease): Replaced the old WebNSRetainCFRelease with this
   8576         much-easier-to-understand function cribbed from what David Harrison did in WebCore.
   8577 
   8578         * Misc.subproj/WebKitNSStringExtras.m: (+[NSString _web_encodingForResource:]): Use CFRelease here to
   8579         get rid of an unnecessary use of WebNSRetainCFRelease.
   8580         * Misc.subproj/WebNSURLExtras.m:
   8581         (+[NSURL _web_URLWithData:relativeToURL:]): Use WebCFAutorelease instead of WebNSRetainCFRelease and autorelease.
   8582         (-[NSURL _web_URLWithLowercasedScheme]): Ditto.
   8583         (-[NSString _web_mapHostNameWithRange:encode:makeString:]): Use WebCFAutorelease here; the old code would not
   8584         work correctly under GC.
   8585         * Plugins.subproj/WebNetscapePluginPackage.m: (+[WebNetscapePluginPackage preferredLocalizationName]):
   8586         Use WebCFAutorelease here; the old code would not work correctly under GC.
   8587 
   8588 2004-12-18  Chris Blumenberg  <cblu (a] apple.com>
   8589 
   8590 	Fixed: <rdar://problem/3766915> PDF content needs search to work
   8591 
   8592         Reviewed by kevin, john.
   8593 
   8594         * WebView.subproj/WebPDFView.m:
   8595 	(-[WebPDFView searchFor:direction:caseSensitive:wrap:]): implemented
   8596         (-[WebPDFView takeFindStringFromSelection:]): new
   8597         (-[WebPDFView jumpToSelection:]): new
   8598         (-[WebPDFView validateUserInterfaceItem:]): new
   8599 
   8600 2004-12-17  Richard Williamson   <rjw (a] apple.com>
   8601 
   8602 	Make image decoding as lazy as possible for non threaded case; in some cases
   8603 	can avoid unnecessary decoding work.
   8604 
   8605         Reviewed by Chris.
   8606 
   8607         * WebCoreSupport.subproj/WebImageData.h:
   8608         * WebCoreSupport.subproj/WebImageData.m:
   8609         (-[WebImageData imageAtIndex:]):
   8610         (-[WebImageData propertiesAtIndex:]):
   8611         (-[WebImageData incrementalLoadWithBytes:length:complete:callback:]):
   8612 
   8613 2004-12-16  John Sullivan  <sullivan (a] apple.com>
   8614 
   8615         Reviewed by Chris.
   8616         
   8617         One of the assertions from my previous checkin fired, so
   8618         I made this code more robust.
   8619 
   8620         * WebCoreSupport.subproj/WebBridge.m:
   8621         (-[WebBridge _preferences]):
   8622         new helper method, returns global preferences if webView is nil,
   8623         otherwise returns webView's preferences
   8624         (-[WebBridge getObjectCacheSize]):
   8625         use new helper method, remove now-unnecessary assert
   8626         (-[WebBridge _retrieveKeyboardUIModeFromPreferences:]):
   8627         ditto
   8628 
   8629 2004-12-16  John Sullivan  <sullivan (a] apple.com>
   8630 
   8631         Reviewed by Darin.
   8632         
   8633         - fixed <rdar://problem/3913523> Mail needs SPI for adding tooltips to links
   8634         - cleaned up some calls to +[WebPreferences standardPreferences] that should
   8635           have been using -[WebView preferences]
   8636           
   8637         This adds a (currently SPI-only) new feature that shows the URL of the link
   8638         under the mouse in a toolTip. I tested this in Safari, but we're adding this
   8639         feature for Mail, and Safari won't use it (unless of course you know the
   8640         magic defaults command)
   8641 
   8642         * Plugins.subproj/WebBaseNetscapePluginView.m:
   8643         (-[WebBaseNetscapePluginView start]):
   8644         use -[WebView preferences] instead of +[WebPreferences standardPreferences]
   8645         
   8646         * WebCoreSupport.subproj/WebBridge.m:
   8647         (-[WebBridge getObjectCacheSize]):
   8648         ditto
   8649         (-[WebBridge _retrieveKeyboardUIModeFromPreferences:]):
   8650         ditto
   8651         
   8652         * WebView.subproj/WebBaseResourceHandleDelegate.m:
   8653         (-[WebBaseResourceHandleDelegate willCacheResponse:]):
   8654         ditto
   8655         
   8656         * WebView.subproj/WebFrame.m:
   8657         (-[WebFrame _transitionToCommitted:]):
   8658         ditto
   8659         (-[WebFrame _loadItem:withLoadType:]):
   8660         ditto
   8661         
   8662         * WebView.subproj/WebHTMLViewInternal.h:
   8663         private struct now keeps ivar for cached value of showsURLsInToolTips
   8664         so it doesn't have look it up in preferences a zillion times
   8665         
   8666         * WebView.subproj/WebHTMLView.m:
   8667         (-[WebHTMLView _updateMouseoverWithEvent:]):
   8668         if private->showsURLsInToolTips is true, set the toolTip from the URL.
   8669         Fall back to showing the title attribute in case some element has a title
   8670         attribute but no URL.
   8671         (-[WebHTMLView _mayStartDragAtEventLocation:]):
   8672         use -[WebView preferences] instead of +[WebPreferences standardPreferences]
   8673         (-[WebHTMLView _resetCachedWebPreferences:]):
   8674         get a fresh value for private->showsURLsInToolTips
   8675         (-[WebHTMLView initWithFrame:]):
   8676         call _resetCachedWebPreferences the first time, and listen for WebPreferencesChanged notifications
   8677         (-[WebHTMLView _handleStyleKeyEquivalent:]):
   8678         use -[WebView preferences] instead of +[WebPreferences standardPreferences]
   8679         
   8680         * WebView.subproj/WebPreferenceKeysPrivate.h:
   8681         added WebKitShowsURLsInToolTipsPreferenceKey
   8682         
   8683         * WebView.subproj/WebPreferences.m:
   8684         (+[WebPreferences initialize]):
   8685         initialize WebKitShowsURLsInToolTipsPreferenceKey to 0
   8686         (-[WebPreferences showsURLsInToolTips]):
   8687         return WebKitShowsURLsInToolTipsPreferenceKey value
   8688         (-[WebPreferences setShowsURLsInToolTips:]):
   8689         set WebKitShowsURLsInToolTipsPreferenceKey value
   8690         
   8691         * WebView.subproj/WebPreferencesPrivate.h:
   8692         add declarations for showsURLsInToolTips and setter
   8693         
   8694         * WebView.subproj/WebTextView.m:
   8695         (-[WebTextView _preferences]):
   8696         new helper method that gets preferences from webView if there is a webView,
   8697         otherwise gets global preferences
   8698         (-[WebTextView setFixedWidthFont]):
   8699         use new helper method rather than always using global preferences
   8700         (-[WebTextView initWithFrame:]):
   8701         observe WebPreferencesChangedNotification instead of unnecessarily general
   8702         NSUserDefaultsChangedNotification
   8703 
   8704 2004-12-14  John Sullivan  <sullivan (a] apple.com>
   8705 
   8706         Reviewed by Ken.
   8707         
   8708         - rest of WebKit fix for <rdar://problem/3790011> undoable operations all say "Undo" 
   8709         in the menu, no specific action names
   8710         
   8711         I only know of one loose end currently, which I wrote up as <rdar://problem/3920971> Edit menu 
   8712         says "Undo Change Attributes" when it should say "Undo Set Color", from font panel
   8713 
   8714         * WebView.subproj/WebHTMLView.m:
   8715         (-[WebHTMLView concludeDragForDraggingInfo:actionMask:]):
   8716         use WebUndoActionSetColor when dragging color swatch
   8717         (-[WebHTMLView _applyStyleToSelection:withUndoAction:]):
   8718         new WebUndoAction parameter, passed across bridge
   8719         (-[WebHTMLView _toggleBold]):
   8720         use WebUndoActionSetFont
   8721         (-[WebHTMLView _toggleItalic]):
   8722         use WebUndoActionSetFont
   8723         (-[WebHTMLView pasteFont:]):
   8724         use WebUndoActionPasteFont
   8725         (-[WebHTMLView changeFont:]):
   8726         use WebUndoActionSetFont
   8727         (-[WebHTMLView changeAttributes:]):
   8728         use WebUndoActionChangeAttributes
   8729         (-[WebHTMLView _undoActionFromColorPanelWithSelector:]):
   8730         new method, returns WebUndoActionSetBackgroundColor or WebUndoActionSetColor
   8731         (-[WebHTMLView _changeCSSColorUsingSelector:inRange:]):
   8732         now calls _undoActionFromColorPanelWithSelector
   8733         (-[WebHTMLView changeColor:]):
   8734         use WebUndoActionSetColor
   8735         (-[WebHTMLView _alignSelectionUsingCSSValue:withUndoAction:]):
   8736         new WebUndoAction parameter, passed through
   8737         (-[WebHTMLView alignCenter:]):
   8738         use WebUndoActionCenter
   8739         (-[WebHTMLView alignJustified:]):
   8740         use WebUndoActionJustify
   8741         (-[WebHTMLView alignLeft:]):
   8742         use WebUndoActionAlignLeft
   8743         (-[WebHTMLView alignRight:]):
   8744         use WebUndoActionAlignRight
   8745         (-[WebHTMLView subscript:]):
   8746         use WebUndoActionAlignSubscript
   8747         (-[WebHTMLView superscript:]):
   8748         use WebUndoActionAlignSuperscript
   8749         (-[WebHTMLView unscript:]):
   8750         use WebUndoActionAlignUnscript
   8751         (-[WebHTMLView underline:]):
   8752         use WebUndoActionAlignUnderline
   8753         
   8754         * WebView.subproj/WebView.m:
   8755         (-[WebView setTypingStyle:]):
   8756         pass WebUndoActionUnspecified through as new parameter since we don't have any more specific info
   8757         (-[WebView applyStyle:]):
   8758         ditto
   8759 
   8760 2004-12-14  Richard Williamson   <rjw (a] apple.com>
   8761 
   8762 	Helper method to get URL of plugin view.
   8763 
   8764         Reviewed by Chris.
   8765 
   8766         * Misc.subproj/WebNSViewExtras.m:
   8767         (-[NSView _webViewURL]):
   8768 
   8769 2004-12-14  Vicki Murley <vicki (a] apple.com>
   8770 
   8771         Reviewed by rjw.
   8772  
   8773 	<rdar://problem/3855573> Remove reference to "WebScriptMethods" from WebScriptObject.h comments
   8774 
   8775         * Plugins.subproj/WebPlugin.h: changed instances of "WebScriptMethods" to "WebScripting" in this
   8776 	file as well, as requested in the bug report
   8777 
   8778 2004-12-13  Maciej Stachowiak  <mjs (a] apple.com>
   8779 
   8780         Reviewed by John.
   8781 
   8782 	<rdar://problem/3912488> Mail throws an exception after backspacing "away" inline input
   8783         
   8784 	* WebView.subproj/WebHTMLView.m:
   8785         (-[WebHTMLView setMarkedText:selectedRange:]): Don't try to set a selection if
   8786 	we end up with no marked text, since that case fails and is unnecessary.
   8787 
   8788 2004-12-14  John Sullivan  <sullivan (a] apple.com>
   8789 
   8790         Reviewed by Ken.
   8791 
   8792         - WebKit part of plumbing of fix for <rdar://problem/3790011> undoable operations all say "Undo" in the menu, 
   8793         no specific action names
   8794 
   8795         * WebCoreSupport.subproj/WebBridge.m:
   8796         (-[WebBridge nameForUndoAction:]):
   8797         renamed from setUndoActionNamePlaceholder, replaced arbitrary integers with enum values, and
   8798         handled new "unspecified" case as a fallback
   8799 
   8800 2004-12-13  Richard Williamson   <rjw (a] apple.com>
   8801 
   8802 	Fixed <rdar://problem/3887767> LiveConnect doesn't propagate Java exceptions back to JavaScript (prevents security suite from running)
   8803 
   8804         Reviewed by John.
   8805 
   8806         * Plugins.subproj/WebJavaPlugIn.h:
   8807 
   8808 2004-12-13  John Sullivan  <sullivan (a] apple.com>
   8809 
   8810         Reviewed by Maciej.
   8811         
   8812         - fixed <rdar://problem/3744583> Safari can not quit when a webpage has a login sheet 
   8813         that can't be cancelled.
   8814         
   8815         The proper fix for this would be to change the class of the NSPanel in the nib file.
   8816         But since this would require a localization change, I did a run-time hack instead.
   8817         I'll file a bug about fixing this when we're out of localization freeze.
   8818 
   8819         * Panels.subproj/WebAuthenticationPanel.m:
   8820         (-[WebAuthenticationPanel replacePanelWithSubclassHack]):
   8821         new method, creates a new panel that is identical to the original one except that
   8822         it's our subclass, and moves all the subviews of the original panel into the new one.
   8823         (-[WebAuthenticationPanel loadNib]):
   8824         call replacePanelWithSubclassHack
   8825         (-[NonBlockingPanel _blocksActionWhenModal:]):
   8826         only method of new NSPanel subclass; overrides this SPI to allow the user to quit
   8827         when one of these panels/sheets is on-screen
   8828 
   8829 2004-12-10  Richard Williamson   <rjw (a] apple.com>
   8830 
   8831 	Fixed <rdar://problem/3898708> REGRESSION (8A314-8A317): World Clock's short hand not displayed (ImageIO problem with PDF?)
   8832 	Fixed <rdar://problem/3914012> use CG directly for pdf images not ImageIO
   8833 
   8834 	Create a PDF document and draw that instead of using ImageIO to create a rasterized image.
   8835 
   8836         Reviewed by Maciej.
   8837 
   8838         * WebCoreSupport.subproj/WebImageData.h:
   8839         * WebCoreSupport.subproj/WebImageData.m:
   8840         (-[WebImageData setIsPDF:]):
   8841         (-[WebImageData isPDF]):
   8842         (-[WebImageData dealloc]):
   8843         (-[WebImageData decodeData:isComplete:callback:]):
   8844         (-[WebImageData incrementalLoadWithBytes:length:complete:callback:]):
   8845         (-[WebImageData size]):
   8846         (-[WebImageData animate]):
   8847         (-[WebImageData _createPDFWithData:]):
   8848         (-[WebImageData _PDFDocumentRef]):
   8849         (-[WebImageData _PDFDrawInContext:]):
   8850         (-[WebImageData _PDFDrawFromRect:toRect:operation:alpha:flipped:context:]):
   8851         * WebCoreSupport.subproj/WebImageRenderer.h:
   8852         * WebCoreSupport.subproj/WebImageRenderer.m:
   8853         (-[WebImageRenderer size]):
   8854         (-[WebImageRenderer incrementalLoadWithBytes:length:complete:callback:]):
   8855         (-[WebImageRenderer drawImageInRect:fromRect:compositeOperator:context:]):
   8856         (_createImageRef):
   8857 
   8858 2004-12-10  John Sullivan  <sullivan (a] apple.com>
   8859 
   8860         Reviewed by Ken.
   8861         
   8862         - fixed <rdar://problem/3855127> Error while printing w/o sheet, then window is left in a bad state, 
   8863         if there's no default printer set
   8864 
   8865         * WebView.subproj/WebHTMLView.m:
   8866         (-[WebHTMLView beginDocument]):
   8867         Our implementation of knowsPageRange puts the WebHTMLView into a special "printing mode". We must
   8868         exit the "printing mode" to return to normal behavior. This is normally done in endDocument.
   8869         However, it turns out that if there's an exception in [super beginDocument], then endDocument
   8870         will not be called (lame-o AppKit API). So, we handle that case by catching the exception and
   8871         exiting the "printing mode" in beginDocument when it occurs.
   8872 
   8873 2004-12-09  Richard Williamson   <rjw (a] apple.com>
   8874 
   8875 	Fixed <rdar://problem/3905789> Burn Disc image vibrates rapidly
   8876 
   8877 	Restrict our support for animated images to GIF.  We used to
   8878 	use presence of more than one image in a resource to determine
   8879 	if an image should be animated.  This caused us to animate icns!
   8880 	If we ever support any other animated image formats we'll have
   8881 	to extend.
   8882 
   8883         Reviewed by Hyatt.
   8884 
   8885         * WebCoreSupport.subproj/WebImageData.h:
   8886         * WebCoreSupport.subproj/WebImageData.m:
   8887         (-[WebImageData shouldAnimate]):
   8888         * WebCoreSupport.subproj/WebImageRenderer.m:
   8889         (-[WebImageRenderer _startOrContinueAnimationIfNecessary]):
   8890 
   8891 2004-12-09  Richard Williamson   <rjw (a] apple.com>
   8892 
   8893 	Make WebPluginDatabase.h private (Dashboard needs SPI).
   8894 
   8895         * WebKit.pbproj/project.pbxproj:
   8896 
   8897 === Safari-175 ===
   8898 
   8899 2004-12-09  Chris Blumenberg  <cblu (a] apple.com>
   8900 
   8901 	Workaround for this exception being raised during download:
   8902 	[WebDownload connection:willStopBufferingData:]: selector not recognized
   8903 
   8904         Reviewed by john.
   8905 
   8906         * Misc.subproj/WebDownload.m:
   8907         (-[WebDownload connection:willStopBufferingData:]): implement this method so no exception is raised. It is a bug in Foundation that this method is being called, but it's too late to fix Foundation since it has already been submitted this week. This workaround will prevent any problems from affecting users.
   8908 
   8909 2004-12-08  Richard Williamson   <rjw (a] apple.com>
   8910 
   8911 	Fixed <rdar://problem/3911719> REGRESSION: Images no longer scale vertically
   8912 	Account for scaling correctly when taking into account progressively
   8913  	loaded images.
   8914 
   8915 	Also added implementation of repetition count for animated GIF images.
   8916 	Also replaced strings with new constants from CFImageProperties.h
   8917 
   8918 	Also fixed possible problem with -(NSSize)size implementation,
   8919 	relevant to Panther only.
   8920 
   8921         Reviewed by Chris.
   8922 
   8923         * WebCoreSupport.subproj/WebImageData.m:
   8924         (-[WebImageData _floatProperty:type:at:]):
   8925         (-[WebImageData _frameDurationAt:]):
   8926         (-[WebImageData _repetitionCount]):
   8927         * WebCoreSupport.subproj/WebImageRenderer.m:
   8928         (-[WebImageRenderer size]):
   8929 
   8930 2004-12-08  Chris Blumenberg  <cblu (a] apple.com>
   8931 
   8932 	Removed NPN wrappers since these no longer need to be defined to make the QT plug-in work
   8933 	since 3828925 has been fixed.
   8934 
   8935         Reviewed by john.
   8936 
   8937         * Plugins.subproj/WebNetscapePluginPackage.m:
   8938         (-[WebNetscapePluginPackage load]): use under-bar symbols since non-under-bar wrappers have been removed
   8939         * Plugins.subproj/npapi.m: removed NPN wrappers
   8940         * WebKit.exp: removed symbols
   8941 
   8942 2004-12-08  Ken Kocienda  <kocienda (a] apple.com>
   8943 
   8944         Reviewed by Darin
   8945 
   8946         * WebView.subproj/WebHTMLView.m:
   8947         (-[WebHTMLView drawRect:]): Work around for this bug:
   8948         <rdar://problem/3908282> REGRESSION (Mail): No drag image dragging selected text in Blot and Mail
   8949         The reason for the workaround is that this method is called explicitly from the code
   8950         to generate a drag image, and at that time, getRectsBeingDrawn:count: will return a zero count.
   8951         This code change uses the passed-in rect when the count is zero.
   8952 
   8953 2004-12-07  Administrator  <cblu (a] apple.com>
   8954 
   8955 	Support for fix for:
   8956 	<rdar://problem/3734309> Safari doesn't open folders in title bar menu with non-Roman names using Cmd+click
   8957 
   8958         Reviewed by john.
   8959 
   8960         * Misc.subproj/WebNSURLExtras.h:
   8961         * Misc.subproj/WebNSURLExtras.m:
   8962         (+[NSURL _web_URLWithUserTypedString:relativeToURL:]): renamed to take relativeToURL parameter
   8963         (+[NSURL _web_URLWithUserTypedString:]): call _web_URLWithUserTypedString:relativeToURL: with nil for URL
   8964 
   8965 2004-12-07  Richard Williamson   <rjw (a] apple.com>
   8966 
   8967 	Fixed <rdar://problem/3905564> REGRESSION (Tiger); in History menu, pixel size appears but is wrong for standalone images in Safari.
   8968 
   8969         Reviewed by Chris.
   8970 
   8971         * WebCoreSupport.subproj/WebImageRenderer.m:
   8972         (-[WebImageRenderer size]):
   8973 
   8974 2004-12-07  Richard Williamson   <rjw (a] apple.com>
   8975 
   8976 	Support threaded image decoding on machines w/ >= 2 CPUs.
   8977 
   8978         Reviewed by Maciej and Chris.
   8979 
   8980         * Misc.subproj/WebKitSystemBits.h:
   8981         * Misc.subproj/WebKitSystemBits.m:
   8982         (WebSystemMainMemory):
   8983         (WebNumberOfCPUs):
   8984         * WebCoreSupport.subproj/WebImageData.h:
   8985         * WebCoreSupport.subproj/WebImageData.m:
   8986         (+[WebImageData initialize]):
   8987         (-[WebImageData init]):
   8988         (-[WebImageData _commonTermination]):
   8989         (-[WebImageData dealloc]):
   8990         (-[WebImageData _invalidateImages]):
   8991         (-[WebImageData _imageSourceOptions]):
   8992         (-[WebImageData imageAtIndex:]):
   8993         (-[WebImageData propertiesAtIndex:]):
   8994         (-[WebImageData _createImages]):
   8995         (-[WebImageData decodeData:isComplete:callback:]):
   8996         (-[WebImageData incrementalLoadWithBytes:length:complete:callback:]):
   8997         (drawPattern):
   8998         (-[WebImageData tileInRect:fromPoint:context:]):
   8999         (-[WebImageData isNull]):
   9000         (-[WebImageData size]):
   9001         (-[WebImageData _frameDurationAt:]):
   9002         (-[WebImageData _frameDuration]):
   9003         (+[WebImageData stopAnimationsInView:]):
   9004         (-[WebImageData addAnimatingRenderer:inView:]):
   9005         (-[WebImageData removeAnimatingRenderer:]):
   9006         * WebCoreSupport.subproj/WebImageDecodeItem.h: Added.
   9007         * WebCoreSupport.subproj/WebImageDecodeItem.m: Added.
   9008         (+[WebImageDecodeItem decodeItemWithImage:data:isComplete:callback:]):
   9009         (-[WebImageDecodeItem initWithImage:data:isComplete:callback:]):
   9010         (-[WebImageDecodeItem finalize]):
   9011         (-[WebImageDecodeItem dealloc]):
   9012         * WebCoreSupport.subproj/WebImageDecoder.h: Added.
   9013         * WebCoreSupport.subproj/WebImageDecoder.m: Added.
   9014         (decoderNotifications):
   9015         (+[WebImageDecoder initialize]):
   9016         (+[WebImageDecoder notifyMainThread]):
   9017         (+[WebImageDecoder sharedDecoder]):
   9018         (+[WebImageDecoder performDecodeWithImage:data:isComplete:callback:]):
   9019         (+[WebImageDecoder imageDecodesPending]):
   9020         (+[WebImageDecoder decodeComplete:status:]):
   9021         (-[WebImageDecoder init]):
   9022         (-[WebImageDecoder dealloc]):
   9023         (-[WebImageDecoder finalize]):
   9024         (-[WebImageDecoder removeItem]):
   9025         (-[WebImageDecoder addItem:]):
   9026         (-[WebImageDecoder decodeItem:]):
   9027         (decoderThread):
   9028         (startDecoderThread):
   9029         * WebCoreSupport.subproj/WebImageRenderer.m:
   9030         (-[WebImageRenderer initWithData:MIMEType:]):
   9031         (-[WebImageRenderer initWithContentsOfFile:]):
   9032         (-[WebImageRenderer incrementalLoadWithBytes:length:complete:callback:]):
   9033         (-[WebInternalImage incrementalLoadWithBytes:length:complete:callback:]):
   9034         * WebKit.pbproj/project.pbxproj:
   9035         * WebView.subproj/WebImageRepresentation.m:
   9036         (-[WebImageRepresentation receivedData:withDataSource:]):
   9037         (-[WebImageRepresentation receivedError:withDataSource:]):
   9038         (-[WebImageRepresentation finishedLoadingWithDataSource:]):
   9039 
   9040 2004-12-07  Chris Blumenberg  <cblu (a] apple.com>
   9041 
   9042 	Fix for performance regression.
   9043 
   9044         Reviewed by kevin.
   9045 
   9046         * WebCoreSupport.subproj/WebBridge.m:
   9047         (-[WebBridge objectLoadedFromCacheWithURL:response:data:]): construct the WebResource without copying the data
   9048 
   9049 2004-12-07  Chris Blumenberg  <cblu (a] apple.com>
   9050 
   9051 	Fixed: <rdar://problem/3909243> REGRESSION: large standalone images stop loading part way through
   9052 
   9053         Reviewed by kevin.
   9054 
   9055         * WebView.subproj/WebBaseResourceHandleDelegate.h:
   9056         * WebView.subproj/WebMainResourceClient.m:
   9057         (-[WebMainResourceClient addData:]): call super so it buffers the data
   9058 
   9059 2004-12-06  Richard Williamson   <rjw (a] apple.com>
   9060 
   9061 	Use the AppKit's font rendering mode.  This fixes 3905347, but we still need to track down
   9062 	and resolve why metrics have changed for Courier.  This may be caused by changes in
   9063 	AppKit for 3902394.
   9064 
   9065         Reviewed by John.
   9066 
   9067         * WebCoreSupport.subproj/WebTextRenderer.m:
   9068         (_AppkitGetCGRenderingMode):
   9069         (getUncachedWidth):
   9070         (_drawGlyphs):
   9071 
   9072 2004-12-06  Chris Blumenberg  <cblu (a] apple.com>
   9073 
   9074 	Forgot to commit copied header.
   9075 
   9076         * DOM.subproj/DOMPrivate.h:
   9077 
   9078 2004-12-06  Chris Blumenberg  <cblu (a] apple.com>
   9079 
   9080 	Fixed: <rdar://problem/3907381> NSURLConnection and WebKit buffer 2 copies of incoming data
   9081 
   9082         Reviewed by darin.
   9083 
   9084         * WebView.subproj/WebBaseResourceHandleDelegate.h:
   9085         * WebView.subproj/WebBaseResourceHandleDelegate.m:
   9086         (+[WebBaseResourceHandleDelegate initialize]): cache check to see if Foundation supports access to its buffered data
   9087         (-[WebBaseResourceHandleDelegate addData:]): don't buffer data if Foundation is buffering it for us
   9088         (-[WebBaseResourceHandleDelegate saveResource]): when creating a WebResource, pass NO for copyData since we know it won't be mutated
   9089         (-[WebBaseResourceHandleDelegate resourceData]): return the buffered data from the connection if it supports it
   9090         (-[WebBaseResourceHandleDelegate willStopBufferingData:]): make a mutable copy of the data from NSURLConnection so we can continue buffering 
   9091         (-[WebBaseResourceHandleDelegate willCacheResponse:]): removed optimization that used the cached response data to save the resource since that is obsolete by this change
   9092         (-[WebBaseResourceHandleDelegate connection:willStopBufferingData:]): new callback from NSURLConnection, informs us that NSURLConnection has given up buffering
   9093         * WebView.subproj/WebDataSource.m:
   9094         (-[WebDataSource _receivedData:]): removed buffering code since that's done by NSURLConnection and the main client
   9095         (-[WebDataSource _setData:]): removed unnecessary cast since the resourceData ivar is now an NSData instead of NSMutableData
   9096         (-[WebDataSource data]): return resourceData ivar, else return the resourceData from the main client
   9097         * WebView.subproj/WebDataSourcePrivate.h:
   9098         * WebView.subproj/WebMainResourceClient.m:
   9099         (-[WebMainResourceClient releaseResources]): store resourceData on the data source so it can continue to have data after the main client has gone away 
   9100         (-[WebMainResourceClient connection:didReceiveData:lengthReceived:]):don't call [dataSource data] just to get the length of data received since [dataSource data] can now cause data to be copied
   9101         (-[WebMainResourceClient connectionDidFinishLoading:]): ditto
   9102         * WebView.subproj/WebResource.m:
   9103         (-[WebResource initWithData:URL:MIMEType:textEncodingName:frameName:]): call following method with YES for copyData
   9104         (-[WebResource _initWithData:URL:MIMEType:textEncodingName:frameName:copyData:]): new initializer, allows caller to choose whether or not the data is copied
   9105         * WebView.subproj/WebResourcePrivate.h:
   9106 
   9107 2004-12-06  Richard Williamson   <rjw (a] apple.com>
   9108 
   9109 	Fixed <rdar://problem/3903749> REGRESSION (8A321): WebKit gets incorrect glyph metrics due to change in how AppKit uses CGFont
   9110 
   9111 	Use CGFontRef direction when both getting font metrics and drawing
   9112 	glyphs, instead on depending on [NSFont set].
   9113 
   9114         Reviewed by John.
   9115 
   9116         * WebCoreSupport.subproj/WebTextRenderer.m:
   9117         (getUncachedWidth):
   9118         (_drawGlyphs):
   9119 
   9120 2004-12-06  Ken Kocienda  <kocienda (a] apple.com>
   9121 
   9122         Reviewed by Harrison
   9123         
   9124         Fix for this bug:
   9125         
   9126         <rdar://problem/3906930> Hitting return key in editable content inserts br elements instead of blocks
   9127 
   9128         * WebView.subproj/WebHTMLView.m:
   9129         (-[WebHTMLView insertNewline:]): One-line change to call insert-block rather than insert-br method 
   9130         on bridge.
   9131 
   9132 2004-12-04  Darin Adler  <darin (a] apple.com>
   9133 
   9134         Reviewed by John.
   9135 
   9136         - fixed <rdar://problem/3846079> assertion failure in WebHTMLView(WebPrivate) removeTrackingRect at boots.com
   9137         - fixed <rdar://problem/3857737> REGRESSION (165-166): clicking in a text field that's scrolled to the right causes it to scroll all the way left
   9138         - fixed <rdar://problem/3861952> REGRESSION (165-166): selection is cleared when you start to scroll a frame
   9139 
   9140         * WebView.subproj/WebHTMLViewInternal.h: Added handlingMouseDown flag.
   9141         * WebView.subproj/WebHTMLView.m:
   9142         (-[WebHTMLView _addTrackingRect:owner:userData:assumeInside:useTrackingNum:]): Allow passing in a
   9143         tracking number of 0, which means no existing tracking number.
   9144         (-[WebHTMLView _addTrackingRects:owner:userDataList:assumeInsideList:trackingNums:count:]): Ditto.
   9145         (-[WebHTMLView removeTrackingRect:]): Allow removing a tracking number of 0, which is a no-op.
   9146         (-[WebHTMLView _removeTrackingRects:count:]): Ditto.
   9147         (-[WebHTMLView acceptsFirstResponder]): Changed check to use handlingMouseDown flag instead of mouseDownEvent
   9148         field since that field is set up too early in the mouse down event handling process.
   9149         (-[WebHTMLView mouseDown:]): Added code to set handlingMouseDown flag.
   9150 
   9151         - fixed part of <rdar://problem/3829808> Safari crashes when adding a DOM node that was removed from an XMLHTTP request result
   9152 
   9153         * WebCoreSupport.subproj/WebBridge.m:
   9154         (-[WebBridge syncLoadResourceWithURL:customHeaders:postData:finalURL:responseHeaders:statusCode:]):
   9155         Changed code around so that it won't try to create a WebResource when the load fails.
   9156 
   9157         - moved next/previous links into private structure with the rest of WebFrame fields
   9158           (We have a rule against putting new fields into obejcts that are part of our public API.)
   9159 
   9160         * WebView.subproj/WebFrame.h: Remove _nextSibling and _previousSibling.
   9161         * WebView.subproj/WebFramePrivate.h: Added nextSibling and previousSibling fields to private class.
   9162         * WebView.subproj/WebFrame.m: Got rid of some tabs in this file.
   9163         (-[WebFrame _addChild:]): Changed code to use fields inside _private.
   9164         (-[WebFrame _removeChild:]): Ditto.
   9165         (-[WebFrame _nextFrameWithWrap:]): Ditto.
   9166         (-[WebFrame _previousFrameWithWrap:]): Ditto.
   9167 
   9168 2004-12-04  Chris Blumenberg  <cblu (a] apple.com>
   9169 
   9170 	New fixes for:
   9171 	<rdar://problem/3685766> WebDataSource is missing subresources when they use cached WebCore data
   9172 	<rdar://problem/3722434> REGRESSION?: Assertion failure trying to drag image in iframe (itapema.sc.gov.br)
   9173 	<rdar://problem/3903173> REGRESSION (172-TOT): assertion failure and crash in slotAllData logging into hotmail account
   9174 	<rdar://problem/3902749> REGRESSION (Tiger): missing image symbol does not appear
   9175 
   9176         Reviewed by darin, rjw, kocienda.
   9177 
   9178         * WebCoreSupport.subproj/WebBridge.m:
   9179         (-[WebBridge objectLoadedFromCacheWithURL:response:data:]):
   9180         (-[WebBridge syncLoadResourceWithURL:customHeaders:postData:finalURL:responseHeaders:statusCode:]):
   9181         * WebCoreSupport.subproj/WebSubresourceClient.m:
   9182         (-[WebSubresourceClient didFinishLoading]):
   9183         * WebView.subproj/WebFrame.m:
   9184         (-[WebFrame _opened]):
   9185         (-[WebFrame _internalLoadDelegate]):
   9186         (-[WebFrame _sendResourceLoadDelegateMessagesForURL:response:length:]):
   9187         * WebView.subproj/WebFrameInternal.h:
   9188 
   9189 2004-12-04  Darin Adler  <darin (a] apple.com>
   9190 
   9191         Reviewed by Maciej.
   9192 
   9193         - fixed remaining bit of <rdar://problem/3814237> REGRESSION (Mail): Copy/paste style does not set color in Mail compose window
   9194 
   9195         * WebView.subproj/WebHTMLView.m: (-[WebHTMLView _styleFromFontAttributes:]): When translating from
   9196         an attribute dictionary to a CSS declaration, treat missing values according to the defaults defined
   9197         in <AppKit/NSAttributedString.h>. Before the code was treating them as "no change", which is incorrect.
   9198 
   9199         * English.lproj/StringsNotToBeLocalized.txt: Add a string from the above change.
   9200 
   9201 === Safari-173 ===
   9202 
   9203 2004-12-03  Ken Kocienda  <kocienda (a] apple.com>
   9204 
   9205         Reviewed by me
   9206 
   9207         Roll out some recent changes by Chris that caused a performance regression.
   9208         Fix is in hand, but it is a little risky this close to a submission. So,
   9209         we have decided to roll back the change with the regression and roll in
   9210         the new code after we submit.
   9211 
   9212         * WebCoreSupport.subproj/WebBridge.m:
   9213         (-[WebBridge objectLoadedFromCacheWithURL:response:size:]):
   9214         (-[WebBridge syncLoadResourceWithURL:customHeaders:postData:finalURL:responseHeaders:statusCode:]):
   9215         * WebCoreSupport.subproj/WebSubresourceClient.m:
   9216         (-[WebSubresourceClient didFinishLoading]):
   9217         * WebView.subproj/WebFrame.m:
   9218         (-[WebFrame _opened]):
   9219         (-[WebFrame _internalLoadDelegate]):
   9220         * WebView.subproj/WebFrameInternal.h:
   9221 
   9222 2004-12-02  Richard Williamson   <rjw (a] apple.com>
   9223 
   9224 	Fixed <rdar://problem/3841332> REGRESSION (125.9-167u): repro crash in -[KWQPageState invalidate] involving .Mac images
   9225 
   9226 	Ensure that the document is cleared when leaving a non-HTML page.  This ensures that
   9227 	the b/f cache won't incorrectly trash the previous state when restoring.
   9228 
   9229         Reviewed by John.
   9230 
   9231         * WebView.subproj/WebFrame.m:
   9232         (-[WebFrame _setState:]):
   9233 
   9234 2004-12-02  Ken Kocienda  <kocienda (a] apple.com>
   9235 
   9236         Reviewed by Richard
   9237 
   9238         <rdar://problem/3748323> Problem with -[WebView editableDOMRangeForPoint:] (-isFlipped not taken into account?)
   9239         <rdar://problem/3852590> REGRESSION (Mail): Dropped content appears in wrong place if Mail message is scrolled down
   9240 
   9241         When implementing drag and drop, moveDragCaretToPoint: and editableDOMRangeForPoint: are used in
   9242         concert to track the mouse and determine a drop location, respectively. However, moveDragCaretToPoint:
   9243         did a conversion of the passed-in point to the document view's coordinate space, whereas 
   9244         editableDOMRangeForPoint: did not. Now it does.
   9245         
   9246         Note that I will need to coordinate with Grant to have him roll out some code in Mail that
   9247         attempts to work around this problem (unsuccessfully), and actually manages to block the
   9248         real fix (which needs to be in WebKit).
   9249 
   9250         * WebView.subproj/WebView.m:
   9251         (-[WebView editableDOMRangeForPoint:]): Convert the passed-in point to the document view's coordinate space.
   9252 
   9253 2004-12-02  Richard Williamson   <rjw (a] apple.com>
   9254 
   9255 	Fixed <rdar://problem/3895810> FATAL ERROR: <WebTextRenderer: 0x9328a20> unable to initialize with font "Times-Roman 16.00 pt. S ....
   9256 
   9257 	We have a hack to replace Times with Times New Roman if we fail
   9258         to setup Times.  If we then fail to setup Times New Roman we
   9259         don't attempt to further fallback to the system font.  Added
   9260         that additional fallback.
   9261 
   9262         Reviewed by Ken.
   9263 
   9264         * WebCoreSupport.subproj/WebTextRenderer.m:
   9265         (+[WebTextRenderer webFallbackFontFamily]):
   9266         (-[WebTextRenderer initWithFont:usingPrinterFont:]):
   9267 
   9268 2004-12-02  Richard Williamson   <rjw (a] apple.com>
   9269 
   9270 	Fixed build problem on Tiger8A821.  Private macro and function
   9271 	we were using have been deprecated,
   9272 
   9273         Reviewed by Vicki.
   9274 
   9275         * WebCoreSupport.subproj/WebTextRenderer.m:
   9276         (-[WebTextRenderer initWithFont:usingPrinterFont:]):
   9277 
   9278 2004-12-01  Chris Blumenberg  <cblu (a] apple.com>
   9279 
   9280 	Fixed: <rdar://problem/3879870> Flash Player unable to stop data stream from continuing to download by returning -1 from NPP_Write
   9281 	Also improved and cleaned-up the plug-in stream termination code.
   9282 
   9283         Reviewed by john.
   9284 
   9285         * Plugins.subproj/WebBaseNetscapePluginStream.h:
   9286         * Plugins.subproj/WebBaseNetscapePluginStream.m:
   9287         (+[WebBaseNetscapePluginStream reasonForError:]): return NPRES_DONE for a nil error
   9288         (-[WebBaseNetscapePluginStream _pluginCancelledConnectionError]): new, factored out from other methods
   9289         (-[WebBaseNetscapePluginStream errorForReason:]): new
   9290         (-[WebBaseNetscapePluginStream dealloc]): release MIME type
   9291         (-[WebBaseNetscapePluginStream setMIMEType:]): new
   9292         (-[WebBaseNetscapePluginStream startStreamResponseURL:expectedContentLength:lastModifiedDate:MIMEType:]): call setMIMEType so we can use it in _pluginCancelledConnectionError, call renamed methods
   9293         (-[WebBaseNetscapePluginStream _destroyStream]): prepended underscore, replaced some early returns with asserts as the callers are now smarter
   9294         (-[WebBaseNetscapePluginStream _destroyStreamWithReason:]): prepended underscore, only call _destroyStream if there is an error or if the load is complete and there is no more data to be streamed
   9295         (-[WebBaseNetscapePluginStream cancelLoadWithError:]): new, overridden by subclasses to cancel the actual NSURLConnection
   9296         (-[WebBaseNetscapePluginStream destroyStreamWithError:]): new, calls _destroyStreamWithReason
   9297         (-[WebBaseNetscapePluginStream finishedLoadingWithData:]): call renamed methods
   9298         (-[WebBaseNetscapePluginStream _deliverData]): prepended underscore, call cancelLoadAndDestroyStreamWithError if NPP_Write returns a negative number
   9299         * Plugins.subproj/WebBaseNetscapePluginView.m:
   9300         (-[WebBaseNetscapePluginView destroyStream:reason:]): call cancelLoadAndDestroyStreamWithError
   9301         * Plugins.subproj/WebNetscapePluginRepresentation.m:
   9302         (-[WebNetscapePluginRepresentation receivedError:withDataSource:]): call destroyStreamWithError
   9303         (-[WebNetscapePluginRepresentation cancelLoadWithError:]): new, override method, tell the data source to stop loading
   9304         * Plugins.subproj/WebNetscapePluginStream.m:
   9305         (-[WebNetscapePluginStream cancelLoadWithError:]): new, override method, tell the loader to stop
   9306         (-[WebNetscapePluginStream stop]): call cancelLoadAndDestroyStreamWithError
   9307         (-[WebNetscapePluginConnectionDelegate isDone]): new
   9308         (-[WebNetscapePluginConnectionDelegate didReceiveResponse:]): call cancelLoadAndDestroyStreamWithError
   9309         (-[WebNetscapePluginConnectionDelegate didFailWithError:]): call destroyStreamWithError
   9310 
   9311 2004-12-01  Kevin Decker  <kdecker (a] apple.com>
   9312 
   9313         Reviewed by Harrison.
   9314 
   9315 	Fixed: <rdar://problem/3228878> potential performance problem in finding in large framesets
   9316 
   9317 	Got rid of O(N^2) conditions in _nextSibling and _previousSibling of where we were looking up self in the parent array of frames.
   9318 
   9319         * WebView.subproj/WebFrame.h: Added two new pointers, one for the previous kid and one for the next kid
   9320         * WebView.subproj/WebFrame.m: 
   9321         (-[WebFrame _addChild:]): Updates the previous frame and the next frame after this child
   9322         (-[WebFrame _removeChild:]): ditto
   9323         (-[WebFrame _nextSibling]): just return the pointer now
   9324         (-[WebFrame _previousSibling]): ditto
   9325 
   9326 2004-11-30  Chris Blumenberg  <cblu (a] apple.com>
   9327 
   9328 	Fixed:
   9329 	<rdar://problem/3685766> WebDataSource is missing subresources when they use cached WebCore data
   9330 	<rdar://problem/3722434> REGRESSION?: Assertion failure trying to drag image in iframe (itapema.sc.gov.br)
   9331 
   9332         Reviewed by darin.
   9333 
   9334         * WebCoreSupport.subproj/WebBridge.m:
   9335         (-[WebBridge objectLoadedFromCacheWithURL:response:data:]): renamed to pass all data for the resource, moved delegate code to new method
   9336         (-[WebBridge syncLoadResourceWithURL:customHeaders:postData:finalURL:responseHeaders:statusCode:]): call renamed method
   9337         * WebCoreSupport.subproj/WebSubresourceClient.m:
   9338         (-[WebSubresourceClient didFinishLoading]): call renamed method
   9339         * WebView.subproj/WebFrame.m:
   9340         (-[WebFrame _opened]): call _sendResourceLoadDelegateMessagesForURL:response:length:, not objectLoadedFromCacheWithURL:response:data:
   9341         (-[WebFrame _internalLoadDelegate]):
   9342         (-[WebFrame _sendResourceLoadDelegateMessagesForURL:response:length:]): moved from objectLoadedFromCacheWithURL:response:data:
   9343         * WebView.subproj/WebFrameInternal.h:
   9344 
   9345 2004-11-29  Darin Adler  <darin (a] apple.com>
   9346 
   9347         Reviewed by John.
   9348 
   9349         - worked around bug in Panther where NSScroller calls _destinationFloatValueForScroller: on superview
   9350           without first checking if it's implemented
   9351 
   9352         * WebView.subproj/WebHTMLView.m: (-[WebHTMLView _destinationFloatValueForScroller:]):
   9353         Implemented. Calls floatValue on the scroller.
   9354 
   9355         * English.lproj/StringsNotToBeLocalized.txt: Update for recent changes.
   9356 
   9357 2004-11-23  Chris Blumenberg  <cblu (a] apple.com>
   9358 
   9359 	Fixed: <rdar://problem/3890944> disable icon database for Dashboard
   9360 
   9361         Reviewed by kevin.
   9362 
   9363         * Misc.subproj/WebIconDatabase.h:
   9364         * Misc.subproj/WebIconDatabase.m:
   9365         (-[WebIconDatabase init]): don't create dictionaries if disabled
   9366         (-[WebIconDatabase iconForURL:withSize:cache:]): return default icon if disabled
   9367         (-[WebIconDatabase iconURLForURL:]): return nil if disabled
   9368         (-[WebIconDatabase retainIconForURL:]): return if disabled
   9369         (-[WebIconDatabase releaseIconForURL:]): ditto
   9370         (-[WebIconDatabase delayDatabaseCleanup]): ditto
   9371         (-[WebIconDatabase allowDatabaseCleanup]): ditto
   9372         (-[WebIconDatabase _isEnabled]): new
   9373         (-[WebIconDatabase _setIcon:forIconURL:]): assert if called when disabled, moved to own category implementation
   9374         (-[WebIconDatabase _setHaveNoIconForIconURL:]): ditto
   9375         (-[WebIconDatabase _setIconURL:forURL:]): ditto
   9376         (-[WebIconDatabase _createFileDatabase]): tweak
   9377         (-[WebIconDatabase _applicationWillTerminate:]): moved out of public code
   9378         * Misc.subproj/WebIconDatabasePrivate.h:
   9379         * Misc.subproj/WebIconLoader.m:
   9380         * WebView.subproj/WebDataSource.m:
   9381         (-[WebDataSource _updateIconDatabaseWithURL:]): assert if called when icon DB is disabled
   9382         (-[WebDataSource _loadIcon]): don't load icon if icon DB is disabled
   9383 
   9384 2004-11-22  David Hyatt  <hyatt (a] apple.com>
   9385 
   9386 	Make sure the WebCore cache grows at 512mb and at 1024mb exactly.
   9387 	
   9388         Reviewed by mjs
   9389 
   9390         * WebCoreSupport.subproj/WebBridge.m:
   9391         (-[WebBridge getObjectCacheSize]):
   9392 
   9393 2004-11-22  Richard Williamson   <rjw (a] apple.com>
   9394 
   9395 	Fixed <rdar://problem/3891737> WebPreferences do not work if they are set before set on the WebView
   9396 
   9397 	John found this problem and suggested the fix.
   9398 
   9399         Reviewed by John Louch.
   9400 
   9401         * WebView.subproj/WebView.m:
   9402         (-[WebView setPreferences:]):
   9403 
   9404 2004-11-22  Ken Kocienda  <kocienda (a] apple.com>
   9405 
   9406         Reviewed by Harrison
   9407 
   9408         * WebCoreSupport.subproj/WebBridge.m:
   9409         (-[WebBridge canPaste]): Call WebView _canPaste.
   9410         * WebView.subproj/WebView.m:
   9411         (-[WebView _canPaste]): Try to forward to document view's implementation. Only WebHTMLView
   9412         answers right now. Returns NO otherwise.
   9413         * WebView.subproj/WebViewInternal.h: Add _canPaste method to WebView.
   9414 
   9415 2004-11-22  Maciej Stachowiak  <mjs (a] apple.com>
   9416 
   9417 	Back  out the window closing fix, it seems to be causing crashes.
   9418 
   9419         * WebView.subproj/WebFrame.m:
   9420         (-[WebFrame _detachFromParent]):
   9421 
   9422 2004-11-20  Maciej Stachowiak  <mjs (a] apple.com>
   9423  
   9424         Reviewed by John.
   9425  
   9426  	<rdar://problem/3710101> _web_userVisibleString makes URL autocomplete roughly 2x slower
   9427          
   9428  	* Misc.subproj/WebNSURLExtras.h:
   9429         * Misc.subproj/WebNSURLExtras.m:
   9430         (-[NSString _web_isUserVisibleURL]): New SPI to check if a URL
   9431  	string is already in user-visible form (i.e. converting it to an
   9432  	NSURL and then back via _web_userVisibleString would not change
   9433  	anything).
   9434  
   9435 2004-11-19  Maciej Stachowiak  <mjs (a] apple.com>
   9436 
   9437         Reviewed by John.
   9438 
   9439 	<rdar://problem/3190977> closing window with many tabs in it can be quite slow
   9440         
   9441 	* WebView.subproj/WebFrame.m:
   9442         (-[WebFrame _detachFromParent]): autorelease bridge instead of releasing it,
   9443 	to make window and tab closing more responsive - this way the deallocation happens
   9444 	after the windoow or tab appears to close.
   9445 
   9446 === Safari-172 ===
   9447 
   9448 2004-11-19  Chris Blumenberg  <cblu (a] apple.com>
   9449 
   9450 	Fixed: <rdar://problem/3880387> REGRESSION: www.shockplay.com site gives "Unexpected server response"
   9451 
   9452         Reviewed by mjs.
   9453 
   9454         * Plugins.subproj/WebBaseNetscapePluginView.m:
   9455         (-[NSData _web_locationAfterFirstBlankLine]): support both formats ("\r\n\n" and "\r\n\r\n") for separating header data from body data because Shockwave still sends the prior format
   9456 
   9457 2004-11-19  Ken Kocienda  <kocienda (a] apple.com>
   9458 
   9459         Reviewed by Harrison
   9460 
   9461         Fix for this bug:
   9462 
   9463         <rdar://problem/3655241> setTypingStyle: does not set the real typing style, and typingStyle does not return it
   9464 
   9465         * WebCoreSupport.subproj/WebBridge.m:
   9466         (-[WebBridge respondToChangedContents]): No longer call through to WebKit to set the typing style. The call
   9467         was part of the misguided use of the setTypingStyle: and typingStyle as a cache of what was stored on
   9468         the WebCore side.
   9469         (-[WebBridge respondToChangedSelection]): Ditto.
   9470         * WebView.subproj/WebView.m:
   9471         (-[WebViewPrivate dealloc]): Object no longer has typingStyle ivar.
   9472         (-[WebView setTypingStyle:]): Call over the bridge to set typing style.
   9473         (-[WebView typingStyle]): Call over the bridge to retrieve typing style.
   9474         * WebView.subproj/WebViewInternal.h: Object no longer has typingStyle ivar.
   9475 
   9476 2004-11-18  John Sullivan  <sullivan (a] apple.com>
   9477 
   9478         Reviewed by Darin.
   9479         
   9480         - fixed <rdar://problem/3886042> should save history file as binary XML so serialization, 
   9481         parsing, reading and writing is faster
   9482 
   9483         * History.subproj/WebHistory.m:
   9484         (-[WebHistoryPrivate _saveHistoryGuts:URL:error:]):
   9485         convert dictionary to binary data before saving
   9486 
   9487 2004-11-18  Chris Blumenberg  <cblu (a] apple.com>
   9488 
   9489         * WebView.subproj/WebHTMLRepresentation.m:
   9490         (-[WebHTMLRepresentation currentForm]): removed stray ";"
   9491 
   9492 2004-11-18  Chris Blumenberg  <cblu (a] apple.com>
   9493 
   9494 	Fixed development build failure.
   9495 
   9496         * Misc.subproj/WebIconDatabase.m:
   9497         (+[WebIconDatabase sharedIconDatabase]): call LOG not Log
   9498 
   9499 2004-11-18  Chris Blumenberg  <cblu (a] apple.com>
   9500 
   9501 	<rdar://problem/3885708> save memory in icon DB by not using NSSets when holding 1 object
   9502 	
   9503         Reviewed by sullivan.
   9504 
   9505         * Misc.subproj/WebIconDatabase.m:
   9506         (+[WebIconDatabase sharedIconDatabase]): added timing code
   9507         (-[WebIconDatabase _clearDictionaries]): new
   9508         (-[WebIconDatabase _loadIconDictionaries]): call _clearDictionaries in 2 places before we bail, use _web_setObjectUsingSetIfNecessary:forKey: when adding site URLs to the iconURLToURLs dictionary
   9509         (-[WebIconDatabase _updateFileDatabase]): fixed comment
   9510         (-[WebIconDatabase _setIconURL:forURL:]): use _web_setObjectUsingSetIfNecessary:forKey: when adding site URLs to the iconURLToURLs dictionary
   9511         (-[WebIconDatabase _releaseIconForIconURLString:]): handle NSString objects retured from iconURLToURLs
   9512         (-[NSMutableDictionary _web_setObjectUsingSetIfNecessary:forKey:]): new, puts a set on the dictionary when there are 2 or more object for s key
   9513 
   9514 2004-11-17  Richard Williamson   <rjw (a] apple.com>
   9515 
   9516 	Fixed <rdar://problem/3885073> REGRESSION: Tab images at top of news.com.com replicated and squished
   9517 
   9518 	Correctly account for scaled image size and clipping.
   9519 
   9520         Reviewed by Maciej.
   9521 
   9522         * WebCoreSupport.subproj/WebImageData.h:
   9523         * WebCoreSupport.subproj/WebImageData.m:
   9524         * WebCoreSupport.subproj/WebImageRenderer.m:
   9525         (-[WebImageRenderer drawImageInRect:fromRect:compositeOperator:context:]):
   9526 
   9527 2004-11-17  Maciej Stachowiak  <mjs (a] apple.com>
   9528 
   9529         Reviewed by Richard.
   9530 
   9531 	<rdar://problem/3885076> Don't make IDN calls for all-ascii URLs to save about 3 pages
   9532 	at Safari startup.
   9533 	
   9534         * Misc.subproj/WebNSURLExtras.m:
   9535         (mapHostNames): If encoding and not decoding, then bail early if the URL is all ascii.
   9536         (-[NSString _web_mapHostNameWithRange:encode:makeString:]): Remove earlier special-case
   9537 	check for localhost, no longer needed.
   9538 
   9539 2004-11-17  Richard Williamson   <rjw (a] apple.com>
   9540 
   9541 	Fixed <rdar://problem/3863601> Legacy font cache code in [WebTextRendererFactory createSharedFactory] may be unnecesary
   9542 
   9543 	and added call to SPI for
   9544 
   9545 	<rdar://problem/3884448> WebKit should turn on CG local font cache
   9546 
   9547 	currently disabled until a Tiger build shows up with the SPI.
   9548 
   9549         Reviewed by David Harrison.
   9550 
   9551         * WebCoreSupport.subproj/WebTextRendererFactory.m:
   9552         (+[WebTextRendererFactory createSharedFactory]):
   9553 
   9554 2004-11-17  Richard Williamson   <rjw (a] apple.com>
   9555 
   9556         Fixed <rdar://problem/3882212> REGRESSION: Images clipped instead of scaled
   9557         Fixed <rdar://problem/3884088> Crash terminating image load
   9558 
   9559         Also added code to turn off color correction for images created
   9560         via CGImageSources.  This code is currently disabled because CG  
   9561         can't change the color space of images loaded progressively.
   9562         Further, according to Dave Hayward, CG will no longer attempt
   9563         to color correct images that don't have embedded profiles as of
   9564         Tiger 8A306.
   9565 
   9566         Reviewed by Chris.
   9567 
   9568         * WebCoreSupport.subproj/WebImageData.m:
   9569         (-[WebImageData _commonTermination]):
   9570         (-[WebImageData dealloc]):
   9571         (-[WebImageData _invalidateImageProperties]):
   9572         (-[WebImageData imageAtIndex:]):
   9573         (-[WebImageData incrementalLoadWithBytes:length:complete:]):
   9574         (-[WebImageData propertiesAtIndex:]):
   9575 
   9576 2004-11-16  Chris Blumenberg  <cblu (a] apple.com>
   9577 
   9578 	Fixed: <rdar://problem/3882034> REGRESSION: Context menu incorrect for PDF content
   9579 
   9580         Reviewed by darin.
   9581 
   9582         * WebView.subproj/WebPDFView.m:
   9583         (-[WebPDFView hitTest:]): return self if the current event is a context menu event
   9584         (-[WebPDFView menuForEvent:]): use the PDFView subview
   9585 
   9586 2004-11-15  Chris Blumenberg  <cblu (a] apple.com>
   9587 
   9588 	Fixed: <rdar://problem/3880410> save 5 dirty pages by soft-linking against PDFKit framework
   9589 
   9590         Reviewed by john.
   9591 
   9592         * WebKit.pbproj/project.pbxproj:
   9593         * WebView.subproj/WebPDFRepresentation.m:
   9594         (+[WebPDFRepresentation PDFDocumentClass]): new
   9595         (-[WebPDFRepresentation finishedLoadingWithDataSource:]): use PDFDocumentClass
   9596         * WebView.subproj/WebPDFView.h:
   9597         * WebView.subproj/WebPDFView.m:
   9598         (+[WebPDFView PDFKitBundle]): new
   9599         (+[WebPDFView PDFViewClass]): new
   9600         (-[WebPDFView initWithFrame:]): create a PDFView subview
   9601         (-[WebPDFView dealloc]): release the PDFView subview
   9602         (-[WebPDFView PDFSubview]): new
   9603 
   9604 2004-11-15  Chris Blumenberg  <cblu (a] apple.com>
   9605 
   9606 	Fixed: <rdar://problem/3879891> WebKit should link against PDFKit instead of Quartz
   9607 
   9608         Reviewed by darin.
   9609 
   9610         * WebKit.pbproj/project.pbxproj: link against PDFKit if it is present instead of Quartz.framework
   9611 
   9612 2004-11-15  Richard Williamson   <rjw (a] apple.com>
   9613 
   9614 	Fixed missing retain of image property data.
   9615 
   9616         Reviewed by John.
   9617 
   9618         * WebCoreSupport.subproj/WebImageData.h:
   9619         * WebCoreSupport.subproj/WebImageData.m:
   9620         (-[WebImageData dealloc]):
   9621         (-[WebImageData _invalidateImages]):
   9622         (-[WebImageData imageAtIndex:]):
   9623         (-[WebImageData propertiesAtIndex:]):
   9624         (-[WebImageData _frameDuration]):
   9625 
   9626 2004-11-15  Richard Williamson   <rjw (a] apple.com>
   9627 
   9628 	Cache image properties and frame durations.
   9629 	Create NSImage and TIFF representations from CGImage, lazily, as needed for
   9630 	dragging and element info dictionary.
   9631 
   9632         Reviewed by John.
   9633 
   9634         * WebCoreSupport.subproj/WebImageData.h:
   9635         * WebCoreSupport.subproj/WebImageData.m:
   9636         (-[WebImageData dealloc]):
   9637         (-[WebImageData size]):
   9638         (-[WebImageData propertiesAtIndex:]):
   9639         (-[WebImageData _frameDurationAt:]):
   9640         (-[WebImageData _frameDuration]):
   9641         * WebCoreSupport.subproj/WebImageRenderer.h:
   9642         * WebCoreSupport.subproj/WebImageRenderer.m:
   9643         (-[WebImageRenderer dealloc]):
   9644         (-[WebImageRenderer TIFFRepresentation]):
   9645         (-[WebImageRenderer image]):
   9646 
   9647 2004-11-14  Maciej Stachowiak  <mjs (a] apple.com>
   9648 
   9649         Reviewed by John.
   9650 
   9651 	<rdar://problem/3879226> WebKit needlessly uses extra memory to store icon refcounts as NSNumbers	
   9652 
   9653 	* Misc.subproj/WebIconDatabase.m:
   9654         (-[WebIconDatabase init]):
   9655         (-[WebIconDatabase _setIconURL:forURL:]):
   9656         (-[WebIconDatabase _retainIconForIconURLString:]):
   9657         (-[WebIconDatabase _releaseIconForIconURLString:]):
   9658         (-[WebIconDatabase _retainFutureIconForURL:]):
   9659         (-[WebIconDatabase _releaseFutureIconForURL:]):
   9660         * Misc.subproj/WebIconDatabasePrivate.h:
   9661 
   9662 2004-11-15  John Sullivan  <sullivan (a] apple.com>
   9663 
   9664         Reviewed by Ken.
   9665         
   9666         - fixed <rdar://problem/3879513> leak in [WebArchive _propertyListRepresentation] copying HTML to pasteboard
   9667 
   9668         * WebView.subproj/WebArchive.m:
   9669         (-[WebArchive _propertyListRepresentation]):
   9670         the array holding the subresources was not released after use, oops!
   9671 
   9672 2004-11-12  Chris Blumenberg  <cblu (a] apple.com>
   9673 
   9674 	Fixed: <rdar://problem/3874577> Opening restricted (parental) content in new window/tab reveals Safari's "Resources" folder
   9675 	
   9676         Reviewed by john.
   9677 
   9678         * WebView.subproj/WebDefaultContextMenuDelegate.m:
   9679         (-[WebDefaultUIDelegate openFrameInNewWindow:]): use the unreachable URL if there is one
   9680 
   9681 === Safari-171 ===
   9682 
   9683 2004-11-11  Richard Williamson   <rjw (a] apple.com>
   9684 
   9685         Report actual size (not partial size) but use partial size
   9686         when drawing.
   9687 
   9688         Reviewed by Maciej.
   9689 
   9690         * WebCoreSupport.subproj/WebImageData.h:
   9691         * WebCoreSupport.subproj/WebImageData.m:
   9692         (-[WebImageData size]):
   9693 
   9694 2004-11-11  Darin Adler  <darin (a] apple.com>
   9695 
   9696         Reviewed by John.
   9697 
   9698         - added _wasFirstResponderAtMouseDownTime method to bridge so we can fix
   9699           <rdar://problem/3846152> REGRESSION (125-166): can't drag text out of <input type=text> fields
   9700           with a subsequent change to WebCore.
   9701 
   9702         * WebCoreSupport.subproj/WebBridge.m:
   9703         (wasFirstResponderAtMouseDownTime:): Added. Calls _wasFirstResponderAtMouseDownTime
   9704         on the WebHTMLView.
   9705         (_getPreSmartSet): Move global inside the function, add (void) for cleanliness.
   9706         (_getPostSmartSet): Ditto.
   9707 
   9708         * WebView.subproj/WebHTMLView.m:
   9709         (-[WebHTMLViewPrivate dealloc]): Release firstResponderAtMouseDownTime.
   9710         (-[WebHTMLView _setMouseDownEvent:]): Early exit if event is not changing.
   9711         Set firstResponderAtMouseDownTime to the first responder.
   9712         (-[WebHTMLView mouseDown:]): Release firstResponderAtMouseDownTime after handling
   9713         the mouseDown event.
   9714         (-[WebHTMLView _wasFirstResponderAtMouseDownTime:]): Added. Uses the
   9715         firstResponderAtMouseDownTime field.
   9716         * WebView.subproj/WebHTMLViewInternal.h: Added firstResponderAtMouseDownTime field
   9717         and _wasFirstResponderAtMouseDownTime method.
   9718 
   9719         * English.lproj/StringsNotToBeLocalized.txt: Update for recent changes.
   9720 
   9721 2004-11-11  Richard Williamson   <rjw (a] apple.com>
   9722 
   9723         Reviewed by Chris.
   9724 
   9725 	Work-around to minimize impact of 3876764.  Cache frame durations
   9726 	after first call.  So we'll still leak 1K for each animated
   9727 	image, but that's better than 1K each time the frame is drawn!
   9728         * WebCoreSupport.subproj/WebImageData.h:
   9729         * WebCoreSupport.subproj/WebImageData.m:
   9730         (-[WebImageData _frameDuration]):
   9731 
   9732 	Simplified animation cleanup code.  Fixed leak due to 
   9733 	incorrect key passed to CFDictionaryRemoveValue.
   9734 	
   9735         (+[WebImageData stopAnimationsInView:]):
   9736         (-[WebImageData addAnimatingRenderer:inView:]):
   9737         (-[WebImageData removeAnimatingRenderer:]):
   9738         (-[WebImageData _stopAnimation]):
   9739 
   9740 2004-11-11  Darin Adler  <darin (a] apple.com>
   9741 
   9742         Reviewed by Maciej.
   9743 
   9744         - fixed <rdar://problem/3605906> Flash scrolled off the top and bottom cause CPU spin when combined with something dirty on the visible part of the page
   9745 
   9746         * WebView.subproj/WebHTMLView.m: (-[WebHTMLView drawRect:]):
   9747         Work around AppKit bug by using rectangles from getRectsBeingDrawn:count: instead of
   9748         using the passed-in rectangle.
   9749 
   9750 2004-11-11  Richard Williamson   <rjw (a] apple.com>
   9751 
   9752         Work-arounds to make new ImageIO code work correctly.  Still
   9753         disabled for now.  Requires at least Tiger 300.  Testing does
   9754         show a 3% improvement in PLT tests!  That's huge!
   9755 
   9756         Reviewed by John.
   9757 
   9758         * WebCoreSupport.subproj/WebImageData.m:
   9759         (-[WebImageData imageAtIndex:]):
   9760         (-[WebImageData incrementalLoadWithBytes:length:complete:]):
   9761         (-[WebImageData isNull]):
   9762 
   9763 2004-11-10  Chris Blumenberg  <cblu (a] apple.com>
   9764 
   9765 	Fixed: <rdar://problem/3396872> ICONS: icon DB inconsistencies can cause slowness during startup, idle and quit
   9766 
   9767         Reviewed by john.
   9768 
   9769         * Misc.subproj/WebFileDatabase.m:
   9770         (-[WebFileDatabase objectForKey:]): added logging code
   9771         * Misc.subproj/WebIconDatabase.m:
   9772         (-[WebIconDatabase init]): use alloc, init rather than autorelease, retain
   9773         (-[WebIconDatabase _loadIconDictionaries]): use 1 object for mapping icon URLs to site URLs and vice versa rather than 3. This avoids inconsistencies and is faster.
   9774         (-[WebIconDatabase _updateFileDatabase]): write 1 object out
   9775 
   9776 2004-11-09  David Hyatt  <hyatt (a] apple.com>
   9777 
   9778 	Fix for 3873234, Safari UI is unresponsive when parsing multiple HTML docs and 3873233, Safari hangs when
   9779 	loading large local files.
   9780 	
   9781         Reviewed by mjs
   9782 
   9783         * WebCoreSupport.subproj/WebBridge.m:
   9784         (-[WebBridge tokenizerProcessedData]):
   9785         * WebView.subproj/WebDataSource.m:
   9786         (-[WebDataSource _receivedMainResourceError:complete:]):
   9787         (-[WebDataSource isLoading]):
   9788 
   9789 2004-11-09  Richard Williamson   <rjw (a] apple.com>
   9790 
   9791         Fixed <rdar://problem/3870964> 8A300: Safari not recognizing a PDF link (it displays raw data)
   9792 
   9793 	Add "text/pdf" as an acceptable PDF MIME type.
   9794 
   9795         Reviewed by Chris.
   9796 
   9797         * WebView.subproj/WebDataSource.m:
   9798         (+[WebDataSource _repTypesAllowImageTypeOmission:]):
   9799         * WebView.subproj/WebFrameView.m:
   9800         (+[WebFrameView _viewTypesAllowImageTypeOmission:]):
   9801 
   9802 2004-11-08  Chris Blumenberg  <cblu (a] apple.com>
   9803 
   9804 	Fixed: <rdar://problem/3783904> Return key behavior is confusingly different between popup menus and autofill menus
   9805 
   9806         Reviewed by john.
   9807 
   9808         * WebCoreSupport.subproj/WebBridge.m:
   9809         (-[WebBridge control:textView:shouldHandleEvent:]): new
   9810         * WebView.subproj/WebFormDelegate.h:
   9811         * WebView.subproj/WebFormDelegate.m:
   9812         (-[WebFormDelegate control:textView:shouldHandleEvent:inFrame:]): new
   9813 
   9814 2004-11-05  Chris Blumenberg  <cblu (a] apple.com>
   9815 
   9816 	Fixed: <rdar://problem/3854218> Safari is sometimes really slow because of increased null events to plug-ins
   9817 
   9818         * Plugins.subproj/WebBaseNetscapePluginView.m: reverted null event interval to 0.02
   9819 
   9820 2004-11-05  Chris Blumenberg  <cblu (a] apple.com>
   9821 
   9822 	Fixed: <rdar://problem/3838413> REGRESSION (Mail): "Smart" word paste adds spaces before/after special characters
   9823 
   9824         Reviewed by rjw.
   9825 
   9826         * WebCoreSupport.subproj/WebBridge.m:
   9827         (_getPreSmartSet): copied from AppKit
   9828         (_getPostSmartSet): ditto
   9829         (-[WebBridge isCharacterSmartReplaceExempt:isPreviousCharacter:]): new
   9830 
   9831 2004-11-05  Richard Williamson   <rjw (a] apple.com>
   9832 
   9833         Fixed <rdar://problem/3810702> _checkNavigationPolicyForRequest:dataSource:formState:andCall:withSelector: ASSERTS when reentered from Xcode's man page viewer
   9834 
   9835         Reviewed by Maciej (a long time ago).
   9836 
   9837         * WebView.subproj/WebFrame.m:
   9838         (-[WebFrame _loadDataSource:withLoadType:formState:]):
   9839 
   9840         Fixed <rdar://problem/3845307> WebKit needs to export _HIWebViewRegisterClass so HIWebViews can work in Carbon nib files
   9841 
   9842         As suggested in the bug, the fix is to actually call 
   9843         HIWebViewRegisterClass in WebKitInitForCarbon, rather than
   9844         exporting the symbol.
   9845 
   9846         Reviewed by Chris.
   9847 
   9848         * Carbon.subproj/CarbonUtils.m:
   9849         (WebInitForCarbon):
   9850         * Carbon.subproj/HIWebView.m:
   9851         * WebKit.pbproj/project.pbxproj:
   9852 
   9853 === Safari-170 ===
   9854 
   9855 2004-11-05  Darin Adler  <darin (a] apple.com>
   9856 
   9857         Reviewed by Chris.
   9858 
   9859         - fixed <rdar://problem/3857151> Assertion failure in "trackingRectOwner" while moving mouse over Slashdot.org page
   9860 
   9861         * WebView.subproj/WebHTMLView.m:
   9862         (-[WebHTMLView _addTrackingRect:owner:userData:assumeInside:useTrackingNum:]): Changed to no longer call
   9863         addTrackingRect to do the work for consistency with the new method below. Not too much copied and pasted code.
   9864         (-[WebHTMLView _addTrackingRects:owner:userDataList:assumeInsideList:trackingNums:count:]): Added an override
   9865         for this new method in Tiger. No harm in implementing it on Panther, although it won't be called.
   9866         (-[WebHTMLView _removeTrackingRects:count:]): Ditto.
   9867 
   9868 2004-11-04  David Hyatt  <hyatt (a] apple.com>
   9869 
   9870 	Make sure the dominant line direction is properly set for RTL runs so that spaces will reverse.
   9871 
   9872 	Change xHeight to measure the ascent of the x glyph, since the xHeight metrics appear to be
   9873 	totally bogus in both CG and AppKit.
   9874 	
   9875         Reviewed by darin
   9876 
   9877         * WebCoreSupport.subproj/WebTextRenderer.m:
   9878         (-[WebTextRenderer xHeight]):
   9879         (-[WebTextRenderer _createATSUTextLayoutForRun:style:]):
   9880         (-[WebTextRenderer _trapezoidForRun:style:atPoint:]):
   9881         (-[WebTextRenderer _ATSU_drawHighlightForRun:style:geometry:]):
   9882         (-[WebTextRenderer _ATSU_drawRun:style:geometry:]):
   9883         (-[WebTextRenderer _ATSU_pointToOffset:style:position:reversed:includePartialGlyphs:]):
   9884 
   9885 2004-11-02  Maciej Stachowiak  <mjs (a] apple.com>
   9886 
   9887         Reviewed by Dave Hyatt (when I originally coded it).
   9888 
   9889         Redid WebKit part of fix for:
   9890 
   9891         <rdar://problem/3759187> REGRESSION (Mail): implement firstRectForCharacterRange:
   9892        
   9893         * WebView.subproj/WebHTMLView.m:
   9894         (-[WebHTMLView firstRectForCharacterRange:]): Call the appropriate new bridge method,
   9895         and translate to screen coordinates.
   9896 
   9897 2004-11-02  John Sullivan  <sullivan (a] apple.com>
   9898 
   9899         Reviewed by Hyatt.
   9900         
   9901         - [NSFont menuFontOfSize:], called from WebStringTruncator, was taking > 9% of the time creating a 
   9902         very large bookmarks menu, so I cached this one NSFont object.
   9903 
   9904         * Misc.subproj/WebStringTruncator.m:
   9905         (defaultMenuFont):
   9906         new function, caches the font used when no font is specified
   9907         (+[WebStringTruncator centerTruncateString:toWidth:]):
   9908         call new function
   9909 
   9910 2004-11-02  Ken Kocienda  <kocienda (a] apple.com>
   9911 
   9912         Reviewed by Hyatt
   9913 
   9914         WebCore now implements a command to insert a block in response to typing a return key, and
   9915         some names were improved in the course of this work.
   9916 
   9917         * WebView.subproj/WebHTMLView.m:
   9918         (-[WebHTMLView insertNewline:]): Now calls insertLineBreak on bridge object.
   9919         (-[WebHTMLView insertLineBreak:]): New method.
   9920         (-[WebHTMLView insertParagraphSeparator:]): Now implemented.
   9921         * WebView.subproj/WebView.m: 
   9922 
   9923 === Safari-169 ===
   9924 
   9925 2004-10-29  Chris Blumenberg  <cblu (a] apple.com>
   9926 
   9927         * WebKit.exp: added _WebPlugInModeKey, forgot to add it earlier
   9928 
   9929 2004-10-29  Darin Adler  <darin (a] apple.com>
   9930 
   9931         - fixed <rdar://problem/3855573> Remove reference to "WebScriptMethods" from WebScriptObject.h comments
   9932 
   9933         * Plugins.subproj/WebScriptObject.h: Removed unneeded #ifdef protection for multiple includes (since
   9934         this is an Objective-C header and we use #import for those). Fixed comments as requested in the bug
   9935         report to match the contents of the file.
   9936 
   9937 2004-10-27  Ken Kocienda  <kocienda (a] apple.com>
   9938 
   9939         Reviewed by Chris
   9940 
   9941         Added new SPI for Mail so it can get the behavior it needs when the user hits
   9942         the return key with the selection in quoted content.
   9943 
   9944         * WebView.subproj/WebView.m
   9945         * WebView.subproj/WebViewPrivate.h
   9946 
   9947 2004-10-26  Chris Blumenberg  <cblu (a] apple.com>
   9948 
   9949 	Fixed exception that Darin encountered in Mail.
   9950 
   9951         Reviewed by darin.
   9952 
   9953         * Plugins.subproj/WebPluginController.m:
   9954         (+[WebPluginController plugInViewWithArguments:fromPluginPackage:]): if the plug-in returns a nil view, return nil
   9955 
   9956 2004-10-25  Chris Blumenberg  <cblu (a] apple.com>
   9957 
   9958 	Darin made an internal notification have the Web prefix.
   9959 
   9960         Reviewed by me.
   9961 
   9962         * Plugins.subproj/WebBaseNetscapePluginView.m:
   9963         (-[WebBaseNetscapePluginView addWindowObservers]):
   9964         (-[WebBaseNetscapePluginView removeWindowObservers]):
   9965         (ConsoleConnectionChangeNotifyProc):
   9966 
   9967 2004-10-25  John Sullivan  <sullivan (a] apple.com>
   9968 
   9969         Reviewed by Chris.
   9970         
   9971         - Cleanup from fix for <rdar://problem/3851676> bookmarks should not hold onto a WebHistoryItem object;
   9972           eliminated notificationsSuppressed mechanism, which was used only by WebBookmark
   9973 
   9974         * History.subproj/WebHistoryItem.m:
   9975         removed notificationsSuppressed ivar from private data object
   9976         (-[WebHistoryItem setAlternateTitle:]):
   9977         remove notificationsSuppressed guard
   9978         (-[WebHistoryItem setURLString:]):
   9979         ditto
   9980         (-[WebHistoryItem setOriginalURLString:]):
   9981         ditto
   9982         (-[WebHistoryItem setTitle:]):
   9983         ditto
   9984         (-[WebHistoryItem _setLastVisitedTimeInterval:]):
   9985         ditto
   9986         (-[WebHistoryItem setNotificationsSuppressed:]):
   9987         removed this method
   9988         (-[WebHistoryItem notificationsSuppressed]):
   9989         ditto
   9990         
   9991         * History.subproj/WebHistoryItemPrivate.h:
   9992         removed notificationsSuppressed and setNotificationsSuppressed
   9993 
   9994 2004-10-22  Chris Blumenberg  <cblu (a] apple.com>
   9995 
   9996 	Fixed: <rdar://problem/3851491> installedPlugins being called for a page without plugins
   9997 
   9998         Reviewed by mjs.
   9999 
   10000         * WebView.subproj/WebFrameView.m:
   10001         (+[WebFrameView _canShowMIMETypeAsHTML:]): call _viewTypesAllowImageTypeOmission instead of using ivar since the ivar is nil until _viewTypesAllowImageTypeOmission is called, this was causing [WebView canShowMIMEType:] to check plug-ins 
   10002 
   10003 === Safari-168 ===
   10004 
   10005 2004-10-22  Ken Kocienda  <kocienda (a] apple.com>
   10006 
   10007         Reviewed by me
   10008 
   10009         * WebKit.pbproj/project.pbxproj: Add GCC_ENABLE_OBJC_GC and GCC_FAST_OBJC_DISPATCH flags.
   10010 
   10011 2004-10-21  Darin Adler  <darin (a] apple.com>
   10012 
   10013         Reviewed by John.
   10014 
   10015         - fixed <rdar://problem/3847994> REGRESSION: reproducible exception in WebImageRenderer releasePatternColor; afterwards get crash or no more browsing
   10016 
   10017         * WebCoreSupport.subproj/WebImageRenderer.m:
   10018         (-[WebInternalImage createRendererIfNeeded]): Replaced retainOrCopyIfNeeded with this.
   10019         This returns nil if a copied renderer isn't needed, and returns a new renderer if a copy is.
   10020         The old version was sometimes returning a WebInternalImage and other times a WebImageRenderer.
   10021         (-[WebImageRenderer retainOrCopyIfNeeded]): Returns the result of createRendererIfNeeded
   10022         or retains self and returns self.
   10023 
   10024 2004-10-20  Darin Adler  <darin (a] apple.com>
   10025 
   10026         Reviewed by Dave.
   10027 
   10028         - fixed <rdar://problem/3470715> Pattern cache can get huge with use of css background-image in Safari
   10029 
   10030         * WebCoreSupport.subproj/WebImageRenderer.h: Change WebImageRenderer to be a subclass of NSObject
   10031         rather than NSImage and contain a pointer to a WebInternalImage.
   10032         * WebCoreSupport.subproj/WebImageRenderer.m:
   10033         (-[WebInternalImage releasePatternColor]): Added. Releases patternColor.
   10034         (-[WebImageRenderer initWithMIMEType:]): Added. Makes WebInternalImage and then self.
   10035         (-[WebImageRenderer initWithData:MIMEType:]): Ditto.
   10036         (-[WebImageRenderer initWithContentsOfFile:]): Ditto.
   10037         (-[WebImageRenderer dealloc]): Added. Calls releasePatternColor and then releases WebInternalImage.
   10038         (-[WebImageRenderer image]): Added. Returns pointer to image.
   10039         (-[WebImageRenderer MIMEType]): Added. Calls through to image.
   10040         (-[WebImageRenderer TIFFRepresentation]): Ditto.
   10041         (-[WebImageRenderer frameCount]): Ditto.
   10042         (-[WebImageRenderer setOriginalData:]): Added. Sets image data pointer.
   10043         (+[WebImageRenderer stopAnimationsInView:]): Added. Calls through to image.
   10044         (-[WebImageRenderer incrementalLoadWithBytes:length:complete:]): Ditto.
   10045         (-[WebImageRenderer size]): Ditto.
   10046         (-[WebImageRenderer resize:]): Ditto.
   10047         (-[WebImageRenderer drawImageInRect:fromRect:]): Ditto.
   10048         (-[WebImageRenderer drawImageInRect:fromRect:compositeOperator:context:]): Ditto.
   10049         (-[WebImageRenderer stopAnimation]): Ditto.
   10050         (-[WebImageRenderer tileInRect:fromPoint:context:]): Ditto.
   10051         (-[WebImageRenderer isNull]): Ditto.
   10052         (-[WebImageRenderer retainOrCopyIfNeeded]): Ditto.
   10053         (-[WebImageRenderer increaseUseCount]): Ditto.
   10054         (-[WebImageRenderer decreaseUseCount]): Ditto.
   10055         (-[WebImageRenderer flushRasterCache]): Ditto.
   10056         (-[WebImageRenderer imageRef]): Ditto.
   10057         (-[WebImageRenderer copyWithZone:]): Ditto.
   10058 
   10059         * Misc.subproj/WebNSViewExtras.m: (-[NSView _web_dragImage:rect:event:pasteboard:source:offset:]):
   10060         Update for slight changes to WebImageRenderer API.
   10061         * WebCoreSupport.subproj/WebImageRendererFactory.m:
   10062         (-[WebImageRendererFactory imageRendererWithMIMEType:]): Ditto.
   10063         (-[WebImageRendererFactory imageRendererWithData:MIMEType:]): Ditto.
   10064         (-[WebImageRendererFactory imageRendererWithSize:]): Ditto.
   10065         (-[WebImageRendererFactory imageRendererWithName:]): Ditto.
   10066         * WebView.subproj/WebImageView.m: (-[WebImageView image]): Ditto.
   10067 
   10068 2004-10-20  Chris Blumenberg  <cblu (a] apple.com>
   10069 	
   10070 	Fixed: <rdar://problem/3846943> REGRESSION: JNLP files are rendered instead of downloaded
   10071 
   10072         Reviewed by john.
   10073 
   10074         * Plugins.subproj/WebBasePluginPackage.h:
   10075         * Plugins.subproj/WebBasePluginPackage.m:
   10076         (-[WebBasePluginPackage isJavaPlugIn]): new
   10077         * Plugins.subproj/WebPluginDatabase.m:
   10078         (-[WebPluginDatabase refresh]): don't register the Java plug-in for a document view since Java file should be downloaded when not embedded.
   10079 
   10080 2004-10-20  Chris Blumenberg  <cblu (a] apple.com>
   10081 
   10082 	Fixed:
   10083 	<rdar://problem/3842030> WebKit needs to pass the mode (NP_FULL, NP_EMBED, etc) when calling plugInViewWithArguments
   10084 	<rdar://problem/3792852> Safari is loading the new QuickTime Cocoa plugin on Panther
   10085 
   10086         Reviewed by darin.
   10087 
   10088         * Plugins.subproj/WebPluginDocumentView.m:
   10089         (-[WebPluginDocumentView setDataSource:]): pass "full" as the mode
   10090         * Plugins.subproj/WebPluginPackage.m:
   10091         (-[WebPluginPackage initWithPath:]): load plug-in with the "webplugin" extension
   10092         * WebCoreSupport.subproj/WebBridge.m:
   10093         (-[WebBridge pluginViewWithPackage:attributeNames:attributeValues:baseURL:]): pass "embed" as the mode
   10094         * WebKit.pbproj/project.pbxproj:
   10095 
   10096 2004-10-19  Vicki Murley <vicki (a] apple.com>
   10097 
   10098 	- bump WebKit version to 167.1, so that we can do a quick dot submission for <rdar://problem/3843951> 
   10099 
   10100         * WebKit.pbproj/project.pbxproj:
   10101 
   10102 2004-10-19  Darin Adler  <darin (a] apple.com>
   10103 
   10104         Change suggested by Maciej during code review.
   10105 
   10106         * WebCoreSupport.subproj/WebTextRenderer.m: Changed rounding hack table to be const so it can be in shared instead
   10107         of private memory, and doesn't require an initialization function.
   10108         (+[WebTextRenderer initialize]): Removed initialization.
   10109 
   10110 2004-10-19  Darin Adler  <darin (a] apple.com>
   10111 
   10112         Reviewed by Maciej.
   10113 
   10114         - fixed <rdar://problem/3838934> Safari stops loading pages after rangeOfCharacterFromSet nil argument exception
   10115         - fixed <rdar://problem/3843951> REGRESSION (166-167): Safari crashes in widthForNextCharacter (belkin.com, at startup for others)
   10116         - fixed <rdar://problem/3841049> REGRESSION (109-110): control characters render as square boxes
   10117 
   10118         * WebCoreSupport.subproj/WebTextRenderer.m:
   10119         (isSpace): Merged in isAlternateSpace, never used.
   10120         (setupRoundingHackCharacterTable): Fixed size of table, was 1 entry too short. Got rid of unneeded call to bzero,
   10121         since globals start out zeroed automatically.
   10122         (isRoundingHackCharacter): Fixed backwards logic causing the crash in widthForNextCharacter.
   10123         Also removed explicit compare with 1; check for non-zero is just fine.
   10124         (fontContainsString): Change code so we'll just skip the font if the covered character set returns nil rather than
   10125         throwing an exception like the old version did. This should make bug 3838934 go away, although perhaps covering up
   10126         the underlying problem.
   10127         (-[WebTextRenderer _convertCharacters:length:toGlyphs:]): Removed unused skipControlCharacters: parameter and also
   10128         the unnecessary code to copy the buffer to change newline characters and non-break spaces to spaces.
   10129         (-[WebTextRenderer _convertUnicodeCharacters:length:toGlyphs:]): Removed unused local.
   10130         (-[WebTextRenderer _extendCharacterToGlyphMapToInclude:]): Added code to set up special cases for control characters,
   10131         \n and non-break spaces.
   10132         (-[WebTextRenderer _createATSUTextLayoutForRun:]): Added comment about the cases this code does not handle that
   10133         are handled by the CG case.
   10134         (widthForNextCharacter): Call isSpace instead of checking specifically for the space character here. The old code
   10135         would not handle cases with '\n' coming across from WebCore properly.
   10136 
   10137 2004-10-18  Chris Blumenberg  <cblu (a] apple.com>
   10138 
   10139 	Fixed: <rdar://problem/3840916> GC: -[WebNetscapePluginPackage initWithPath:] leaks an NSURL
   10140 
   10141         Reviewed by kevin.
   10142 
   10143         * Plugins.subproj/WebNetscapePluginPackage.m:
   10144         (-[WebNetscapePluginPackage initWithPath:]): use executablePath on NSBundle instead of CFBundleCopyExecutableURL
   10145 
   10146 2004-10-18  Chris Blumenberg  <cblu (a] apple.com>
   10147 
   10148         * DOM.subproj/DOMPrivate.h: change to copied header that was never committed
   10149 
   10150 2004-10-18  John Sullivan  <sullivan (a] apple.com>
   10151 
   10152         Reviewed by Ken.
   10153         
   10154         - fixed <rdar://problem/3810183> Make WebHTMLView respect return value of webView:doCommandBySelector:
   10155 
   10156         * WebView.subproj/WebHTMLView.m:
   10157         (-[WebHTMLView doCommandBySelector:]):
   10158         only do default action if delegate returns NO; this works with Mail as of Tiger 8A275.
   10159 
   10160 === Safari-167 ===
   10161 
   10162 2004-10-14  Ken Kocienda  <kocienda (a] apple.com>
   10163 
   10164         Reviewed by John
   10165 
   10166         Final fix for these bugs:
   10167         
   10168         <rdar://problem/3806306> HTML editing puts spaces at start of line
   10169         <rdar://problem/3814252> HTML editing groups space with word causing wrapping
   10170 
   10171         This change sets some new CSS properties that have been added to WebCore to 
   10172         enable whitespace-handling and line-breaking features that make WebView work
   10173         more like a text editor.
   10174 
   10175         * WebView.subproj/WebHTMLRepresentation.m:
   10176         (-[WebHTMLRepresentation finishedLoadingWithDataSource:]): Turn on special editing
   10177         CSS properties when loading an HTML document into a WebView that is editable.
   10178         * WebView.subproj/WebView.m:
   10179         (-[WebView setEditable:]): Add and remove special editing CSS properties in current
   10180         document being displayed.
   10181 
   10182 2004-10-14  Richard Williamson   <rjw (a] apple.com>
   10183 
   10184         Fixed <rdar://problem/3823026> making isRoundingHackCharacter use -O3 and an 8-bit lookup-table will speed "XBS" test up by 3% (actually < 1%)
   10185 
   10186         Careful testing shows a small performance gain on very large text files.  
   10187         I saw large variations in timings, but taking the lowest PLT timing 
   10188         with and without this change showed a 0.9% gain.  Note the cvs-base showed
   10189         no improvement.  The improvement was for the large page attached to the
   10190         bug.
   10191 
   10192         Reviewed by Ken.
   10193 
   10194         * WebCoreSupport.subproj/WebTextRenderer.m:
   10195         (setupRoundingHackCharacterTable):
   10196         (isRoundingHackCharacter):
   10197         (+[WebTextRenderer initialize]):
   10198 
   10199 2004-10-14  Ken Kocienda  <kocienda (a] apple.com>
   10200 
   10201         Reviewed by me
   10202 
   10203         Fix build breakage. These three functions need to return the values from their
   10204         calls to WebCGColorSpaceCreateXXX.
   10205 
   10206         * WebCoreSupport.subproj/WebGraphicsBridge.m:
   10207         (-[WebGraphicsBridge createRGBColorSpace])
   10208         (-[WebGraphicsBridge createGrayColorSpace])
   10209         (-[WebGraphicsBridge createCMYKColorSpace])
   10210 
   10211 2004-10-13  Richard Williamson   <rjw (a] apple.com>
   10212 
   10213 	Addressed concerns in <rdar://problem/3803117> RESP: High complexity in icu uidna_IDNToASCII called by [NSString(WebNSURLExtras) _web_mapHostNameWithRange:encode:makeString:]
   10214 
   10215 	In practice I saw NO improvement in performance.  Although,
   10216 	special-case tests could possibly show improvement.  Anyway,
   10217 	the changes don't hurt performance.
   10218 
   10219         Reviewed by Maciej.
   10220 
   10221         * Misc.subproj/WebNSURLExtras.m:
   10222         (-[NSString _web_mapHostNameWithRange:encode:makeString:]):
   10223 
   10224 2004-10-13  Maciej Stachowiak  <mjs (a] apple.com>
   10225 
   10226         Reviewed by Ken.
   10227 
   10228 	<rdar://problem/3824626> Change to do colormatching for DeviceRGB colorspace causes ~11% Safari slowdown
   10229         
   10230 	- I fixed this by turning off all colormatching for WebKit
   10231 	content. We might turn it back on later. For now, it's possible to
   10232 	turn it on temporarily by defining COLORMATCH_EVERYTHING.
   10233 	
   10234 	* WebCoreSupport.subproj/WebGraphicsBridge.m:
   10235         (-[WebGraphicsBridge setFocusRingStyle:radius:color:]):
   10236         (-[WebGraphicsBridge additionalPatternPhase]):
   10237         (-[WebGraphicsBridge createRGBColorSpace]):
   10238         (-[WebGraphicsBridge createGrayColorSpace]):
   10239         (-[WebGraphicsBridge createCMYKColorSpace]):
   10240         * WebCoreSupport.subproj/WebImageData.m:
   10241         * WebCoreSupport.subproj/WebImageRenderer.h:
   10242         * WebCoreSupport.subproj/WebImageRenderer.m:
   10243         (-[WebImageRenderer _adjustSizeToPixelDimensions]):
   10244         (-[WebImageRenderer incrementalLoadWithBytes:length:complete:]):
   10245         (-[WebImageRenderer _adjustColorSpace]):
   10246         (-[WebImageRenderer drawClippedToValidInRect:fromRect:]):
   10247         (-[WebImageRenderer tileInRect:fromPoint:context:]):
   10248         (_createImageRef):
   10249         (WebCGColorSpaceCreateRGB):
   10250         (WebCGColorSpaceCreateGray):
   10251         (WebCGColorSpaceCreateCMYK):
   10252         * WebKitPrefix.h:
   10253 
   10254 2004-10-13  Richard Williamson   <rjw (a] apple.com>
   10255 
   10256 	Don't fill background with transparency unless debug flag
   10257 	is enabled.
   10258 
   10259         Reviewed by Hyatt.
   10260 
   10261         * WebView.subproj/WebHTMLView.m:
   10262         (-[WebHTMLView drawRect:]):
   10263 
   10264 2004-10-12  Richard Williamson   <rjw (a] apple.com>
   10265 
   10266         Fixed <rdar://problem/3829705> Need to remove filling w/ transparency when not drawing backgroundy.
   10267 
   10268         Reviewed by Ken.
   10269 
   10270         * WebView.subproj/WebHTMLView.m:
   10271         (-[WebHTMLView _transparentBackground]):
   10272         (-[WebHTMLView _setTransparentBackground:]):
   10273         (-[WebHTMLView drawRect:]):
   10274         * WebView.subproj/WebHTMLViewInternal.h:
   10275         * WebView.subproj/WebHTMLViewPrivate.h:
   10276 
   10277 2004-10-11  Chris Blumenberg  <cblu (a] apple.com>
   10278 
   10279 	Fixed: <rdar://problem/3802039> 8A259: Can't use Grab services to grab selection from screen
   10280 
   10281         Reviewed by john.
   10282 
   10283         * WebView.subproj/WebHTMLView.m:
   10284         (+[WebHTMLView initialize]): register service "return types" which are types that can be inserted into a WebView
   10285         (-[WebHTMLView writeSelectionToPasteboard:types:]): service protocol method, be sure to only write specified types
   10286         (-[WebHTMLView readSelectionFromPasteboard:]): new, service protocol method, insert types
   10287         (-[WebHTMLView validRequestorForSendType:returnType:]): moved, handle return types
   10288 
   10289 2004-10-11  Darin Adler  <darin (a] apple.com>
   10290 
   10291         Reviewed by John.
   10292 
   10293         - fixed <rdar://problem/3834130> nil-object-in-dictionary exception seen in -[WebView _elementAtWindowPoint:]
   10294 
   10295         * WebView.subproj/WebView.m: (-[WebView _elementAtWindowPoint:]): Added a check for nil frame.
   10296 
   10297 2004-10-11  Darin Adler  <darin (a] apple.com>
   10298 
   10299         Reviewed by John.
   10300 
   10301         - fixed <rdar://problem/3834166> <input type=file> sends onchange even when the same file is chosen twice
   10302 
   10303         * WebCoreSupport.subproj/WebFileButton.m: (-[WebFileButton chooseFilename:]):
   10304         Do nothing if filename is the same as before.
   10305 
   10306 2004-10-11  Ken Kocienda  <kocienda (a] apple.com>
   10307 
   10308         Reviewed by Darin
   10309 
   10310         * WebView.subproj/WebHTMLView.m:
   10311         (-[WebTextCompleteController doCompletion]): bridge call to get caret rect at a node
   10312         now takes an affinity: caretRectAtNode:offset:affinity:.
   10313 
   10314 2004-10-10  Ken Kocienda  <kocienda (a] apple.com>
   10315 
   10316         Reviewed by Chris
   10317 
   10318         Fix for this bug:
   10319         
   10320         <rdar://problem/3814236> REGRESSION (Mail): Can't set the color of text in Mail compose window using drag/drag from color panel
   10321 
   10322         * WebView.subproj/WebHTMLView.m:
   10323         (+[WebHTMLView _insertablePasteboardTypes]): Add NSColorPboardType to list.
   10324         (-[WebHTMLView _isNSColorDrag:]): New helper. Determines if drag is an NSColor drag.
   10325         (-[WebHTMLView draggingUpdatedWithDraggingInfo:actionMask:]): Add a case for NSColor drags,
   10326         else do what we did before.
   10327         (-[WebHTMLView concludeDragForDraggingInfo:actionMask:]): Add a case for NSColor drags, which creates
   10328         a CSS style containing color info and calls the bridge to apply the style. Otherwise, do what we did before.
   10329 
   10330 2004-10-11  Darin Adler  <darin (a] apple.com>
   10331 
   10332         Reviewed by Ken.
   10333 
   10334         - fixed <rdar://problem/3833848> REGRESSION (133-134): each keydown event is getting sent multiple times
   10335 
   10336         * WebView.subproj/WebHTMLView.m: (-[WebHTMLView performKeyEquivalent:]):
   10337         Don't send an event through WebCore if it has already been through once.
   10338 
   10339 2004-10-10  John Sullivan  <sullivan (a] apple.com>
   10340 
   10341         Reviewed by Ken.
   10342         
   10343         - fixed <rdar://problem/3777253> Crash in redirect mechanism trying to display error page for bad scheme
   10344 
   10345         * WebView.subproj/WebMainResourceClient.m:
   10346         (-[WebMainResourceClient connection:willSendRequest:redirectResponse:]):
   10347         add retain/autorelease to the request returned from call to super. In this case, the return value
   10348         was being dealloc'ed before being returned.
   10349 
   10350 2004-10-09  Chris Blumenberg  <cblu (a] apple.com>
   10351 
   10352 	Fixed: 
   10353 	<rdar://problem/3625352> up and down arrow and page up/down keys don't work to scroll overflow:auto/scroll/overlay areas
   10354 	<rdar://problem/3397658> scroll wheel does not work to scroll overflow:auto/scroll/overlay areas (RSS)
   10355 
   10356         Reviewed by hyatt.
   10357 
   10358         * Plugins.subproj/WebBaseNetscapePluginStream.m:
   10359         (-[WebBaseNetscapePluginStream initWithRequestURL:pluginPointer:notifyData:sendNotification:]): fixed typo in comment
   10360         * Plugins.subproj/WebNetscapePluginStream.m:
   10361         (-[WebNetscapePluginStream initWithRequest:pluginPointer:notifyData:sendNotification:]): ditto
   10362         * WebView.subproj/WebFramePrivate.h:
   10363         * WebView.subproj/WebFrameView.m:
   10364         (-[WebFrameView _bridge]): new
   10365         (-[WebFrameView scrollToBeginningOfDocument:]): call the bridge to scroll, if that fails, scroll the document view
   10366         (-[WebFrameView scrollToEndOfDocument:]): ditto
   10367         (-[WebFrameView _pageVertically:]): ditto
   10368         (-[WebFrameView _pageHorizontally:]): ditto
   10369         (-[WebFrameView _scrollLineVertically:]): ditto
   10370         (-[WebFrameView _scrollLineHorizontally:]): ditto
   10371         * WebView.subproj/WebHTMLView.m:
   10372         (-[WebHTMLView scrollWheel:]): call the bridge to scroll, if that fails, pass to next responder
   10373 
   10374 === Safari-166 ===
   10375 
   10376 2004-10-05  Chris Blumenberg  <cblu (a] apple.com>
   10377 
   10378 	Fixed: <rdar://problem/3827002> assertion failure in WebBaseNetscapePluginStream on abc.go.com
   10379 
   10380         Reviewed by rjw.
   10381 
   10382         * Plugins.subproj/WebBaseNetscapePluginStream.m:
   10383         (-[WebBaseNetscapePluginStream initWithRequestURL:pluginPointer:notifyData:sendNotification:]): avoid assertion failure in dealloc by temporarily setting isTerminated to YES in case we are released in this method
   10384         * Plugins.subproj/WebNetscapePluginStream.m:
   10385         (-[WebNetscapePluginStream initWithRequest:pluginPointer:notifyData:sendNotification:]): ditto
   10386 
   10387 2004-10-05  John Sullivan  <sullivan (a] apple.com>
   10388 
   10389         * WebCoreSupport.subproj/WebBridge.m:
   10390         (-[WebBridge pluginViewWithPackage:attributeNames:attributeValues:baseURL:]):
   10391         initialize "arguments" var to nil to satisfy compiler on deployment build.
   10392 
   10393 2004-10-05  Richard Williamson   <rjw (a] apple.com>
   10394 
   10395         Fixed <rdar://problem/3825442> first click lost for Dashboard
   10396 	Allow dashboard to force acceptsFirstMouse:
   10397 
   10398         Reviewed by Chris.
   10399 
   10400         * WebView.subproj/WebHTMLView.m:
   10401         (-[WebHTMLView acceptsFirstMouse:]):
   10402         * WebView.subproj/WebView.m:
   10403         (-[WebView _dashboardBehavior:]):
   10404         * WebView.subproj/WebViewInternal.h:
   10405         * WebView.subproj/WebViewPrivate.h:
   10406 
   10407         * WebCoreSupport.subproj/WebImageRenderer.h:
   10408         Comment change only
   10409 
   10410 2004-10-05  Chris Blumenberg  <cblu (a] apple.com>
   10411 
   10412 	Fixed: <rdar://problem/3760920> Need to record plugin view instances
   10413 	
   10414         Reviewed by rjw.
   10415 
   10416         * Plugins.subproj/WebPluginController.h:
   10417         * Plugins.subproj/WebPluginController.m:
   10418         (+[WebPluginController plugInViewWithArguments:fromPluginPackage:]): new, creates plug-in view and adds it to global list
   10419         (+[WebPluginController isPlugInView:]): new, checks if the plug-in view is in the global list
   10420         (-[WebPluginController destroyAllPlugins]): remove the plug-in from the global list 
   10421         * Plugins.subproj/WebPluginDocumentView.m:
   10422         (-[WebPluginDocumentView setDataSource:]): call [WebPluginController plugInViewWithArguments:fromPluginPackage:]
   10423         * WebCoreSupport.subproj/WebBridge.m:
   10424         (-[WebBridge pluginViewWithPackage:attributeNames:attributeValues:baseURL:]): ditto
   10425         * WebView.subproj/WebFrame.m:
   10426         (-[WebFrame _reloadForPluginChanges]): call [WebPluginController isPlugInView:]
   10427         * WebView.subproj/WebHTMLView.m:
   10428         (-[WebHTMLView addSubview:]): ditto
   10429 
   10430 2004-10-05  David Hyatt  <hyatt (a] apple.com>
   10431 
   10432 	Fix to make selection more like NSTextView.  All gap painting is now done by WebCore, so WebKit no longer
   10433 	needs to try to fill gaps around text.
   10434 	
   10435         Reviewed by kocienda
   10436 
   10437         * WebCoreSupport.subproj/WebTextRenderer.m:
   10438         (-[WebTextRenderer _CG_drawHighlightForRun:style:geometry:]):
   10439         (-[WebTextRenderer _ATSU_drawHighlightForRun:style:geometry:]):
   10440 
   10441 2004-10-05  Darin Adler  <darin (a] apple.com>
   10442 
   10443         Reviewed by John.
   10444 
   10445         - fixed <rdar://problem/3577255> custom file icon shows up upside down in <input type=file>
   10446 
   10447         * WebCoreSupport.subproj/WebFileButton.m: (-[WebFileButton setFilename:]): Added a call to
   10448         setFlipped that fixes the problem, even though I don't know why.
   10449 
   10450 2004-10-04  Darin Adler  <darin (a] apple.com>
   10451 
   10452         Reviewed by Maciej.
   10453 
   10454         - fixed <rdar://problem/3814237> REGRESSION (Mail): Copy/paste style does not set color in Mail compose window
   10455 
   10456         * WebView.subproj/WebHTMLView.m:
   10457         (-[WebHTMLView _selectionStartFontAttributesAsRTF]): Changed to call new bridge method
   10458         named fontAttributesForSelectionStart, deleted the method this used to use, and renamed
   10459         this to have the word "start" in it.
   10460         (-[WebHTMLView copyFont:]): Updated for name change.
   10461 
   10462         * English.lproj/StringsNotToBeLocalized.txt: Updated for recent changes.
   10463 
   10464 2004-10-04  Chris Blumenberg  <cblu (a] apple.com>
   10465 
   10466         * WebView.subproj/WebFrameInternal.h: removed constant declarations that I committed by mistake
   10467 
   10468 2004-10-04  Chris Blumenberg  <cblu (a] apple.com>
   10469 
   10470 	Fixed: <rdar://problem/3798948> NPP_URLNotify is not called if plug-in calls NPN_*URLNotfy
   10471 	Fixed a number of FIXME's related to notifying plug-ins of loaded pages.
   10472 
   10473         Reviewed by rjw.
   10474 
   10475         * Plugins.subproj/WebBaseNetscapePluginStream.h: 
   10476 		- replaced URL ivar with requestURL and responseURL ivars since we need to pass both to plug-ins
   10477         	- added sendNotification boolean. Relying on notifyData not being NULL was not information to know whether to call NPP_URLNotify or not.
   10478 		- added isTerminated boolean because determining whether or not stream.ndata is NULL is not enough to know if the stream has been cancelled.
   10479 	* Plugins.subproj/WebBaseNetscapePluginStream.m:
   10480         (+[WebBaseNetscapePluginStream reasonForError:]): new, factored out from receivedError:
   10481         (-[WebBaseNetscapePluginStream initWithRequestURL:pluginPointer:notifyData:sendNotification:]): new
   10482         (-[WebBaseNetscapePluginStream dealloc]): release new ivars
   10483         (-[WebBaseNetscapePluginStream finalize]): added assert
   10484         (-[WebBaseNetscapePluginStream setRequestURL:]): new
   10485         (-[WebBaseNetscapePluginStream setResponseURL:]): new
   10486         (-[WebBaseNetscapePluginStream startStreamResponseURL:expectedContentLength:lastModifiedDate:MIMEType:]): renamed, use responseURL as it basically did before
   10487         (-[WebBaseNetscapePluginStream startStreamWithResponse:]): call renamed method
   10488         (-[WebBaseNetscapePluginStream destroyStream]): 
   10489 		- do nothing if terminated
   10490 		- call NPP_StreamAsFile and NPP_DestroyStream if stream.ndata is not NULL
   10491 		- call NPP_URLNotify if sendNotification is YES regardless of value of notifyData
   10492         (-[WebBaseNetscapePluginStream receivedError:]): call reasonForError
   10493         (-[WebBaseNetscapePluginStream deliverData]): use renamed ivar
   10494         * Plugins.subproj/WebBaseNetscapePluginView.h:
   10495 		- added observingFrameLoadNotification boolean
   10496 		- renamed dictionary ivar to pendingFrameLoads which has WebFrame keys and WebPluginRequest values
   10497         * Plugins.subproj/WebBaseNetscapePluginView.m:
   10498         (-[WebBaseNetscapePluginView addFrameLoadObserver]): new
   10499         (-[WebBaseNetscapePluginView removeFrameLoadObserver]): new
   10500         (-[WebBaseNetscapePluginView stop]): call removeFrameLoadObserver
   10501         (-[WebBaseNetscapePluginView initWithFrame:]): use renamed pendingFrameLoads ivar
   10502         (-[WebBaseNetscapePluginView dealloc]): ditto
   10503         (-[WebBaseNetscapePluginView requestWithURLCString:]): set referrer on the request just as IE does
   10504         (-[WebBaseNetscapePluginView evaluateJavaScriptPluginRequest:]): 
   10505 		- call NPP_URLNotify depending of value of sendNotification
   10506 		- call new init method on WebBaseNetscapePluginStream rather then setting variables individually
   10507         (-[WebBaseNetscapePluginView webFrame:didFinishLoadWithReason:]): new, calls NPP_URLNotify at the right time with the right value
   10508         (-[WebBaseNetscapePluginView webFrame:didFinishLoadWithError:]): new, delegate method called from WebFrame
   10509         (-[WebBaseNetscapePluginView loadPluginRequest:]): call addFrameLoadObserver
   10510         (-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:sendNotification:]): take new sendNotification parameter and pass it
   10511         (-[WebBaseNetscapePluginView getURLNotify:target:notifyData:]): pass YES for sendNotification
   10512         (-[WebBaseNetscapePluginView getURL:target:]): pass NO for sendNotification
   10513         (-[WebBaseNetscapePluginView _postURL:target:len:buf:file:notifyData:sendNotification:allowHeaders:]): take new sendNotification parameter and pass it
   10514         (-[WebBaseNetscapePluginView postURLNotify:target:len:buf:file:notifyData:]): pass YES for sendNotification
   10515         (-[WebBaseNetscapePluginView postURL:target:len:buf:file:]): pass NO for sendNotification
   10516         (-[WebPluginRequest initWithRequest:frameName:notifyData:sendNotification:]): take new sendNotification parameter
   10517         (-[WebPluginRequest sendNotification]): new
   10518         * Plugins.subproj/WebBaseNetscapePluginViewPrivate.h:
   10519         * Plugins.subproj/WebNetscapePluginEmbeddedView.m:
   10520         (-[WebNetscapePluginEmbeddedView didStart]): set referrer on the request just as IE does
   10521         * Plugins.subproj/WebNetscapePluginRepresentation.m:
   10522         (-[WebNetscapePluginRepresentation receivedData:withDataSource:]): set the request URL on the stream
   10523         * Plugins.subproj/WebNetscapePluginStream.h:
   10524         * Plugins.subproj/WebNetscapePluginStream.m:
   10525         (-[WebNetscapePluginStream initWithRequest:pluginPointer:notifyData:sendNotification:]): take new sendNotification parameter and pass it
   10526         (-[WebNetscapePluginStream dealloc]): use renamed ivar
   10527         (-[WebNetscapePluginStream start]): ditto
   10528         * WebView.subproj/WebFrame.m:
   10529         (-[WebFrame _setState:]): removed notification posting code. This was only used by WebBaseNetscapePluginView and it was the wrong notification to send.
   10530         (-[WebFrame _checkLoadCompleteForThisFrame]): call internal load delegate to tell it that the load has finished
   10531         (-[WebFrame _loadItem:withLoadType:]): ditto
   10532         (-[WebFrame _continueFragmentScrollAfterNavigationPolicy:formState:]): ditto
   10533         (-[WebFrame _setInternalLoadDelegate:]): new
   10534         (-[WebFrame _internalLoadDelegate]): new
   10535         * WebView.subproj/WebFrameInternal.h:
   10536         * WebView.subproj/WebFramePrivate.h:
   10537 
   10538 2004-10-04  Chris Blumenberg  <cblu (a] apple.com>
   10539 
   10540 	Fixed: <rdar://problem/3758113> REGRESSION: Macromedia ColdFusion page doesn't show main content
   10541 
   10542 	After bumping up our plug-in version, Flash now sends 2 CRLF's between the headers and body of their POST request. Our code was not prepared for this.
   10543 
   10544         Reviewed by darin.
   10545 
   10546         * Plugins.subproj/WebBaseNetscapePluginView.m:
   10547         (-[NSData _web_locationAfterFirstBlankLine]): looks for 2 CRLF's, not for 2 LF's
   10548 
   10549 2004-10-04  Darin Adler  <darin (a] apple.com>
   10550 
   10551         Reviewed by Ken.
   10552 
   10553         - fixed a potential storage leak when we turn on CGImageRef image rendering
   10554 
   10555         * WebCoreSupport.subproj/WebImageRenderer.m: (-[WebImageRenderer dealloc]): Fix potential storage leak
   10556         by adding [super dealloc], but leak was not real yet because the code is commented out.
   10557 
   10558         - make paste style work with color as part of fix to <rdar://problem/3814237> REGRESSION (Mail):
   10559           Copy/paste style does not set color in Mail compose window
   10560 
   10561         * WebView.subproj/WebHTMLView.m:
   10562         (-[WebHTMLView _selectionFontAttributes]): Change structure so it's easy to add more attributes.
   10563         For now I haven't added any yet.
   10564         (-[WebHTMLView _colorAsString:]): Moved this earlier in the file.
   10565         (-[WebHTMLView _shadowAsString:]): Ditto.
   10566         (-[WebHTMLView _styleFromFontAttributes:]): Add background color, foreground color, and text shadow.
   10567 
   10568 2004-09-30  Richard Williamson   <rjw (a] apple.com>
   10569 
   10570 	Fixed <rdar://problem/3821215> NPN hasMethod and hasProperty functions should take NPObjects, not NPClass
   10571 
   10572 	Also changed dashboard regions dictionary to use "control"
   10573 	for scroller region label, instead of "scroller, per
   10574 	request from ouch. 
   10575 		
   10576         Reviewed by Chris.
   10577 
   10578         * Plugins.subproj/npruntime.h:
   10579         * WebView.subproj/WebView.m:
   10580         (-[WebView _addScrollerDashboardRegions:from:]):
   10581 
   10582 2004-09-30  Chris Blumenberg  <cblu (a] apple.com>
   10583 
   10584 	Fixed: <rdar://problem/3498680> switching back and forth between tabs stops calling anything in a plug-in
   10585 
   10586         Reviewed by darin.
   10587 
   10588         * Plugins.subproj/WebBaseNetscapePluginView.m:
   10589         (-[WebBaseNetscapePluginView sendEvent:]): call setWindowIfNecessary because the window may have changed
   10590         (-[WebBaseNetscapePluginView updateAndSetWindow]): new
   10591         (-[WebBaseNetscapePluginView setWindowIfNecessary]): was setWindow, this method now just sets the window
   10592         (-[WebBaseNetscapePluginView start]): call updateAndSetWindow
   10593         (-[WebBaseNetscapePluginView viewDidMoveToWindow]): ditto
   10594         (-[WebBaseNetscapePluginView viewHasMoved:]): ditto
   10595 
   10596 2004-09-30  Chris Blumenberg  <cblu (a] apple.com>
   10597 
   10598 	Fixed: <rdar://problem/3498668> switching out of tab doesn't send loseFocusEvent to plug-in
   10599 
   10600         Reviewed by rjw.
   10601 
   10602         * Plugins.subproj/WebBaseNetscapePluginView.h:
   10603         * Plugins.subproj/WebBaseNetscapePluginView.m:
   10604         (-[WebBaseNetscapePluginView setHasFocus:]): new, sends events to plug-in
   10605         (-[WebBaseNetscapePluginView becomeFirstResponder]): call setHasFocus
   10606         (-[WebBaseNetscapePluginView resignFirstResponder]): ditto 
   10607         (-[WebBaseNetscapePluginView viewWillMoveToWindow:]): ditto
   10608 
   10609 2004-09-30  Chris Blumenberg  <cblu (a] apple.com>
   10610 
   10611 	Fixed:
   10612 	Assertion failure when loading standalone netscape plug-in content.
   10613 	Document loads of WebKit plug-in content should be cancelled since the plug-in does its own loading.
   10614 
   10615         Reviewed by john.
   10616 
   10617         * Misc.subproj/WebKitErrors.m: removed deprecated method
   10618         * Misc.subproj/WebKitErrorsPrivate.h:
   10619         * Plugins.subproj/WebNetscapePluginDocumentView.m:
   10620         (-[WebNetscapePluginDocumentView setDataSource:]): fixed the assertion statement
   10621         * Plugins.subproj/WebPluginDocumentView.h:
   10622         * Plugins.subproj/WebPluginDocumentView.m:
   10623         (-[WebPluginDocumentView dealloc]): remove retained plug-in
   10624         (-[WebPluginDocumentView setDataSource:]): retain the plug-in, cancel the laod
   10625 
   10626 2004-09-29  Chris Blumenberg  <cblu (a] apple.com>
   10627 	
   10628 	Fixed:
   10629 	<rdar://problem/3763832> Safari-155: Non-Embeded movies fail to open in Cocoa QT plug-in
   10630 	<rdar://problem/3820517> "*** -[WebPluginPackage NPP_New]: selector not recognized [self = 0x5552c10]"
   10631 
   10632         Reviewed by rjw.
   10633 
   10634         * History.subproj/WebHistoryItem.m:
   10635         * Misc.subproj/WebNSViewExtras.h:
   10636         * Misc.subproj/WebNSViewExtras.m:
   10637         (-[NSView _web_firstResponderCausesFocusDisplay]):
   10638         (-[NSView _webView]):
   10639         (-[NSView _frame]):
   10640         (-[NSView _bridge]):
   10641         (-[NSView _dataSource]):
   10642         * Plugins.subproj/WebBasePluginPackage.h:
   10643         * Plugins.subproj/WebBasePluginPackage.m:
   10644         (-[WebBasePluginPackage hash]):
   10645         (-[WebBasePluginPackage isQuickTimePlugIn]):
   10646         * Plugins.subproj/WebNetscapePluginDocumentView.m:
   10647         (-[WebNetscapePluginDocumentView setDataSource:]):
   10648         * Plugins.subproj/WebNetscapePluginRepresentation.m:
   10649         * Plugins.subproj/WebPluginController.h:
   10650         * Plugins.subproj/WebPluginController.m:
   10651         (-[WebPluginController initWithDocumentView:]):
   10652         (-[WebPluginController addPlugin:]):
   10653         (-[WebPluginController destroyAllPlugins]):
   10654         (-[WebPluginController webPlugInContainerLoadRequest:inFrame:]):
   10655         (-[WebPluginController webPlugInContainerShowStatus:]):
   10656         (-[WebPluginController webPlugInContainerSelectionColor]):
   10657         (-[WebPluginController webFrame]):
   10658         * Plugins.subproj/WebPluginDatabase.h:
   10659         * Plugins.subproj/WebPluginDatabase.m:
   10660         (-[WebPluginDatabase pluginForKey:withEnumeratorSelector:]):
   10661         (-[WebPluginDatabase refresh]):
   10662         (WebPluginDocumentView::while):
   10663         * Plugins.subproj/WebPluginDocumentView.h: Added.
   10664         * Plugins.subproj/WebPluginDocumentView.m: Added.
   10665         (-[WebPluginDocumentView initWithFrame:]):
   10666         (-[WebPluginDocumentView dealloc]):
   10667         (-[WebPluginDocumentView drawRect:]):
   10668         (-[WebPluginDocumentView setDataSource:]):
   10669         (-[WebPluginDocumentView setNeedsLayout:]):
   10670         (-[WebPluginDocumentView layout]):
   10671         (-[WebPluginDocumentView currentWindow]):
   10672         (-[WebPluginDocumentView viewWillMoveToWindow:]):
   10673         (-[WebPluginDocumentView viewDidMoveToWindow]):
   10674         (-[WebPluginDocumentView viewWillMoveToHostWindow:]):
   10675         (-[WebPluginDocumentView viewDidMoveToHostWindow]):
   10676         (-[WebPluginDocumentView receivedData:withDataSource:]):
   10677         (-[WebPluginDocumentView receivedError:withDataSource:]):
   10678         (-[WebPluginDocumentView finishedLoadingWithDataSource:]):
   10679         (-[WebPluginDocumentView canProvideDocumentSource]):
   10680         (-[WebPluginDocumentView documentSource]):
   10681         (-[WebPluginDocumentView title]):
   10682         * Plugins.subproj/npapi.m:
   10683         (NPN_ReleaseVariantValue):
   10684         (NPN_GetStringIdentifier):
   10685         (NPN_GetStringIdentifiers):
   10686         (NPN_GetIntIdentifier):
   10687         (NPN_IdentifierIsString):
   10688         (NPN_UTF8FromIdentifier):
   10689         (NPN_IntFromIdentifier):
   10690         (NPN_CreateObject):
   10691         (NPN_RetainObject):
   10692         (NPN_ReleaseObject):
   10693         (NPN_Invoke):
   10694         (NPN_InvokeDefault):
   10695         (NPN_Evaluate):
   10696         (NPN_GetProperty):
   10697         (NPN_SetProperty):
   10698         (NPN_RemoveProperty):
   10699         (NPN_HasProperty):
   10700         (NPN_HasMethod):
   10701         (NPN_SetException):
   10702         (NPN_Call):
   10703         * WebCoreSupport.subproj/WebBridge.m:
   10704         (-[WebBridge frameRequiredForMIMEType:URL:]):
   10705         * WebCoreSupport.subproj/WebViewFactory.m:
   10706         * WebKit.exp:
   10707         * WebKit.pbproj/project.pbxproj:
   10708         * WebView.subproj/WebDebugDOMNode.m:
   10709         * WebView.subproj/WebDocumentInternal.h:
   10710         * WebView.subproj/WebHTMLView.m:
   10711         (-[WebHTMLView initWithFrame:]):
   10712         * WebView.subproj/WebHTMLViewPrivate.h:
   10713         * WebView.subproj/WebImageRepresentation.h:
   10714         * WebView.subproj/WebRenderNode.m:
   10715         * WebView.subproj/WebView.m:
   10716 
   10717 2004-09-29  Richard Williamson   <rjw (a] apple.com>
   10718 
   10719 	Fixed <rdar://problem/3779998> bringing window to front or sending to back does not send focus/blur events to JavaScript window object
   10720 
   10721 	The fix has two parts, 1) make onblur and onfocus work for windows, 
   10722         and 2), allow the dashboard to override WebKit's special key/non-key
   10723         behaviors.
   10724 
   10725         Reviewed by Maciej.
   10726 
   10727         * Plugins.subproj/WebBaseNetscapePluginView.m:
   10728         (-[WebBaseNetscapePluginView restartNullEvents]):
   10729         * WebView.subproj/WebHTMLView.m:
   10730         (-[WebHTMLView addMouseMovedObserver]):
   10731         (-[WebHTMLView removeMouseMovedObserver]):
   10732         * WebView.subproj/WebView.m:
   10733         (-[WebView _dashboardBehavior:]):
   10734         * WebView.subproj/WebViewInternal.h:
   10735         * WebView.subproj/WebViewPrivate.h:
   10736 
   10737 2004-09-29  Maciej Stachowiak  <mjs (a] apple.com>
   10738 
   10739         Reviewed by John.
   10740 
   10741 	- consolidated OS version checks into prefix header
   10742 
   10743         * Misc.subproj/WebFileDatabase.m:
   10744         (-[WebFileDatabase _createLRUList:]):
   10745         (+[WebFileDatabase _syncLoop:]):
   10746         * Misc.subproj/WebKitErrors.m:
   10747         (registerErrors):
   10748         * Misc.subproj/WebNSObjectExtras.h:
   10749         (WebNSRetainCFRelease):
   10750         * Misc.subproj/WebNSPasteboardExtras.m:
   10751         (-[NSPasteboard _web_declareAndWriteDragImage:URL:title:archive:source:]):
   10752         * Misc.subproj/WebUnicode.m:
   10753         (_unicodeDirection):
   10754         * WebCoreSupport.subproj/WebImageData.h:
   10755         * WebCoreSupport.subproj/WebImageRenderer.h:
   10756         * WebCoreSupport.subproj/WebKeyGenerator.h:
   10757         * WebCoreSupport.subproj/WebNewKeyGeneration.c:
   10758         * WebKitPrefix.h:
   10759         * WebView.subproj/WebDataSource.m:
   10760         (+[WebDataSource _repTypesAllowImageTypeOmission:]):
   10761         (-[WebDataSource isLoading]):
   10762         * WebView.subproj/WebFrameView.m:
   10763         (+[WebFrameView _viewTypesAllowImageTypeOmission:]):
   10764         * WebView.subproj/WebHTMLView.m:
   10765         * WebView.subproj/WebPDFRepresentation.h:
   10766         * WebView.subproj/WebPDFRepresentation.m:
   10767         * WebView.subproj/WebPDFView.h:
   10768         * WebView.subproj/WebPDFView.m:
   10769 
   10770 2004-09-29  Ken Kocienda  <kocienda (a] apple.com>
   10771 
   10772         Reviewed by Hyatt
   10773 
   10774         Fix for this bug:
   10775         
   10776         <rdar://problem/3818296> REGRESSION (Mail): centerSelectionInVisibleArea does not work correctly
   10777 
   10778         * WebView.subproj/WebHTMLView.m:
   10779         (-[WebHTMLView centerSelectionInVisibleArea:]): Now calls new centerSelectionInVisibleArea
   10780         bridge function instead of ensureCaretVisible. Now handles caret selections and range
   10781         selections correctly.
   10782 
   10783 2004-09-28  Chris Blumenberg  <cblu (a] apple.com>
   10784 
   10785 	Added timing code so that Doug can time RTF conversion. 
   10786 
   10787         * WebView.subproj/WebHTMLView.m:
   10788         (-[WebHTMLView writeSelectionWithPasteboardTypes:toPasteboard:]):
   10789         (-[WebHTMLView _attributeStringFromDOMRange:]):
   10790 
   10791 2004-09-28  Richard Williamson   <rjw (a] apple.com>
   10792 
   10793         <rdar://problem/3817421> add getter for dashboard regions (debugging)
   10794         
   10795         <rdar://problem/3817417> NSScrollView need autoregions for dashboard
   10796 	Also KWQScrollBars
   10797 
   10798         Reviewed by Hyatt.
   10799 
   10800         * WebCoreSupport.subproj/WebBridge.m:
   10801         (-[WebBridge dashboardRegionsChanged:]):
   10802         * WebView.subproj/WebView.m:
   10803         (-[WebView _setInitiatedDrag:]):
   10804         (-[WebView _addScrollerDashboardRegions:from:]):
   10805         (-[WebView _addScrollerDashboardRegions:]):
   10806         (-[WebView _dashboardRegions]):
   10807         * WebView.subproj/WebViewPrivate.h:
   10808 
   10809 2004-09-27  John Sullivan  <sullivan (a] apple.com>
   10810 
   10811         - fixed <rdar://problem/3814705> 8A266: Safari authentication dialog "remember password" text should match Mail
   10812 
   10813         * Panels.subproj/English.lproj/WebAuthenticationPanel.nib:
   10814         changed "Remember this password" to "Remember this password in my keychain";
   10815         this will need to go through CCC for this week's build.
   10816 
   10817 2004-09-27  Chris Blumenberg  <cblu (a] apple.com>
   10818 
   10819 	Fixed: <rdar://problem/3594754> change null event interval from 20 ms to 10 ms to match speed on Windows
   10820 
   10821         Reviewed by John.
   10822 
   10823         * Plugins.subproj/WebBaseNetscapePluginView.m:
   10824 
   10825 2004-09-27  Chris Blumenberg  <cblu (a] apple.com>
   10826 
   10827 	Fixed: <rdar://problem/3502138> text files don't remember scroll position when going back or reloading
   10828 
   10829         Reviewed by john.
   10830 
   10831         * WebView.subproj/WebTextView.m:
   10832         (-[WebTextView layout]): implemented, call sizeToFit, without this scrollPoint: won't work
   10833 
   10834 2004-09-27  John Sullivan  <sullivan (a] apple.com>
   10835 
   10836         Reviewed by Ken.
   10837 
   10838         - WebKit part of fix for <rdar://problem/3734466> ER: Support standard editing keystrokes 
   10839         like Cmd-B while editing rich text
   10840 
   10841         * WebView.subproj/WebHTMLView.m:
   10842         (-[WebHTMLView _toggleBold]):
   10843         new method, toggles font-weight from "bold" to "normal"
   10844         (-[WebHTMLView _toggleItalic]):
   10845         new method, toggles font-style from "italic" to "normal"
   10846         (-[WebHTMLView _handleStyleKeyEquivalent:]):
   10847         new method, if the new preference is set and we're in an editable state, check for standard
   10848         key equivalents for toggling styles (just command-B and command-I for now).
   10849         (-[WebHTMLView performKeyEquivalent:]):
   10850         Moved in file, now calls _handleStyleKeyEquivalent:
   10851         
   10852         * WebView.subproj/WebPreferenceKeysPrivate.h:
   10853         new preference key WebKitRespectStandardStyleKeyEquivalentsPreferenceKey
   10854         * WebView.subproj/WebPreferences.m:
   10855         (+[WebPreferences initialize]):
   10856         initial value of WebKitRespectStandardStyleKeyEquivalentsPreferenceKey is NO (maybe we'll
   10857         change our minds about this, but this is more guaranteed to be backward-compatible)
   10858         (-[WebPreferences respectStandardStyleKeyEquivalents]):
   10859         read WebKitRespectStandardStyleKeyEquivalentsPreferenceKey
   10860         (-[WebPreferences setRespectStandardStyleKeyEquivalents:]):
   10861         write WebKitRespectStandardStyleKeyEquivalentsPreferenceKey
   10862         
   10863         * WebView.subproj/WebPreferencesPrivate.h:
   10864         declare getter and setter
   10865         
   10866         * English.lproj/StringsNotToBeLocalized.txt:
   10867         updated for these and other recent changes
   10868 
   10869 2004-09-27  Chris Blumenberg  <cblu (a] apple.com>
   10870 
   10871 	Fixed: <rdar://problem/3806649> assertion failure after control-click of webcam
   10872 
   10873         Reviewed by john.
   10874 
   10875         * WebView.subproj/WebDefaultContextMenuDelegate.m:
   10876         (-[WebDefaultUIDelegate contextMenuItemsForElement:]): don't provide "Copy Image" if the image is not fully loaded
   10877 
   10878 2004-09-27  Chris Blumenberg  <cblu (a] apple.com>
   10879 
   10880 	Fixed: <rdar://problem/3814810> REGRESSION (125-164): Exception adding nil to dictionary in dragging code
   10881 
   10882         Reviewed by john.
   10883 
   10884         * WebView.subproj/WebHTMLView.m:
   10885         (-[WebHTMLView _setMouseDownEvent:]): new
   10886         (-[WebHTMLView acceptsFirstMouse:]): call _setMouseDownEvent
   10887         (-[WebHTMLView shouldDelayWindowOrderingForEvent:]): ditto
   10888         (-[WebHTMLView mouseDown:]): ditto
   10889         (-[WebHTMLView _delegateDragSourceActionMask]): removed temp fix, assert that the mouse event is not nil
   10890 
   10891 2004-09-27  Darin Adler  <darin (a] apple.com>
   10892 
   10893         * WebKit.pbproj/project.pbxproj: Added WebDashboardRegion.h as a private header.
   10894 
   10895 2004-09-24  Chris Blumenberg  <cblu (a] apple.com>
   10896 
   10897         Reviewed by rjw.
   10898 
   10899         * WebView.subproj/WebHTMLView.m:
   10900         (-[WebHTMLView _selectedArchive]): added timing code for copying markup
   10901 
   10902 === Safari-165 ===
   10903 
   10904 2004-09-24  Chris Blumenberg  <cblu (a] apple.com>
   10905 
   10906 	Temp fix for: <rdar://problem/3814810> REGRESSION (125-164): Exception adding nil to dictionary in dragging code
   10907 
   10908         Reviewed by john.
   10909 
   10910         * WebView.subproj/WebHTMLView.m:
   10911         (-[WebHTMLView _delegateDragSourceActionMask]): return none if the mouse down event is nil
   10912 
   10913 2004-09-24  Ken Kocienda  <kocienda (a] apple.com>
   10914 
   10915         Reviewed by John
   10916 
   10917         Fix for this bug:
   10918         
   10919         <rdar://problem/3813917> REGRESSION (125-163): The font panel will change the font of any web page
   10920         
   10921         We were doing a laughably bad job at preventing edits in documents that were not editable.
   10922         This change fixes the specific case of the bug mentioned above, and makes an attempt to
   10923         fix similar bugs by checking for whether the view is in editing mode before making edits.
   10924 
   10925         * WebView.subproj/WebHTMLView.m:
   10926         (-[WebHTMLView _canEdit]): Renamed from _canType. Used in many more places in the code now.
   10927         (-[WebHTMLView _isMoveDrag]): Change around code to make the meaning more clear. This one
   10928         was actually performing a correct check before.
   10929         (-[WebHTMLView keyDown:]): Renamed _canType to _canEdit.
   10930         (-[WebHTMLView paste:]): Don't beep if can't paste. This matches AppKit. Any paste-related beeps
   10931         will come from failure to handle key equivalent. Menu validation will kick in to dim menu.
   10932         (-[WebHTMLView _applyStyleToSelection:]): Bail if !_canEdit.
   10933         (-[WebHTMLView pasteAsPlainText:]): Ditto.
   10934         (-[WebHTMLView _alignSelectionUsingCSSValue:]): Ditto.
   10935         (-[WebHTMLView insertNewline:]): Ditto.
   10936         (-[WebHTMLView insertParagraphSeparator:]): Ditto.
   10937         (-[WebHTMLView _changeWordCaseWithSelector:]): Ditto.
   10938         (-[WebHTMLView _deleteWithDirection:granularity:killRing:]): Ditto.
   10939         (-[WebHTMLView complete:]): Ditto.
   10940         (-[WebHTMLView _changeSpellingToWord:]): Ditto. Some code rearranging to eliminate bridge local variable.
   10941         (-[WebHTMLView ignoreSpelling:]): Ditto.
   10942         (-[WebHTMLView yank:]): Bail if !_canEdit.
   10943         (-[WebHTMLView yankAndSelect:]): Ditto.
   10944         (-[WebHTMLView deleteToMark:]): Ditto.
   10945         (-[WebHTMLView swapWithMark:]): Ditto.
   10946         (-[WebHTMLView transpose:]): Ditto.
   10947         (-[WebHTMLView _updateFontPanel]): Ditto. Some code rearranging to eliminate bridge local variable.
   10948         (-[WebHTMLView setMarkedText:selectedRange:]): Bail if !_canEdit.
   10949         (-[WebHTMLView _insertText:selectInsertedText:]): Ditto. Some code rearranging to eliminate bridge local variable.
   10950         * WebView.subproj/WebHTMLViewPrivate.h: Renamed _canType to _canEdit.
   10951 
   10952 2004-09-24  Ken Kocienda  <kocienda (a] apple.com>
   10953 
   10954         Reviewed by me
   10955 
   10956         * WebCoreSupport.subproj/WebDashboardRegion.h: Check in file copied from WebCore.
   10957 
   10958 2004-09-23  Maciej Stachowiak  <mjs (a] apple.com>
   10959 
   10960         Reviewed by Darin.
   10961 
   10962 	<rdar://problem/3685235> REGRESSION (Mail): links are not properly editable
   10963         
   10964         * WebView.subproj/WebDefaultUIDelegate.m: By default, don't allow
   10965 	link dragging if the element under the mouse pointer is
   10966 	editable. This way, you can drag-select starting inside a link.
   10967 
   10968 2004-09-23  John Sullivan  <sullivan (a] apple.com>
   10969 
   10970         Reviewed by Chris.
   10971         
   10972         - WebKit part of fix for <rdar://problem/3415264> 
   10973         Default encoding should initially be set to current system encoding
   10974 
   10975         * WebView.subproj/WebPreferences.m:
   10976         (-[WebPreferences _setInitialDefaultTextEncodingToSystemEncoding]):
   10977         new SPI that sets the initial value of the default text encoding to
   10978         be the system encoding, with a special-case conversion of MacRoman->Latin1.
   10979         This is not done automatically for WebKit clients for fear of breaking them.
   10980         
   10981         * WebView.subproj/WebPreferencesPrivate.h:
   10982         declare new SPI
   10983 
   10984 2004-09-23  Darin Adler  <darin (a] apple.com>
   10985 
   10986         Reviewed by Ken.
   10987 
   10988         - fixed <rdar://problem/3811584> REGRESSION (85-125): iframe.document undefined in function called from button onclick; works from img onclick
   10989 
   10990         The fix is to not let "defers callbacks" have any effect on loading "about:blank".
   10991         I also had to fix one bug in WebCore that could then be reproduced by going to "about:blank"
   10992         while using a button.
   10993 
   10994         * WebView.subproj/WebMainResourceClient.m:
   10995         (-[WebMainResourceClient connection:didReceiveResponse:]): Loosen asserts to allow this callback
   10996         for the specific case of "about:blank" even if the defers callbacks flag is true.
   10997         (-[WebMainResourceClient connectionDidFinishLoading:]): Ditto.
   10998         (-[WebMainResourceClient loadWithRequestNow:]): Added NSURLRequest return value. Loosened asserts
   10999         as above. Changed code to return a new request if we get a new request back that is not empty
   11000         when the defers callbacks flag is true.
   11001         (-[WebMainResourceClient loadWithRequest:]): If the defers callbacks flag is set, but the
   11002         URL is one that gives us an empty document, then do the work right away, don't defer it.
   11003 
   11004 2004-09-23  Darin Adler  <darin (a] apple.com>
   11005 
   11006         - fixed B&I builds by checking in generated file
   11007 
   11008         * WebCoreSupport.subproj/WebDashboardRegion.h: Added.
   11009 
   11010 2004-09-22  Richard Williamson   <rjw (a] apple.com>
   11011 
   11012 	Pass dashboard regions to UI delegate.
   11013 
   11014         Reviewed by Hyatt.
   11015 
   11016         * WebCoreSupport.subproj/WebBridge.m:
   11017         (-[WebBridge dashboardRegionsChanged:]):
   11018         * WebView.subproj/WebUIDelegatePrivate.h:
   11019         * copy-webcore-files-to-webkit:
   11020 
   11021 2004-09-22  Chris Blumenberg  <cblu (a] apple.com>
   11022 
   11023 	Fixed build that I just broke.
   11024 
   11025         * WebView.subproj/WebHTMLView.m:
   11026         (-[WebHTMLView concludeDragForDraggingInfo:actionMask:]):
   11027 
   11028 2004-09-22  Chris Blumenberg  <cblu (a] apple.com>
   11029 
   11030 	<rdar://problem/3812091> REGRESSION (Mail): double-clicked word is not smart inserted on drag
   11031 
   11032         Reviewed by john.
   11033 
   11034         * WebView.subproj/WebHTMLView.m:
   11035         (-[WebHTMLView concludeDragForDraggingInfo:actionMask:]): pass value for smartMove
   11036 
   11037 2004-09-22  Chris Blumenberg  <cblu (a] apple.com>
   11038 
   11039 	Fixed:
   11040 	<rdar://problem/3667301> Frequent crashes in Mail when viewing HTML messages (CFURLGetByteRangeForComponent)
   11041 	<rdar://problem/3810354> WebResourceLoadDelegate can't refuse requests by returning nil; code asserts/crashes instead
   11042 
   11043         Reviewed by rjw.
   11044 
   11045         * WebCoreSupport.subproj/WebSubresourceClient.m:
   11046         (+[WebSubresourceClient startLoadingResource:withRequest:customHeaders:referrer:forDataSource:]): removed broken code that handled loadWithRequest returning NO
   11047         * WebView.subproj/WebBaseResourceHandleDelegate.m:
   11048         (-[WebBaseResourceHandleDelegate loadWithRequest:]): if nil is returned from the client for willSendRequest, report the cancelled error and return
   11049 
   11050 2004-09-22  Ken Kocienda  <kocienda (a] apple.com>
   11051 
   11052         Reviewed by Darin
   11053 
   11054         * WebView.subproj/WebFrameView.m:
   11055         (-[WebFrameView _webcore_effectiveFirstResponder]): New function to yield the correct responder
   11056         to check for firstResponder-ness before calling makeFirstResonder. This helps to prevent 
   11057         unwanted firstResponder switching.
   11058         * WebView.subproj/WebView.m:
   11059         (-[WebView _webcore_effectiveFirstResponder]): Ditto.
   11060 
   11061 2004-09-21  Chris Blumenberg  <cblu (a] apple.com
   11062 
   11063 	Fixed:
   11064 	<rdar://problem/3735071> REGRESSION (Mail): WebCore Editing must do smart paste
   11065 	<rdar://problem/3799163> REGRESSION (Mail): Deleting a word doesn't delete whitespace
   11066 
   11067         Reviewed by darin.
   11068 
   11069         * WebView.subproj/WebDataSource.m:
   11070         (-[WebDataSource _replaceSelectionWithArchive:selectReplacement:]): pass NO for smartReplace
   11071         * WebView.subproj/WebHTMLView.m:
   11072         (-[WebHTMLView _pasteWithPasteboard:allowPlainText:]): pass parameter for smartReplace using _canSmartReplaceWithPasteboard
   11073         (-[WebHTMLView _changeSpellingFromMenu:]): pass NO for smartReplace
   11074         (-[WebHTMLView pasteboardTypesForSelection]): include WebSmartPastePboardType when _canSmartCopyOrDelete return YES
   11075         (-[WebHTMLView writeSelectionWithPasteboardTypes:toPasteboard:]): ditto
   11076         (-[WebHTMLView concludeDragForDraggingInfo:actionMask:]): pass parameter for smartReplace using _canSmartReplaceWithPasteboard
   11077         (-[WebHTMLView delete:]): call _deleteSelection
   11078         (-[WebHTMLView cut:]): don't call delegate twice, call _deleteRange to delete
   11079         (-[WebHTMLView pasteAsPlainText:]): pass parameter for smartReplace using _canSmartReplaceWithPasteboard
   11080         (-[WebHTMLView _changeWordCaseWithSelector:]): pass NO for smartReplace
   11081         (-[WebHTMLView deleteBackward:]): call _deleteSelection when there is a selected range
   11082         (-[WebHTMLView _changeSpellingToWord:]): pass NO for smartReplace
   11083         (-[WebHTMLView deleteToMark:]): pass NO for smartDeleteOK
   11084         (-[WebHTMLView transpose:]): pass NO for smartReplace
   11085         (-[WebHTMLView _shouldDeleteRange:]): moved
   11086         (-[WebHTMLView _deleteRange:preflight:killRing:prepend:smartDeleteOK:]): moved, handle smartDelete
   11087         (-[WebHTMLView _deleteWithDirection:granularity:killRing:]): moved
   11088         (-[WebHTMLView _deleteSelection]): new
   11089 	(-[WebHTMLView _canSmartReplaceWithPasteboard]): new
   11090 	(-[WebHTMLView _canSmartCopyOrDelete]): new
   11091         (-[WebHTMLView setMarkedText:selectedRange:]): pass NO for smartReplace
   11092         (-[WebHTMLView _discardMarkedText]): call _deleteSelection
   11093         (-[WebTextCompleteController _insertMatch:]): pass NO for smartReplace
   11094         (-[WebTextCompleteController endRevertingChange:moveLeft:]): pass NO for smartReplace
   11095         * WebView.subproj/WebHTMLViewInternal.h:
   11096         * WebView.subproj/WebView.m:
   11097         (-[WebView _commonInitializationWithFrameName:groupName:]): set smartInsertDeleteEnabled to YES
   11098         (-[WebView replaceSelectionWithNode:]): pass NO for smartReplace
   11099         (-[WebView replaceSelectionWithText:]): pass NO for smartReplace
   11100         (-[WebView replaceSelectionWithMarkupString:]): pass NO for smartReplace
   11101         (-[WebView deleteSelection]): call _deleteSelection on WebHTMLView
   11102 
   11103 2004-09-21  John Sullivan  <sullivan (a] apple.com>
   11104 
   11105         Reviewed by Darin.
   11106 
   11107         - WebKit part of fix for <rdar://problem/3618274> REGRESSION (125-135): 
   11108         Option-tab doesn't always work as expected
   11109 
   11110         * WebCoreSupport.subproj/WebBridge.m:
   11111         (-[WebBridge _retrieveKeyboardUIModeFromPreferences:]):
   11112         Don't set WebCoreKeyboardAccessFull when setting WebCoreKeyboardAccessTabsToLinks
   11113         after all; these need to be tested independently to get the option-tab behavior
   11114         correct.
   11115 
   11116 2004-09-21  John Sullivan  <sullivan (a] apple.com>
   11117 
   11118         * WebView.subproj/WebHTMLView.m:
   11119         (-[WebHTMLView doCommandBySelector:]):
   11120         Commented out part of previous change; it breaks Mail editing until Mail
   11121         fixes bug 3810158.
   11122 
   11123 2004-09-21  John Sullivan  <sullivan (a] apple.com>
   11124 
   11125         Reviewed by Ken.
   11126 
   11127         * WebView.subproj/WebHTMLView.m:
   11128         (-[WebHTMLView doCommandBySelector:]):
   11129         Fix build failure from previous checkin, d'oh! Didn't set up webview variable.
   11130 
   11131 2004-09-21  John Sullivan  <sullivan (a] apple.com>
   11132 
   11133         Reviewed by Ken.
   11134         
   11135         - fixed <rdar://problem/3809477> WebHTMLView needs to pass doCommandBySelector through delegate
   11136 
   11137         * WebView.subproj/WebHTMLView.m:
   11138         (-[WebHTMLView doCommandBySelector:]):
   11139         Call through to editing delegate. If editing delegate returns YES, don't call super.
   11140 
   11141         * WebView.subproj/WebDefaultEditingDelegate.m:
   11142         (-[WebDefaultEditingDelegate webView:doCommandBySelector:]):
   11143         default implementation (which was never called) was returning YES, but it should
   11144         return NO to signal that it didn't handle the selector.
   11145         
   11146 2004-09-21  Chris Blumenberg  <cblu (a] apple.com>
   11147 
   11148 	Fixed: <rdar://problem/3647229> Safari does not play inline Windows Media Content on some sites (miggy.net and ministryofsound.com)
   11149 
   11150         Reviewed by john.
   11151 
   11152         * Plugins.subproj/WebBaseNetscapePluginView.m:
   11153         * Plugins.subproj/WebNetscapePluginEmbeddedView.m:
   11154         (-[WebNetscapePluginEmbeddedView initWithFrame:plugin:URL:baseURL:MIMEType:attributeKeys:attributeValues:]): set the plug-in before calling setting the attributes, so we can avoid passing certain attributes to the WMP plug-in that cause it to crash
   11155 
   11156 2004-09-20  Chris Blumenberg  <cblu (a] apple.com>
   11157 
   11158 	Fixed: <rdar://problem/3781290> REGRESSION (Mail): Crash in ReplaceSelectionCommandImpl attaching file to new message
   11159 
   11160         Reviewed by kocienda.
   11161 
   11162         * WebView.subproj/WebView.m:
   11163         (-[WebView setEditable:]): call updateSelectionFromEmpty on the bridge if there is no selection
   11164 
   11165 2004-09-20  Chris Blumenberg  <cblu (a] apple.com>
   11166 
   11167 	Changes to implement renamed bridge methods.
   11168 
   11169         Reviewed by darin.
   11170 
   11171         * ChangeLog:
   11172         * DOM.subproj/WebDOMOperations.m:
   11173         (-[DOMDocument URLWithAttributeString:]): call renamed bridge method
   11174         * WebCoreSupport.subproj/WebBridge.m:
   11175         (-[WebBridge pluginViewWithPackage:attributeNames:attributeValues:baseURL:]): take 2 parameter arrays rather than 1 which will have to be parsed
   11176         (-[WebBridge viewForPluginWithURL:attributeNames:attributeValues:MIMEType:]): ditto
   11177 
   11178 2004-09-20  Darin Adler  <darin (a] apple.com>
   11179 
   11180         Reviewed by Chris.
   11181 
   11182         * WebView.subproj/WebFramePrivate.h: Added back.
   11183         * WebView.subproj/WebFrameViewPrivate.h: Removed.
   11184 
   11185 2004-09-20  Darin Adler  <darin (a] apple.com>
   11186 
   11187         Reviewed by Ken.
   11188 
   11189         - fixed <rdar://problem/3655360> REGRESSION (Mail): Ctrl-V emacs key binding, -pageDown: method, unimplemented (and pageUp, and selection-modifying versions)
   11190         - fixed <rdar://problem/3792138> REGRESSION (Mail): Spell checker doesn't check current selected word
   11191 
   11192         * WebView.subproj/WebFrameViewInternal.h: Moved WebFrameViewPrivate inside the WebFrameView.m file.
   11193         Removed a bunch of methods that don't need to be seen in other files, and added _verticalPageScrollDistance.
   11194         * WebView.subproj/WebFrameViewPrivate.h: Removed. Renamed to WebFrameViewInternal.h.
   11195         * WebView.subproj/WebFrameView.m:
   11196         (-[WebFrameView _verticalKeyboardScrollDistance]): Move in the file because of internal vs. private.
   11197         (-[WebFrameView _shouldDrawBorder]): Ditto.
   11198         (-[WebFrameView _tile]): Ditto.
   11199         (-[WebFrameView _verticalPageScrollDistance]): Added. Separate method so it can be called
   11200         by the code to implement pageDown:.
   11201         (-[WebFrameView _drawBorder]): Move in the file because of internal vs. private.
   11202         (-[WebFrameView _goBack]): Ditto.
   11203         (-[WebFrameView _goForward]): Ditto.
   11204         (-[WebFrameView _scrollVerticallyBy:]): Ditto.
   11205         (-[WebFrameView _scrollHorizontallyBy:]): Ditto.
   11206         (-[WebFrameView _horizontalKeyboardScrollDistance]): Ditto.
   11207         (-[WebFrameView _horizontalPageScrollDistance]): Added. Separate method for consistency with
   11208         vertical method above.
   11209         (-[WebFrameView _pageVertically:]): Moved and changed to use _verticalPageScrollDistance.
   11210         (-[WebFrameView _pageHorizontally:]): Moved and changed to use _horizontalPageScrollDistance.
   11211         (-[WebFrameView _scrollLineVertically:]): Move in the file because of internal vs. private.
   11212         (-[WebFrameView _scrollLineHorizontally:]): Ditto.
   11213         (-[WebFrameView scrollPageUp:]): Ditto.
   11214         (-[WebFrameView scrollPageDown:]): Ditto.
   11215         (-[WebFrameView scrollLineUp:]): Ditto.
   11216         (-[WebFrameView scrollLineDown:]): Ditto.
   11217         (-[WebFrameView _firstResponderIsControl]): Ditto.
   11218         (-[WebFrameView keyDown:]): Changed to eliminate _pageLeft, _lineLeft, _pageRight, and _lineRight.
   11219 
   11220         * WebView.subproj/WebDataSource.m: Use WebFrameView.h instead of WebFrameViewPrivate.h.
   11221 
   11222         * WebView.subproj/WebHTMLView.m:
   11223         (-[WebHTMLView _alterCurrentSelection:verticalDistance:]): Added.
   11224         (-[WebHTMLView moveToBeginningOfDocument:]): Use WebSelectToDocumentBoundary.
   11225         (-[WebHTMLView moveToBeginningOfDocumentAndModifySelection:]): Ditto.
   11226         (-[WebHTMLView moveToEndOfDocument:]): Ditto.
   11227         (-[WebHTMLView moveToEndOfDocumentAndModifySelection:]): Ditto.
   11228         (-[WebHTMLView moveParagraphBackwardAndModifySelection:]): Added.
   11229         (-[WebHTMLView moveParagraphForwardAndModifySelection:]): Added.
   11230         (-[WebHTMLView pageUp:]): Added.
   11231         (-[WebHTMLView pageDown:]): Added.
   11232         (-[WebHTMLView pageUpAndModifySelection:]): Added.
   11233         (-[WebHTMLView pageDownAndModifySelection:]): Added.
   11234         (-[WebHTMLView showGuessPanel:]): Changed to call advanceToNextMisspellingStartingJustBeforeSelection.
   11235         This fixes the problem with spell checking.
   11236 
   11237         * WebView.subproj/WebImageView.m:
   11238         (-[WebImageView webView]): Changed to use _web_parentWebView.
   11239         (-[WebImageView menuForEvent:]): Changed to use [self webView].
   11240         (-[WebImageView mouseDown:]): Ditto.
   11241         (-[WebImageView mouseDragged:]): Ditto.
   11242         (-[WebImageView draggedImage:endedAt:operation:]): Ditto.
   11243 
   11244         * WebView.subproj/WebTextView.m:
   11245         (-[WebTextView _textSizeMultiplierFromWebView]): Changed to use _web_parentWebView.
   11246         (-[WebTextView menuForEvent:]): Ditto.
   11247         (-[WebTextView drawPageBorderWithSize:]): Ditto.
   11248         (-[WebTextView knowsPageRange:]): Ditto.
   11249 
   11250         * Plugins.subproj/WebPluginDatabase.m: Updated filename of WebFrameViewInternal.h.
   11251         * WebCoreSupport.subproj/WebBridge.m: Ditto.
   11252         * WebKit.pbproj/project.pbxproj: Ditto.
   11253         * WebView.subproj/WebFrame.m: Ditto.
   11254         * WebView.subproj/WebView.m: Ditto.
   11255         * Misc.subproj/WebNSViewExtras.m: Ditto.
   11256 
   11257 2004-09-20  Darin Adler  <darin (a] apple.com>
   11258 
   11259         Reviewed by Ken.
   11260 
   11261         - added helper method _web_parentWebView so fewer files need to get at WebFrame private methods
   11262 
   11263         * Misc.subproj/WebNSViewExtras.h: Added _web_parentWebView.
   11264         * Misc.subproj/WebNSViewExtras.m: (-[NSView _web_parentWebView]): Added.
   11265 
   11266 === Safari-164 ===
   11267 
   11268 2004-09-17  Chris Blumenberg  <cblu (a] apple.com>
   11269 	
   11270     	Fixed:
   11271 	<rdar://problem/3805757> don't unnecessarily put RTFD on the pasteboard
   11272 	<rdar://problem/3805756> strip attachments before generating RTF
   11273 
   11274         Reviewed by john.
   11275 
   11276         * WebView.subproj/WebHTMLView.m:
   11277         (-[WebHTMLView writeSelectionWithPasteboardTypes:toPasteboard:]): only put RTFD on the pasteboard if it has attachments, strip attachments when writing RTF
   11278 
   11279 2004-09-16  Darin Adler  <darin (a] apple.com>
   11280 
   11281         Reviewed by John.
   11282 
   11283         - fixed <rdar://problem/3804648> 8A262: Safari crashed in -[WebView(WebPrivate) _editingDelegateForwarder] inside QuickTime Cocoa Plug-in during WebView deallocation
   11284 
   11285         * WebView.subproj/WebView.m: (-[WebView _editingDelegateForwarder]):
   11286         Check _private for nil before dereferencing it.
   11287 
   11288 2004-09-16  Chris Blumenberg  <cblu (a] apple.com>
   11289 
   11290 	Fixed: <rdar://problem/3779150> REGRESSION: images not copied when copying HTML in Safari and pasting into TextEdit
   11291 
   11292         Reviewed by john.
   11293 
   11294         * WebView.subproj/WebHTMLView.m:
   11295         (-[WebHTMLView writeSelectionWithPasteboardTypes:toPasteboard:]): use RTFDFromRange:: for RTFD
   11296         * WebView.subproj/WebHTMLViewPrivate.h:
   11297 
   11298 2004-09-15  Darin Adler  <darin (a] apple.com>
   11299 
   11300         Reviewed by John.
   11301 
   11302         - fixed assertion I saw using the font panel
   11303 
   11304         * WebView.subproj/WebHTMLView.m: (-[WebHTMLView _colorAsString:]):
   11305         Convert color space before trying to get R, G, and B components.
   11306 
   11307 2004-09-15  Chris Blumenberg  <cblu (a] apple.com>
   11308 
   11309 	Fixed: <rdar://problem/3802232> REGRESSION (Mail): WebCore Editing must do smart copy
   11310 	
   11311         Reviewed by kocienda.
   11312 
   11313         * WebView.subproj/WebHTMLView.m:
   11314         (-[WebHTMLView _writeSelectionToPasteboard:]): call instance method not class method to get pasteboard types since the types depends on the current selection granularity
   11315         (-[WebHTMLView pasteboardTypesForSelection]): if the selection granularity is "word" include the smart pasteboard type
   11316         (-[WebHTMLView writeSelectionWithPasteboardTypes:toPasteboard:]): put nil on the pasteboard for smart copy
   11317 
   11318 2004-09-14  Darin Adler  <darin (a] apple.com>
   11319 
   11320         Reviewed by Maciej.
   11321 
   11322         - fixed <rdar://problem/3788894> REGRESSION (Mail): ctrl-t emacs key binding does not work (transpose)
   11323         - fixed <rdar://problem/3798946> REGRESSION (Mail): Cursor does not disappear when typing
   11324 
   11325         * WebView.subproj/WebHTMLView.m:
   11326         (-[WebHTMLView keyDown:]): Hide cursor by calling setHiddenUntilMouseMoves:YES.
   11327         (-[WebHTMLView transpose:]): Added.
   11328 
   11329 2004-09-14  Richard Williamson   <rjw (a] apple.com>
   11330 
   11331         1.  Add class parameter to object allocation function.  This is somewhat redundant, given that
   11332         the allocation function is in the class function vector, but people wanted to use the same
   11333         allocation function for different classes.
   11334         
   11335         2.  Renamed NPN_Class to NPN_Invoke to match the name in the function vector.
   11336         
   11337         3.  Add support for a default function on an object.  This is a feature that ActiveX supports,
   11338         and will allow JavaScript code to be written that will look exactly the same for both ActiveX
   11339         plugins and Netscape or WebKit plugins.  There are implementations included for the 'C' and
   11340         'Objective-C' bindings.
   11341         
   11342         There bugs are covered by
   11343         
   11344         <rdar://problem/3776343> Support for default functions in the JavaScript bindings
   11345         <rdar://problem/3779186> NPN_Call needs to be renamed to NPN_Invoke
   11346         <rdar://problem/3674754> Need to implement latest npruntime.h
   11347 
   11348         Reviewed by John.
   11349 
   11350         * Plugins.subproj/WebNetscapePluginPackage.m:
   11351         (-[WebNetscapePluginPackage load]):
   11352         * Plugins.subproj/WebScriptObject.h:
   11353         * Plugins.subproj/npfunctions.h:
   11354         * Plugins.subproj/npruntime.h:
   11355 
   11356 2004-09-13  Richard Williamson   <rjw (a] apple.com>
   11357 
   11358         D'oh.  How many times can I screw up a simple fix!
   11359 
   11360         * WebCoreSupport.subproj/WebTextRenderer.m:
   11361         (-[WebTextRenderer initWithFont:usingPrinterFont:]):
   11362 
   11363 2004-09-13  Richard Williamson   <rjw (a] apple.com>
   11364 
   11365         Fixed snafu from 3782533 checkin.
   11366         
   11367         Reviewed by John.
   11368 
   11369         * WebCoreSupport.subproj/WebTextRenderer.m:
   11370         (-[WebTextRenderer initWithFont:usingPrinterFont:]):
   11371 
   11372 2004-09-12  Chris Blumenberg  <cblu (a] apple.com>
   11373 
   11374 	Support for: <rdar://problem/3794790> drop rate or time remaining from download status when window is too small to fit it
   11375 
   11376         Reviewed by john.
   11377 
   11378         * Misc.subproj/WebStringTruncator.h:
   11379         * Misc.subproj/WebStringTruncator.m:
   11380         (+[WebStringTruncator widthOfString:font:]): new
   11381 
   11382 2004-09-10  Richard Williamson   <rjw (a] apple.com>
   11383 
   11384         Fixed <rdar://problem/3782533> CrashTracer: .1459 crashes at com.apple.WebKit: -[WebTextRenderer initWithFont:usingPrinterFont:] + 0x138
   11385 
   11386         We were explicitly failing when we encountered deprecated fonts.
   11387         (Those with unsupported glyph packings).
   11388         Deprecated fonts should only appear on a system that have 
   11389         stuff migrated from OS 9.  Ugh, thats probably why we've never seen
   11390         the problem here.
   11391         
   11392         Reviewed by John.
   11393 
   11394         * WebCoreSupport.subproj/WebTextRenderer.m:
   11395         (-[WebTextRenderer initWithFont:usingPrinterFont:]):
   11396 
   11397 2004-09-10  John Sullivan  <sullivan (a] apple.com>
   11398 
   11399         Reviewed by Chris.
   11400         
   11401         - added _isFrameSet as a private method, so it can be used in WebBrowser.
   11402         This is needed to merge the fix for 3123987 to SUPanNavy.
   11403 
   11404         * WebView.subproj/WebFrame.m:
   11405         (-[WebFrame _isFrameSet]):
   11406         new method
   11407         
   11408         * WebView.subproj/WebFramePrivate.h:
   11409         declare new method
   11410 
   11411 2004-09-09  Chris Blumenberg  <cblu (a] apple.com>
   11412 
   11413 	Support for: <rdar://problem/3795485> debug menu item to enable RSS animation on first layout
   11414 
   11415         Reviewed by rjw.
   11416 
   11417         * WebCoreSupport.subproj/WebBridge.m:
   11418         (-[WebBridge didFirstLayout]): new
   11419         * WebView.subproj/WebDefaultFrameLoadDelegate.m:
   11420         (-[WebDefaultFrameLoadDelegate webView:didFirstLayoutInFrame:]): new
   11421         * WebView.subproj/WebViewPrivate.h:
   11422 
   11423 2004-09-09  Richard Williamson   <rjw (a] apple.com>
   11424 
   11425         Alternate implementation of image rendering.  Use CGImageRefs instead
   11426         of NSImages.
   11427         
   11428         Mostly works, but currently disabled because of issues w/ CG.
   11429         
   11430         Reviewed by Chris.
   11431 
   11432         * ChangeLog:
   11433         * WebCoreSupport.subproj/WebImageData.h: Added.
   11434         * WebCoreSupport.subproj/WebImageData.m: Added.
   11435         (-[WebImageData _commonTermination]):
   11436         (-[WebImageData dealloc]):
   11437         (-[WebImageData finalize]):
   11438         (-[WebImageData copyWithZone:]):
   11439         (-[WebImageData numberOfImages]):
   11440         (-[WebImageData currentFrame]):
   11441         (-[WebImageData _invalidateImages]):
   11442         (-[WebImageData imageAtIndex:]):
   11443         (-[WebImageData incrementalLoadWithBytes:length:complete:]):
   11444         (drawPattern):
   11445         (-[WebImageData tileInRect:fromPoint:context:]):
   11446         (-[WebImageData isNull]):
   11447         (-[WebImageData size]):
   11448         (-[WebImageData _frameDuration]):
   11449         (-[WebImageData _repetitionCount]):
   11450         (-[WebImageData isAnimationFinished]):
   11451         (+[WebImageData stopAnimationsInView:]):
   11452         (-[WebImageData addAnimatingRenderer:inView:]):
   11453         (-[WebImageData removeAnimatingRenderer:]):
   11454         (-[WebImageData _stopAnimation]):
   11455         (-[WebImageData _nextFrame:]):
   11456         (-[WebImageData animate]):
   11457         * WebCoreSupport.subproj/WebImageRenderer.h:
   11458         * WebCoreSupport.subproj/WebImageRenderer.m:
   11459         (-[WebImageRenderer initWithMIMEType:]):
   11460         (-[WebImageRenderer initWithData:MIMEType:]):
   11461         (-[WebImageRenderer initWithContentsOfFile:]):
   11462         (-[WebImageRenderer dealloc]):
   11463         (-[WebImageRenderer copyWithZone:]):
   11464         (-[WebImageRenderer retainOrCopyIfNeeded]):
   11465         (-[WebImageRenderer resize:]):
   11466         (-[WebImageRenderer size]):
   11467         (-[WebImageRenderer MIMEType]):
   11468         (-[WebImageRenderer frameCount]):
   11469         (-[WebImageRenderer isNull]):
   11470         (-[WebImageRenderer incrementalLoadWithBytes:length:complete:]):
   11471         (-[WebImageRenderer drawImageInRect:fromRect:]):
   11472         (-[WebImageRenderer drawImageInRect:fromRect:compositeOperator:context:]):
   11473         (-[WebImageRenderer tileInRect:fromPoint:context:]):
   11474         (-[WebImageRenderer _startOrContinueAnimationIfNecessary]):
   11475         (+[WebImageRenderer stopAnimationsInView:]):
   11476         (-[WebImageRenderer stopAnimation]):
   11477         (-[WebImageRenderer targetAnimationRect]):
   11478         (-[WebImageRenderer increaseUseCount]):
   11479         (-[WebImageRenderer decreaseUseCount]):
   11480         (-[WebImageRenderer flushRasterCache]):
   11481         (-[WebImageRenderer imageRef]):
   11482         (-[WebImageRenderer TIFFRepresentation]):
   11483         (-[WebImageRenderer image]):
   11484         * WebCoreSupport.subproj/WebImageRendererFactory.m:
   11485         (-[WebImageRendererFactory imageRendererWithMIMEType:]):
   11486         (-[WebImageRendererFactory imageRendererWithData:MIMEType:]):
   11487         (-[WebImageRendererFactory imageRendererWithSize:]):
   11488         (-[WebImageRendererFactory imageRendererWithName:]):
   11489         * WebKit.pbproj/project.pbxproj:
   11490         * WebView.subproj/WebImageView.m:
   11491         (-[WebImageView image]):
   11492 
   11493 === Safari-163 ===
   11494 
   11495 2004-09-09  Maciej Stachowiak  <mjs (a] apple.com>
   11496 
   11497         - rolled out last two changes, they seem to cause a performance regression
   11498 
   11499         * WebView.subproj/WebHTMLView.m:
   11500         (-[WebHTMLView firstRectForCharacterRange:]):
   11501 
   11502 2004-09-09  Maciej Stachowiak  <mjs (a] apple.com>
   11503 
   11504         - fixed build
   11505 
   11506         * WebView.subproj/WebHTMLView.m:
   11507         (-[WebHTMLView firstRectForCharacterRange:]):
   11508 
   11509 2004-09-08  Maciej Stachowiak  <mjs (a] apple.com>
   11510 
   11511         Reviewed by Dave.
   11512 
   11513 	WebKit part of fix for:
   11514 	
   11515 	<rdar://problem/3759187> REGRESSION (Mail): implement firstRectForCharacterRange:
   11516 
   11517         * WebView.subproj/WebHTMLView.m:
   11518         (-[WebHTMLView firstRectForCharacterRange:]): Call the appropriate new bridge method,
   11519 	and translate to screen coordinates.
   11520 
   11521 2004-09-09  Darin Adler  <darin (a] apple.com>
   11522 
   11523         Reviewed by Ken.
   11524 
   11525         - fixed <rdar://problem/3790526> mark-related methods not implemented (needed for people with them in their key bindings files)
   11526 
   11527         * WebKit.pbproj/project.pbxproj: Update MACOSX_DEPLOYMENT_TARGET to 10.3 and add -fobjc-exceptions
   11528         so we can use new exceptions.
   11529 
   11530         * WebView.subproj/WebHTMLView.m:
   11531         (-[WebHTMLView setMark:]): Added.
   11532         (unionDOMRanges): Added.
   11533         (-[WebHTMLView deleteToMark:]): Added.
   11534         (-[WebHTMLView selectToMark:]): Added.
   11535         (-[WebHTMLView swapWithMark:]): Added.
   11536         (-[WebHTMLView markedRange]): Updated for change to bridge method names.
   11537         (-[WebHTMLView hasMarkedText]): Ditto.
   11538         (-[WebHTMLView unmarkText]): Ditto.
   11539         (-[WebHTMLView _selectMarkedText]): Ditto.
   11540         (-[WebHTMLView _selectRangeInMarkedText:]): Ditto.
   11541         (-[WebHTMLView setMarkedText:selectedRange:]): Ditto.
   11542         (-[WebHTMLView _insertText:selectInsertedText:]): Removed check for empty string. An empty string
   11543         should not be filtered out here. We need to allow inserting an empty string.
   11544         (-[WebHTMLView _selectionIsInsideMarkedText]): Updated for change to bridge method names.
   11545         (-[WebHTMLView _updateSelectionForInputManager]): Ditto.
   11546 
   11547         * WebView.subproj/WebView.m: (-[WebView searchFor:direction:caseSensitive:wrap:]):
   11548         Changed to use selectionDOMRange instead of selectionStart.
   11549 
   11550         * WebView.subproj/WebHTMLRepresentation.h: Removed unused setSelectionFrom method.
   11551         * WebView.subproj/WebHTMLRepresentation.m: Ditto.
   11552 
   11553 2004-09-08  John Sullivan  <sullivan (a] apple.com>
   11554 
   11555         Reviewed by Darin.
   11556         
   11557         - fixed the localization aspect of: 
   11558         <rdar://problem/3790011> undoable operations all say "Undo" in the menu, no specific action names
   11559         
   11560         We now have all the strings ready for localization; we just don't actually use them yet.
   11561 
   11562         * English.lproj/Localizable.strings:
   11563         updated for this change
   11564         
   11565         * WebCoreSupport.subproj/WebBridge.m:
   11566         (-[WebBridge setUndoActionNamePlaceholder]):
   11567         added this placeholder method whose purpose is to hold localizable strings for all the Undo
   11568         action names that NSTextView uses. Later we will use some or all of these, but we can do
   11569         that part after the localization freeze.
   11570 
   11571 2004-09-08  Chris Blumenberg  <cblu (a] apple.com>
   11572 
   11573 	Fixed: <rdar://problem/3778785> REGRESSION (Mail): copying from MS word and pasting into editable region leaves internal clipboard data
   11574 
   11575         Reviewed by kocienda.
   11576 
   11577         * WebView.subproj/WebHTMLView.m:
   11578         (-[WebHTMLView _documentFragmentFromPasteboard:allowPlainText:]): ignore Microsoft's header meta data
   11579 
   11580 2004-09-08  Chris Blumenberg  <cblu (a] apple.com>
   11581 
   11582 	Fixed: <rdar://problem/3792893> WebBaseResourceHandleDelegate always returns cached data for subresource loads
   11583 
   11584         Reviewed by rjw.
   11585 
   11586         * WebView.subproj/WebBaseResourceHandleDelegate.m:
   11587         (-[WebBaseResourceHandleDelegate _canUseResourceForRequest:]): new
   11588         (-[WebBaseResourceHandleDelegate loadWithRequest:]): call _canUseResourceForRequest:
   11589 
   11590 2004-09-08  Chris Blumenberg  <cblu (a] apple.com>
   11591 
   11592 	Forgot to add this in previous check-in.	
   11593 
   11594         * English.lproj/WebViewEditingContextMenu.nib: Added.
   11595 
   11596 2004-09-08  Chris Blumenberg  <cblu (a] apple.com>
   11597 
   11598 	Fixed: <rdar://problem/3791240> WebKit uses the NSTextViewContextMenu nib from inside AppKit
   11599 
   11600         Reviewed by john.
   11601 
   11602         * English.lproj/StringsNotToBeLocalized.txt:
   11603         * WebKit.pbproj/project.pbxproj:
   11604         * WebView.subproj/WebDefaultContextMenuDelegate.m:
   11605         (-[WebDefaultUIDelegate editingContextMenuItemsForElement:]): use our copy of the nib
   11606 
   11607 2004-09-07  Darin Adler  <darin (a] apple.com>
   11608 
   11609         * English.lproj/StringsNotToBeLocalized.txt: Update for recent changes.
   11610 
   11611 2004-09-07  Chris Blumenberg  <cblu (a] apple.com>
   11612 
   11613 	Fixed: <rdar://problem/3790143> exception raised when dragging a URL with 2-byte characters
   11614 
   11615 	(checked in with last check-in)
   11616 
   11617 2004-09-07  Chris Blumenberg  <cblu (a] apple.com>
   11618 
   11619 	Fixed:
   11620 	<rdar://problem/3080103> Need to pass cmd-modified keys to plug-ins
   11621 	<rdar://problem/3751509> can't use safari edit menu to copy and paste with Vantage Learning's My Access
   11622 
   11623         Reviewed by john.
   11624 
   11625         * Plugins.subproj/WebBaseNetscapePluginView.m: fake up command-key events for cut, copy, paste and select all so these menu items work for plug-ins
   11626         (-[WebBaseNetscapePluginView sendModifierEventWithKeyCode:character:]):
   11627         (-[WebBaseNetscapePluginView cut:]):
   11628         (-[WebBaseNetscapePluginView copy:]):
   11629         (-[WebBaseNetscapePluginView paste:]):
   11630         (-[WebBaseNetscapePluginView selectAll:]):
   11631 
   11632 2004-09-07  Darin Adler  <darin (a] apple.com>
   11633 
   11634         - fixed deployment build
   11635 
   11636         * WebView.subproj/WebHTMLView.m: (-[WebHTMLView _deleteWithDirection:granularity:killRing:]):
   11637         Initialize prepend variable.
   11638 
   11639 2004-09-06  Darin Adler  <darin (a] apple.com>
   11640 
   11641         Reviewed by John.
   11642 
   11643         - fixed <rdar://problem/3696542> REGRESSION (Mail): Editable WebKit doesn't support underline yet (in the iChat profile window, at least)
   11644         - fixed <rdar://problem/3780249> REGRESSION (Mail): copy style/paste style doesn't work in HTML editing in Mail
   11645         - fixed <rdar://problem/3788857> REGRESSION (Mail): Home and End keys don't work in message composer
   11646         - fixed <rdar://problem/3788884> REGRESSION (Mail): ctrl-d emacs key binding does not work (delete forward)
   11647         - fixed <rdar://problem/3788890> REGRESSION (Mail): ctrl-k emacs key binding does not work (delete to end of paragraph)
   11648         - fixed <rdar://problem/3788899> REGRESSION (Mail): ctrl-y emacs key binding does not work (yank)
   11649         - fixed <rdar://problem/3788901> REGRESSION (Mail): ctrl-o emacs key binding does not work (insert newline in front of insertion point)
   11650         - fixed <rdar://problem/3788908> REGRESSION (Mail): ctrl-left-arrow emacs key binding does not work (move to beginning of line)
   11651         - fixed <rdar://problem/3788913> REGRESSION (Mail): ctrl-right-arrow emacs key binding does not work (move to end of line)
   11652         - implemented a first cut at other attribute changes from Text Panel besides underline (bugs?)
   11653         - dealt with a couple of FIXMEs in WebHTMLView.m
   11654         - updated list of not-yet-implemented methods in WebHTMLView.m
   11655         - fixed many deletion operations to call the correct editing delegate methods
   11656 
   11657         * WebView.subproj/WebFrameViewPrivate.h: Remove _scrollToTopLeft and _scrollToBottomLeft.
   11658         No one was calling them anyway, so they should really have been marked internal and not private.
   11659         * WebView.subproj/WebFrameView.m:
   11660         (-[WebFrameView scrollToBeginningOfDocument:]): Renamed _scrollToTopLeft to this, so the home key
   11661         would start working with the key bindings machinery.
   11662         (-[WebFrameView scrollToEndOfDocument:]): Same thing, for end key.
   11663         (-[WebFrameView keyDown:]): Update for name changes, and also make sure we don't try to grab
   11664         control-arrow keys here (probably not necessary, but good anyway).
   11665 
   11666         * WebView.subproj/WebHTMLViewInternal.h: Added keyDownEvent field, and startNewKillRingSequence
   11667         and nextResponderDisabledOnce flags.
   11668         * WebView.subproj/WebHTMLView.m:
   11669         Rearrange declarations at the top of the file so that external things are up with
   11670         the #import directives and things inside this file are declared below.
   11671         (-[WebHTMLView _shouldReplaceSelectionWithText:givenAction:]): Ditto.
   11672         (-[WebHTMLView _calculatePrintHeight]): Moved up into the "internal to file" category.
   11673         (-[WebHTMLView _updateTextSizeMultiplier]): Ditto.
   11674         (-[WebHTMLView _selectedRange]): Added.
   11675         (-[WebHTMLView _openLinkFromMenu:]): Left this method lying around even though I deleted the
   11676         other APPKIT_CODE_FOR_REFERENCE in case this shows up in the context menu we are now sharing
   11677         with the AppKit. Chris will look at this later, and he can delete it then.
   11678         (+[WebHTMLView initialize]): Call _NSInitializeKillRing.
   11679         (-[WebHTMLView _documentRange]): Added.
   11680         (-[WebHTMLView string]): Call the bridge to get the plain text rather than making an attributed
   11681         string and then getting the text from there.
   11682         (-[WebHTMLView becomeFirstResponder]): Set startNewKillRingSequence flag, so that new deletions
   11683         will create a new kill ring entry.
   11684         (-[WebHTMLView moveToBeginningOfDocument:]): Use backward direction instead of left direction.
   11685         (-[WebHTMLView moveToBeginningOfDocumentAndModifySelection:]): Ditto.
   11686         (-[WebHTMLView moveToBeginningOfLine:]): Ditto.
   11687         (-[WebHTMLView moveToBeginningOfLineAndModifySelection:]): Ditto.
   11688         (-[WebHTMLView moveToBeginningOfParagraph:]): Ditto, also use WebSelectToParagraphBoundary.
   11689         (-[WebHTMLView moveToBeginningOfParagraphAndModifySelection:]): Ditto.
   11690         (-[WebHTMLView moveToEndOfDocument:]): Use forward direction instead of right direction.
   11691         (-[WebHTMLView moveToEndOfDocumentAndModifySelection:]): Ditto.
   11692         (-[WebHTMLView moveToEndOfLine:]): Ditto.
   11693         (-[WebHTMLView moveToEndOfLineAndModifySelection:]): Ditto.
   11694         (-[WebHTMLView moveToEndOfParagraph:]): Ditto, also use WebSelectToParagraphBoundary.
   11695         (-[WebHTMLView moveToEndOfParagraphAndModifySelection:]): Ditto.
   11696         (-[WebHTMLView _shouldDeleteRange:]): Added.
   11697         (-[WebHTMLView _deleteRange:preflight:killRing:prepend:]): Added.
   11698         (-[WebHTMLView delete:]): Changed to call new _deleteRange method.
   11699         (-[WebHTMLView cut:]): Changed to preflight property and call new _deleteRange method.
   11700         (-[WebHTMLView _selectionFontAttributes]): Added.
   11701         (-[WebHTMLView _selectionFontAttributesAsRTF]): Added.
   11702         (-[WebHTMLView _fontAttributesFromFontPasteboard]): Added.
   11703         (-[WebHTMLView _emptyStyle]): Added.
   11704         (-[WebHTMLView _styleFromFontAttributes:]): Added.
   11705         (-[WebHTMLView _applyStyleToSelection:]): Added.
   11706         (-[WebHTMLView copyFont:]): Implemented.
   11707         (-[WebHTMLView pasteFont:]): Implemented.
   11708         (-[WebHTMLView _originalFontA]): Added.
   11709         (-[WebHTMLView _originalFontB]): Added.
   11710         (-[WebHTMLView _addToStyle:fontA:fontB:]): Added. Has code from the method that figures out
   11711         what the font manager is doing for changeFont:, now needed for changeAttribute: too.
   11712         (-[WebHTMLView _styleFromFontManagerOperation]): Renamed and now calls shared methods.
   11713         (-[WebHTMLView changeFont:]): Call shared method, still does the same thing.
   11714         (-[WebHTMLView _colorAsString:]): Added. Has code from the method we were using with the
   11715         color panel before.
   11716         (-[WebHTMLView _shadowAsString:]): Added.
   11717         (-[WebHTMLView _styleForAttributeChange:]): Added.
   11718         (-[WebHTMLView changeAttributes:]): Implemented.
   11719         (-[WebHTMLView _styleFromColorPanelWithSelector:]): Renamed and now calls shared methods.
   11720         (-[WebHTMLView _changeCSSColorUsingSelector:inRange:]): Call method by new name.
   11721         (-[WebHTMLView changeDocumentBackgroundColor:]): Call method by new name.
   11722         (-[WebHTMLView changeColor:]): Changed around a bit; still doesn't work yet.
   11723         (-[WebHTMLView _alignSelectionUsingCSSValue:]): Call shared methods.
   11724         (-[WebHTMLView indent:]): Removed, since NSTextView doesn't implement this method. Added to list
   11725         of methods to possibly implement later in the file.
   11726         (-[WebHTMLView insertTab:]): Call insertText: to save code and so we get WebViewInsertActionTyped
   11727         instead of WebViewInsertActionPasted.
   11728         (-[WebHTMLView changeCaseOfLetter:]): Removed, since NSTextView doesn't implement this method.
   11729         Added to list of methods to possibly implement later in the file.
   11730         (-[WebHTMLView _deleteWithDirection:granularity:killRing:]): Added.
   11731         (-[WebHTMLView deleteForward:]): Implemented. This makes Control-D work.
   11732         (-[WebHTMLView deleteBackwardByDecomposingPreviousCharacter:]): Implemented by just calling
   11733         deleteBackward for now; probably better than doing nothing.
   11734         (-[WebHTMLView deleteWordForward:]): Changed to call new _delete method above. Fixes things
   11735         so that we delete the selection if there is one, get the appropriate delegate calls, handle
   11736         the kill ring properly, and don't do any selection if we can't delete.
   11737         (-[WebHTMLView deleteWordBackward:]): Ditto.
   11738         (-[WebHTMLView deleteToBeginningOfLine:]): Ditto.
   11739         (-[WebHTMLView deleteToEndOfLine:]): Ditto.
   11740         (-[WebHTMLView deleteToBeginningOfParagraph:]): Ditto.
   11741         (-[WebHTMLView deleteToEndOfParagraph:]): Ditto. Added additional behavior needed since this
   11742         is bound to Control-K, so it's not really just delete to end of paragraph.
   11743         (-[WebHTMLView insertNewlineIgnoringFieldEditor:]): Added. Calls insertNewline:.
   11744         (-[WebHTMLView insertTabIgnoringFieldEditor:]): Added. Calls insertTab:.
   11745         (-[WebHTMLView subscript:]): Added.
   11746         (-[WebHTMLView superscript:]): Added.
   11747         (-[WebHTMLView unscript:]): Added.
   11748         (-[WebHTMLView underline:]): Added.
   11749         (-[WebHTMLView yank:]): Added.
   11750         (-[WebHTMLView yankAndSelect:]): Added. Calls _insertText.
   11751         (-[WebHTMLView _arrowKeyDownEventSelectorIfPreprocessing:]): Added. Part of workaround for
   11752         control-arrow key trouble.
   11753         (-[WebHTMLView respondsToSelector:]): Added. More of workaround.
   11754         (-[WebHTMLView nextResponder:]): Added. More of workaround.
   11755         (-[WebHTMLView _selectionChanged]): Set startNewKillRingSequence flag, so that new deletions
   11756         will create a new kill ring entry.
   11757         (-[WebHTMLView _updateFontPanel]): Remove a bunch of code here that wasn't working very well
   11758         because it walked a DOM range incorrectly, and instead use the new method that does all the
   11759         right stuff on the other side of the bridge.
   11760         (-[WebHTMLView _insertText:selectInsertedText:]): Added new helper method for use by both
   11761         insertText and yankAndSelect, with most of the guts of insertText and one additional parameter.
   11762         (-[WebHTMLView insertText:]): Call the new _insertText.
   11763 
   11764         * WebView.subproj/WebView.m: Use macros to make the forwarding from WebView more terse.
   11765         Updated the list to include a few methods it didn't before.
   11766 
   11767 2004-09-06  John Sullivan  <sullivan (a] apple.com>
   11768 
   11769         Reviewed by Darin.
   11770         
   11771         - put preference keys in a private header file so Safari can use them for Managed Preferences
   11772 
   11773         * WebView.subproj/WebPreferenceKeysPrivate.h:
   11774         new Private header file, includes the #defines for NSUserDefaults preference keys
   11775         
   11776         * WebView.subproj/WebPreferences.m:
   11777         moved the preference key #defines out of here; now imports WebPreferenceKeysPrivate.h
   11778 
   11779         * WebKit.pbproj/project.pbxproj:
   11780         updated for new file
   11781 
   11782 2004-09-03  Chris Blumenberg  <cblu (a] apple.com>
   11783 
   11784 	Fixed: <rdar://problem/3782543> CrashTracer: ...87 crashes at com.apple.WebKit: -[WebNetscapePluginPackage initWithPath:] + 0x18c
   11785 
   11786         Reviewed by john.
   11787 
   11788         * Plugins.subproj/WebNetscapePluginPackage.m:
   11789         (-[WebNetscapePluginPackage initWithPath:]): make sure the file is at least 8 bytes long before calling memcmp
   11790 
   11791 2004-09-03  Chris Blumenberg  <cblu (a] apple.com>
   11792 	
   11793 	Fixed:
   11794 	<rdar://problem/3788328> assertion failure when moving an image
   11795 	<rdar://problem/3783628> REGRESSION (Mail): when I try to reorder an image, the image is duplicated
   11796 
   11797         * DOM.subproj/WebDOMOperations.m:
   11798         (-[DOMDocument _createRangeWithNode:]): new, convenience
   11799         (-[DOMDocument _documentRange]): use _ createRangeWithNode:
   11800         * DOM.subproj/WebDOMOperationsPrivate.h:
   11801         * WebView.subproj/WebHTMLView.m:
   11802         (-[WebHTMLView _startDraggingImage:at:operation:event:sourceIsDHTML:DHTMLWroteData:]): set the selection to the image when starting the drag. This allows "move selection" to work and this matches NSText's behavior
   11803 
   11804 === Safari-162 ===
   11805 
   11806 2004-09-02  Richard Williamson   <rjw (a] apple.com>
   11807 
   11808         Support for patterns in <canvas>.  
   11809         (These changes attempt to create a CGImageRef from a WebImageRenderer that
   11810         is used by the pattern drawing function.)
   11811         
   11812         Reviewed by Hyatt.
   11813 
   11814         * WebCoreSupport.subproj/WebImageRenderer.h:
   11815         * WebCoreSupport.subproj/WebImageRenderer.m:
   11816         (-[WebImageRenderer dealloc]):
   11817         (-[WebImageRenderer finalize]):
   11818         (-[WebImageRenderer imageRef]):
   11819         (_createImageRef):
   11820         * WebView.subproj/WebPDFView.h:
   11821         * WebView.subproj/WebPDFView.m:
   11822 
   11823 2004-09-01  Chris Blumenberg  <cblu (a] apple.com>
   11824 
   11825 	Fixed deployment build failure.
   11826 
   11827         * WebView.subproj/WebDefaultContextMenuDelegate.m:
   11828         (-[WebDefaultUIDelegate menuItemWithTag:]):
   11829 
   11830 2004-08-31  Chris Blumenberg  <cblu (a] apple.com>
   11831 
   11832 	Fixed: 
   11833 	<rdar://problem/3699498> Context menu for editable WebViews should provide items like Cut and Paste
   11834 	<rdar://problem/3781535> REGRESSION (Mail): no context menu after ctrl-clicking a misspelled word
   11835 
   11836         Reviewed by kocienda.
   11837 
   11838         * English.lproj/Localizable.strings:
   11839         * WebView.subproj/WebDefaultContextMenuDelegate.m:
   11840         (-[WebDefaultUIDelegate menuItemWithTag:]): updated to handle new menu items
   11841         (-[WebDefaultUIDelegate contextMenuItemsForElement:]): renamed from webView:contextMenuItemsForElement:defaultMenuItems:
   11842         (-[WebDefaultUIDelegate editingContextMenuItemsForElement:]): new
   11843         (-[WebDefaultUIDelegate webView:contextMenuItemsForElement:defaultMenuItems:]): moved, now call contextMenuItemsForElement: or editingContextMenuItemsForElement:
   11844         * WebView.subproj/WebDefaultUIDelegate.h:
   11845         * WebView.subproj/WebHTMLView.m:
   11846         (-[WebHTMLView _isSelectionMisspelled]): new
   11847         (-[WebHTMLView _guessesForMisspelledSelection]): new
   11848         (-[WebHTMLView _changeSpellingFromMenu:]): new
   11849         (-[WebHTMLView _ignoreSpellingFromMenu:]): new
   11850         (-[WebHTMLView _learnSpellingFromMenu:]): new
   11851         * WebView.subproj/WebHTMLViewPrivate.h:
   11852         * WebView.subproj/WebUIDelegate.h:
   11853 
   11854 2004-08-31  Darin Adler  <darin (a] apple.com>
   11855 
   11856         - fixed B&I build failure
   11857 
   11858         * WebView.subproj/WebHTMLView.m: (-[WebTextCompleteController _buildUI]):
   11859         Work around unwanted warning by adding a cast.
   11860 
   11861 2004-08-27  Maciej Stachowiak  <mjs (a] apple.com>
   11862 
   11863         Reviewed by John.
   11864 
   11865 	<rdar://problem/3778314> REGRESSION: Can't proceed to survey questions on Lominger's Apple website
   11866         
   11867 	Because we will stop parsing when there is a pending redirection,
   11868 	avoid setting one if no navigation would actually take place
   11869 	because the number of steps is out of range.
   11870 
   11871 	* WebCoreSupport.subproj/WebBridge.m:
   11872         (-[WebBridge canGoBackOrForward:]):
   11873 
   11874 2004-08-30  Darin Adler  <darin (a] apple.com>
   11875 
   11876         Reviewed by John.
   11877 
   11878         - part of fix for <rdar://problem/3637519> REGRESSION (125-128): unrepro crash in QListBox::sizeForNumberOfLines at istweb.apple.com
   11879 
   11880         * WebCoreSupport.subproj/WebTextRendererFactory.m: (-[WebTextRendererFactory clearCaches]):
   11881         Call [super clearCaches].
   11882 
   11883 2004-08-30  Darin Adler  <darin (a] apple.com>
   11884 
   11885         Reviewed by Chris.
   11886 
   11887         - did work to prepare for uploading files incrementally when submitting forms
   11888 
   11889         * History.subproj/WebHistoryItem.m:
   11890         (-[WebHistoryItem _setFormInfoFromRequest:]): Use NSArray instead of NSData for form data.
   11891         (-[WebHistoryItem formData]): Ditto.
   11892         * History.subproj/WebHistoryItemPrivate.h: Ditto.
   11893         * WebCoreSupport.subproj/WebBridge.m:
   11894         (-[WebBridge startLoadingResource:withURL:customHeaders:postData:]): Ditto.
   11895         (-[WebBridge syncLoadResourceWithURL:customHeaders:postData:finalURL:responseHeaders:statusCode:]): Ditto.
   11896         (-[WebBridge postWithURL:referrer:target:data:contentType:triggeringEvent:form:formValues:]): Ditto.
   11897         * WebCoreSupport.subproj/WebSubresourceClient.h: Ditto.
   11898         * WebCoreSupport.subproj/WebSubresourceClient.m:
   11899         (+[WebSubresourceClient startLoadingResource:withURL:customHeaders:postData:referrer:forDataSource:]): Ditto.
   11900         * WebView.subproj/WebFrame.m:
   11901         (-[WebFrame _loadItem:withLoadType:]): Ditto.
   11902         (-[WebFrame _postWithURL:referrer:target:data:contentType:triggeringEvent:form:formValues:]): Ditto.
   11903         * WebView.subproj/WebFramePrivate.h: Ditto.
   11904 
   11905         * WebView.subproj/WebFormDataStream.h: Added.
   11906         * WebView.subproj/WebFormDataStream.m:
   11907         (-[WebFormDataStream initWithFormDataArray:]): Placeholder; not done yet.
   11908         (-[WebFormDataStream formDataArray]): Ditto.
   11909         * WebKit.pbproj/project.pbxproj: Added WebFormDataStream files.
   11910 
   11911 2004-08-30  John Sullivan  <sullivan (a] apple.com>
   11912 
   11913         Reviewed by Ken.
   11914 
   11915         - WebKit part of fix for <rdar://problem/3607720> myFrame.print() prints the window 
   11916         but should only print the frame
   11917 
   11918         * WebView.subproj/WebUIDelegatePrivate.h:
   11919         declare new delegate method that includes which frame to print
   11920 
   11921         * WebView.subproj/WebDefaultUIDelegate.m:
   11922         (-[WebDefaultUIDelegate webView:printFrameView:]):
   11923         implement default (no-op) version of new delegate method
   11924 
   11925         * WebCoreSupport.subproj/WebBridge.m:
   11926         (-[WebBridge print]):
   11927         call new delegate method if available, otherwise call old delegate method, for
   11928         backward compatibility.
   11929 
   11930 2004-08-27  Maciej Stachowiak  <mjs (a] apple.com>
   11931 
   11932         Reviewed by John. 
   11933         Checked in by Ken
   11934         
   11935         Ken comments: It looks like Maciej forgot to land this when he checked in the
   11936         WebCore portion of this change.
   11937 
   11938         <rdar://problem/3778314> REGRESSION: Can't proceed to survey questions on Lominger's Apple website
   11939             
   11940         Because we will stop parsing when there is a pending redirection,
   11941         avoid setting one if no navigation would actually take place
   11942         because the number of steps is out of range.
   11943     
   11944         * WebCoreSupport.subproj/WebBridge.m:
   11945         (-[WebBridge canGoBackOrForward:]):
   11946 
   11947 2004-08-27  Ken Kocienda  <kocienda (a] apple.com>
   11948 
   11949         Reviewed by Chris
   11950 
   11951         Fix for this bug:
   11952         
   11953         <rdar://problem/3756997> WebKit aggressive in making pasted text into a URL, even when it's not much like a URL
   11954 
   11955         * WebView.subproj/WebHTMLView.m:
   11956         (-[WebHTMLView _documentFragmentFromPasteboard:allowPlainText:]): Don't try so hard to coerce data
   11957         on the pasteboard into a URL, and do not make an anchor with an href for any URLs that are 
   11958         explicitly present on the pasteboard. Also, move URL pasteboard type check beneath the RTF
   11959         checks.
   11960 
   11961 === Safari-161 ===
   11962 
   11963 2004-08-26  Chris Blumenberg  <cblu (a] apple.com>
   11964 
   11965 	Fixed build failure on Panther.
   11966 
   11967         Reviewed by john.
   11968 
   11969         * WebView.subproj/WebHTMLView.m:
   11970         (-[WebHTMLView _documentFragmentFromPasteboard:allowPlainText:]): ifdef'd out call to AppKit SPI
   11971         (-[WebHTMLView _attributeStringFromDOMRange:]): ditto
   11972 
   11973 2004-08-26  Chris Blumenberg  <cblu (a] apple.com>
   11974 
   11975 	Tweak to last check-in.
   11976 
   11977         * WebView.subproj/WebHTMLView.m:
   11978         (-[WebHTMLView _documentFragmentFromPasteboard:allowPlainText:]):
   11979 
   11980 2004-08-26  Chris Blumenberg  <cblu (a] apple.com>
   11981 
   11982 	Fixed: 
   11983 	<rdar://problem/3546412> support for pasting and drag and dropping of RTF and RTFD to editable WebViews
   11984 	<rdar://problem/3745345> use AppKit for converting from DOM to RTF
   11985 
   11986         Reviewed by rjw.
   11987 
   11988         * DOM.subproj/WebDOMOperations.m:
   11989         (-[DOMDocument _documentRange]): new
   11990         * DOM.subproj/WebDOMOperationsPrivate.h:
   11991         * WebView.subproj/WebHTMLView.m:
   11992         (-[WebHTMLView _documentFragmentFromPasteboard:allowPlainText:]): call AppKit SPI to get a document fragment from an attributed string
   11993         (-[WebHTMLView string]): added a FIXME
   11994         (-[WebHTMLView _attributeStringFromDOMRange:]): new, calls AppKit SPI that creates an attributed string from a DOM Range
   11995         (-[WebHTMLView attributedString]): call _attributeStringFromDOMRange:, fallback to old code if it returns nil
   11996         (-[WebHTMLView selectedAttributedString]): ditto
   11997 
   11998 2004-08-26  Chris Blumenberg  <cblu (a] apple.com>
   11999 
   12000 	Fixed: <rdar://problem/3774178> Plugin hooks for selected state aren't being called
   12001 
   12002         Reviewed by darin.
   12003 
   12004         * WebCoreSupport.subproj/WebBridge.m:
   12005         (-[WebBridge setIsSelected:forView:]): don't forget colons in method names
   12006 
   12007 2004-08-26  Chris Blumenberg  <cblu (a] apple.com>
   12008 
   12009 	Fixed: <rdar://problem/3768439> can't click in WebView in Carbon WebKit apps (GetEventPlatformEventRecord returns false)
   12010 
   12011         Reviewed by rjw.
   12012 
   12013         * Carbon.subproj/HIWebView.m:
   12014         (Click): use WebGetEventPlatformEventRecord not GetEventPlatformEventRecord
   12015         (MouseUp): ditto
   12016         (MouseMoved): ditto
   12017         (MouseDragged): ditto
   12018         (MouseWheelMoved): ditto
   12019         (WindowHandler): ditto
   12020         (HIWebViewEventHandler): ditto
   12021         (UpdateObserver): ditto
   12022         (WebGetEventPlatformEventRecord): Call GetEventPlatformEventRecord, if that fails fallback to the current event. This is code Eric Schlegel to me to use. 
   12023 
   12024 2004-08-24  Chris Blumenberg  <cblu (a] apple.com>
   12025 
   12026 	Fixed with help from Trey:
   12027 	<rdar://problem/3764856> REGRESSION !25-154): Safari accepts mouse clicks (follows links) when not key
   12028 
   12029         Reviewed by rjw.
   12030 
   12031         * WebView.subproj/WebHTMLView.m:
   12032         (-[WebHTMLView _isSelectionEvent:]): brought back from CVS
   12033         (-[WebHTMLView acceptsFirstMouse:]): only call eventMayStartDrag if _isSelectionEvent returns YES since we only want to allow selection dragging on the first mouse down
   12034         (-[WebHTMLView shouldDelayWindowOrderingForEvent:]): ditto
   12035 
   12036 2004-08-24  Ken Kocienda  <kocienda (a] apple.com>
   12037 
   12038         Reviewed by Hyatt
   12039 
   12040         Improved the checks used to see if certain operations can be done based
   12041         on the state of the selection and whether the selection is editable. I
   12042         added some helpers and improved some others to assist in making these
   12043         determinations.
   12044         
   12045         This helps to fix this bug:
   12046         <rdar://problem/3764987> Crash after adding newline to quoted text
   12047         
   12048         Since some editing methods expect the the selection to be in a certain state 
   12049         in order to work, these checks help obviate crashes like 3764987.
   12050 
   12051         * WebView.subproj/WebHTMLView.m:
   12052         (-[WebHTMLView _writeSelectionToPasteboard:]): _haveSelection name changed to _hasSelection.
   12053         (-[WebHTMLView _canCopy]): Checks to see if state is appropriate to perform this operation.
   12054         (-[WebHTMLView _canCut]): Ditto. Function added.
   12055         (-[WebHTMLView _canDelete]): Ditto. Function refined.
   12056         (-[WebHTMLView _canPaste]): Ditto. Function refined.
   12057         (-[WebHTMLView _canType]): Ditto. Function added.
   12058         (-[WebHTMLView _hasSelection]): Name changed from _haveSelection.
   12059         (-[WebHTMLView _hasSelectionOrInsertionPoint]): Added.
   12060         (-[WebHTMLView _isEditable]): Added.
   12061         (-[WebHTMLView takeFindStringFromSelection:]): _haveSelection name changed to _hasSelection.
   12062         (-[WebHTMLView validateUserInterfaceItem:]): Ditto
   12063         (-[WebHTMLView validRequestorForSendType:returnType:]): Ditto
   12064         (-[WebHTMLView keyDown:]):
   12065         (-[WebHTMLView copy:]): Uses new _canCopy check.
   12066         (-[WebHTMLView cut:]): Uses new _canCut check.
   12067         (-[WebHTMLView delete:]): Now uses _canDelete check.
   12068         (-[WebHTMLView paste:]): Now uses _canPaste check.
   12069         (-[WebHTMLView _updateFontPanel]): _haveSelection name changed to _hasSelection.
   12070         * WebView.subproj/WebHTMLViewPrivate.h:
   12071         * WebView.subproj/WebView.m:
   12072         (-[WebView writeSelectionWithPasteboardTypes:toPasteboard:]): Use selectionState check to
   12073         determine whether or not operation can be done.
   12074 
   12075 2004-08-24  Richard Williamson   <rjw (a] apple.com>
   12076 
   12077         Fixed <rdar://problem/3770469> Some PDFs open with line of previous page above PDF view
   12078 	
   12079         Set height resize flags on WebPDFView.
   12080 		
   12081         Reviewed by Chris.
   12082 
   12083         * WebView.subproj/WebPDFView.m:
   12084         (-[WebPDFView initWithFrame:]):
   12085 
   12086 2004-08-24  David Hyatt  <hyatt (a] apple.com>
   12087 
   12088 	Add Atom and RSS MIME types to set of supported XML types.
   12089 	
   12090         Reviewed by rjw
   12091 
   12092         * WebView.subproj/WebDataSource.m:
   12093         (+[WebDataSource _repTypesAllowImageTypeOmission:]):
   12094         * WebView.subproj/WebFrameView.m:
   12095         (+[WebFrameView _viewTypesAllowImageTypeOmission:]):
   12096 
   12097 2004-08-23  Maciej Stachowiak  <mjs (a] apple.com>
   12098 
   12099         Reviewed by Kevin.
   12100 
   12101 	- remove annoying ERROR spew and replace with comment
   12102 	
   12103         * WebView.subproj/WebHTMLView.m:
   12104         (-[WebHTMLView validAttributesForMarkedText]):
   12105 
   12106 2004-08-23  Maciej Stachowiak  <mjs (a] apple.com>
   12107 
   12108         Reviewed by Richard.
   12109 
   12110 	- a bit of code cleanup
   12111 
   12112         * WebView.subproj/WebDataSource.m:
   12113         (-[WebDataSource _stringWithData:]): Call textEncodingName instead of
   12114 	copying it's code.
   12115         (-[WebDataSource textEncodingName]): Tweak formatting.
   12116 
   12117 2004-08-23  Chris Blumenberg  <cblu (a] apple.com>
   12118 
   12119 	Fixed build.
   12120 
   12121         * WebKit.pbproj/project.pbxproj: make sure we're doing -f on a file, not a directory
   12122 
   12123 2004-08-23  Chris Blumenberg  <cblu (a] apple.com>
   12124 
   12125 	Fixed: <rdar://problem/3674867> use new Security framework SPI's to reenable cert acquisition
   12126 
   12127         Reviewed by john.
   12128 
   12129         * WebCoreSupport.subproj/WebKeyGeneration.cpp:
   12130         * WebCoreSupport.subproj/WebKeyGeneration.h:
   12131         * WebCoreSupport.subproj/WebKeyGenerator.h:
   12132         * WebCoreSupport.subproj/WebKeyGenerator.m:
   12133         (-[WebKeyGenerator signedPublicKeyAndChallengeStringWithStrengthIndex:challenge:pageURL:]): re-enabled cert code, call Panther version on Panther, Tiger version on Tiger
   12134         (-[WebKeyGenerator addCertificatesToKeychainFromData:]): ditto
   12135         * WebCoreSupport.subproj/WebNewKeyGeneration.c: Added.
   12136         (gnrAddContextAttribute):
   12137         (gnrGetSubjPubKey):
   12138         (gnrNullAlgParams):
   12139         (gnrSign):
   12140         (gnrFreeCssmData):
   12141         (nssArraySize):
   12142         (signedPublicKeyAndChallengeString):
   12143         (addCertificateToKeychainFromData):
   12144         (addCertificatesToKeychainFromData):
   12145         * WebCoreSupport.subproj/WebNewKeyGeneration.h: Added.
   12146         * WebKit.pbproj/project.pbxproj:
   12147 
   12148 2004-08-20  David Hyatt  <hyatt (a] apple.com>
   12149 
   12150 	Fix the directionality of the unicode hyphen so that on Panther it now matches Tiger.
   12151 	
   12152         Reviewed by darin
   12153 
   12154         * Misc.subproj/WebUnicode.m:
   12155         (_unicodeDirection):
   12156 
   12157 2004-08-20  Richard Williamson   <rjw (a] apple.com>
   12158 
   12159 	    Implemented new JNI abstraction.  We no longer invoke Java methods
   12160 	    directly with JNI, rather we call into the plugin.  This allows the
   12161 	    plugin to dispatch the call to the appropriate VM thread.  This
   12162 	    change should (will?) fix a whole class of threading related problems with
   12163 	    the Java VM.
   12164 
   12165         Reviewed by Hyatt.
   12166 
   12167         * WebCoreSupport.subproj/WebBridge.m:
   12168         (-[WebBridge getAppletInView:]):
   12169 
   12170 2004-08-20  Trey Matteson  <trey (a] apple.com>
   12171 
   12172 	3655407 - Editing: -complete: method unimplemented (WebKit editing API)
   12173 
   12174 	This feature is mostly implemented.  The only loose ends I know of are:
   12175 
   12176 	3769654 - text insertions done via complete: should preserve case of full replacement string
   12177 	3769652 - positioning of complete: popup window wrong for right-to-left languages
   12178 
   12179         Reviewed by John
   12180 
   12181         * WebView.subproj/WebHTMLView.m:
   12182         (-[WebHTMLViewPrivate dealloc]):  Free new object.
   12183         (-[WebHTMLView menuForEvent:]):  Bail on completion session.
   12184         (-[WebHTMLView windowDidResignKey:]):  Ditto.
   12185         (-[WebHTMLView windowWillClose:]):  Ditto.
   12186         (-[WebHTMLView mouseDown:]):  Ditto.
   12187         (-[WebHTMLView resignFirstResponder]):  Ditto.
   12188         (-[WebHTMLView keyDown:]):  Bail on completion session if WebCore takes the event.
   12189 	Give the CompleteController a crack at the key event.
   12190         (-[WebHTMLView _expandSelectionToGranularity:]):  Adopt method rename
   12191         (-[WebHTMLView complete:]):  Make CompleteController, tell it to do its thing.
   12192         (-[WebHTMLView checkSpelling:]):  Add ERROR().
   12193         (-[WebHTMLView showGuessPanel:]): Add ERROR().
   12194         (-[WebHTMLView _changeSpellingToWord:]): Add ERROR().
   12195         (-[WebHTMLView ignoreSpelling:]): Add ERROR().
   12196 
   12197         (-[WebTextCompleteController initWithHTMLView:]):
   12198         (-[WebTextCompleteController dealloc]):
   12199         (-[WebTextCompleteController _insertMatch:]): Stick the new string into the doc.
   12200         (-[WebTextCompleteController _buildUI]):  Make popup window.
   12201         (-[WebTextCompleteController _placePopupWindow:]):  Position popup window.
   12202         (-[WebTextCompleteController doCompletion]):  Lookup matches, display window.
   12203         (-[WebTextCompleteController endRevertingChange:moveLeft:]):  Bail on complete: session.
   12204         (-[WebTextCompleteController filterKeyDown:]):  Process keys while popup is up.
   12205         (-[WebTextCompleteController _reflectSelection]):  Handle choice in popup.
   12206         (-[WebTextCompleteController tableAction:]):  Handle double click in popup
   12207         (-[WebTextCompleteController numberOfRowsInTableView:]):  Fill table with matches.
   12208         (-[WebTextCompleteController tableView:objectValueForTableColumn:row:]):  Ditto.
   12209         (-[WebTextCompleteController tableViewSelectionDidChange:]):  Handle selection change.
   12210         * WebView.subproj/WebHTMLViewInternal.h:
   12211 
   12212 2004-08-20  John Sullivan  <sullivan (a] apple.com>
   12213 
   12214         * English.lproj/StringsNotToBeLocalized.txt:
   12215         checked this in; the only difference is that
   12216         the strings were out of order.
   12217 
   12218 2004-08-19  Richard Williamson   <rjw (a] apple.com>
   12219 
   12220         Continue to call old pollForAppletInView: in Tiger until
   12221         we get an plugin that supports the new API.
   12222 		
   12223         Reviewed by Chris.
   12224 
   12225         * WebCoreSupport.subproj/WebBridge.m:
   12226         (-[WebBridge getAppletInView:]):
   12227         * WebKit.pbproj/project.pbxproj:
   12228 
   12229 === Safari-158 ===
   12230 
   12231 2004-08-19  Chris Blumenberg  <cblu (a] apple.com>
   12232 
   12233 	Fixed typo in comment.
   12234 
   12235         * Misc.subproj/WebIconDatabase.m:
   12236         (-[WebIconDatabase _updateFileDatabase]):
   12237 
   12238 2004-08-19  Chris Blumenberg  <cblu (a] apple.com>
   12239 
   12240 	Fixed: <rdar://problem/3566336> CrashTracer: .2403 crashes at com.apple.WebKit: -[WebFileDatabase performSetObject:forKey:] + 0x94
   12241 
   12242         Reviewed by trey.
   12243 
   12244         * Misc.subproj/WebIconDatabase.m:
   12245         (-[WebIconDatabase _updateFileDatabase]): pass WebFileDatabase copies of the mutable dictionaries or else they may be accessed on a separate thread as the main thread is modifying them
   12246 
   12247 2004-08-18  Richard Williamson   <rjw (a] apple.com>
   12248 
   12249         Replace horrible pollForAppletInView: with new
   12250         webPlugInGetApplet.  The details of how the applet instance
   12251         is provided now belong to the Java team.  Yeh.
   12252 		
   12253         Reviewed by Chris.
   12254 
   12255         * WebCoreSupport.subproj/WebBridge.m:
   12256         (-[WebBridge getAppletInView:]):
   12257 
   12258 2004-08-17  Richard Williamson   <rjw (a] apple.com>
   12259 
   12260         Fixed <rdar://problem/3759093> Need PDF context menu: "Open in Preview" or other external app
   12261 
   12262         Added support for "Open with ..." in PDF view.
   12263 		
   12264         Reviewed by Chris and Trey.
   12265 
   12266         * ChangeLog:
   12267         * English.lproj/Localizable.strings:
   12268         * English.lproj/StringsNotToBeLocalized.txt:
   12269         * WebView.subproj/WebPDFView.h:
   12270         * WebView.subproj/WebPDFView.m:
   12271         (-[WebPDFView initWithFrame:]):
   12272         (-[WebPDFView dealloc]):
   12273         (applicationInfoForMIMEType):
   12274         (-[WebPDFView path]):
   12275         (-[WebPDFView menuForEvent:]):
   12276         (-[WebPDFView setDataSource:]):
   12277         (-[WebPDFView layout]):
   12278         (-[WebPDFView viewDidMoveToHostWindow]):
   12279         (-[WebPDFView openWithFinder:]):
   12280 
   12281 2004-08-17  Richard Williamson   <rjw (a] apple.com>
   12282 
   12283         JNI needs both the jmethodID and return type.  Changed API to 
   12284         pass both.
   12285 		
   12286         Reviewed by Chris.
   12287 
   12288         * Plugins.subproj/WebJavaPlugIn.h:
   12289 
   12290 2004-08-17  Trey Matteson  <trey (a] apple.com>
   12291 
   12292 	3764147 - failure of subframe to load leaves links in parent doc broken
   12293 
   12294         Reviewed by Maciej.
   12295 
   12296         * WebView.subproj/WebDataSource.m:
   12297         (-[WebDataSource _receivedMainResourceError:complete:]):
   12298 	Need to call [bridge end] in the case of an error, so WC can clean up.
   12299 
   12300 === Safari-157 ===
   12301 
   12302 2004-08-15  Richard Williamson   <rjw (a] apple.com>
   12303 
   12304         More changes to np headers.
   12305         
   12306         Reviewed by Darin.
   12307 
   12308         * Plugins.subproj/WebNetscapePluginPackage.m:
   12309         (-[WebNetscapePluginPackage load]):
   12310         * Plugins.subproj/npapi.h:
   12311         * Plugins.subproj/npfunctions.h:
   12312         * Plugins.subproj/npruntime.h:
   12313 
   12314 2004-08-13  Darin Adler  <darin (a] apple.com>
   12315 
   12316         Reviewed by Chris.
   12317 
   12318         - fixed <rdar://problem/3760924> Carbon path passed in NPP_StreamAsFile must be in local character set, not UTF-8
   12319 
   12320         * Plugins.subproj/WebBaseNetscapePluginStream.m:
   12321         (CarbonPathFromPOSIXPath): Added. New function that uses the path pieces from an FSSpec.
   12322         This has many advantages; the big one that fixes the bug is that it gives the mangled names
   12323         that work even for files that have names that can't otherwise be encoded in Carbon-style
   12324         path names. I didn't write this from scratch: I started with the method in Foundation
   12325         and just changed it to use FSSpec.
   12326         (-[WebBaseNetscapePluginStream destroyStream]): Remove code that used NSString and just call
   12327         CarbonPathFromPOSIXPath instead.
   12328 
   12329         * Plugins.subproj/npapi.h: The Revision tag wanted to touch this file.
   12330         I think we are going to have some trouble with this; I'd like to take that out.
   12331 
   12332         * English.lproj/StringsNotToBeLocalized.txt: Updated.
   12333 
   12334 2004-08-12  Trey Matteson  <trey (a] apple.com>
   12335 
   12336         3761329 - query result links all dead in ingrammicro.com (sometimes)
   12337         3761328 - links in some docs dead when doc is loaded from WebArchive
   12338 
   12339         Nasty problem.  It turns out that these result pages are a parent frame with two child
   12340         frames.  One of the child frames is a 1 or 2 byte text document.  When the text child
   12341         is the last doc to complete, because we use a Text rep instead of an HTMLRep, it turns
   12342         out we never send [bridge end] from WebKit.  That mistake results in checkCompleted not
   12343         being called enough in the part, and we never realize the load is done.  WebCore does
   12344         not allow redirects to happen until the entire load is complete,  and  the links on this
   12345         results page are actually little pieces of JS that set location to a generated URL.  Since
   12346         redirects are not allowed these links all silently fail to do anything, and the doc never
   12347         achieves a completed state where they will work.
   12348 
   12349         Solution is to make sure we always call [bridge end] from the DataSource instead of only
   12350         the HTML rep doing it.
   12351 
   12352         Reviewed by Richard and Darin.
   12353 
   12354         * WebView.subproj/WebDataSource.m:
   12355         (-[WebDataSource _finishedLoading]):  Call [bridge end] here for all kinds of docs.
   12356         * WebView.subproj/WebHTMLRepresentation.m:
   12357         (-[WebHTMLRepresentation finishedLoadingWithDataSource:]):  Don't call is just for HTMLReps.
   12358 
   12359 2004-08-12  Richard Williamson   <rjw (a] apple.com>
   12360 
   12361         Bring npruntime.h and friends closer to compliance with
   12362         latest spec.
   12363 
   12364         Reviewed by Maciej.
   12365 
   12366         * Plugins.subproj/npapi.h:
   12367         * Plugins.subproj/npfunctions.h:
   12368         * Plugins.subproj/npruntime.h:
   12369         (_NPString::):
   12370         (_NPString::_NPVariant::):
   12371         * copy-webcore-files-to-webkit:
   12372 
   12373 2004-08-12  Chris Blumenberg  <cblu (a] apple.com>
   12374 
   12375 	Fixed: <rdar://problem/3761097> should be able to option-drag selection so HTML can be copied within a page
   12376 
   12377         Reviewed by rjw.
   12378 
   12379         * WebView.subproj/WebHTMLView.m:
   12380         (-[WebHTMLView _isMoveDrag]): new, take into account the option key
   12381         (-[WebHTMLView draggingUpdatedWithDraggingInfo:actionMask:]): call _isMoveDrag
   12382         (-[WebHTMLView concludeDragForDraggingInfo:actionMask:]): call _isMoveDrag
   12383 
   12384 2004-08-12  Richard Williamson   <rjw (a] apple.com>
   12385 
   12386         Quick fix for 3760903.  The real fix is described in 3760920.  Needed
   12387         by Java plugin guys so they can be unblocked for feature freeze.
   12388 		
   12389         Reviewed by Chris.
   12390 
   12391         * WebView.subproj/WebFrame.m:
   12392         (-[WebFrame _reloadForPluginChanges]):
   12393         * WebView.subproj/WebHTMLView.m:
   12394         (-[WebHTMLView addSubview:]):
   12395 
   12396 2004-08-12  Chris Blumenberg  <cblu (a] apple.com>
   12397 
   12398 	Fixed: <rdar://problem/3760898> error pages in subframes attempt to load appledata URLs when reloaded
   12399 
   12400         Reviewed by darin.
   12401 
   12402         * WebView.subproj/WebFrame.m:
   12403         (-[WebFrame _createItem:]): when setting the original URL of the history item, use the unreachable URL
   12404 
   12405 === Safari-156 ===
   12406 
   12407 2004-08-11  Adele Amchan  <adele (a] apple.com>
   12408 
   12409         Reviewed by me, bug fix by Darin.
   12410 
   12411         - fixed <rdar://problem/3736477> Pages don't load if hard drive is named with non-ASCII Symbol
   12412 
   12413         * Plugins.subproj/WebBaseNetscapePluginStream.m:
   12414         (-[WebBaseNetscapePluginStream startStreamWithURL:expectedContentLength:lastModifiedDate:MIMEType:]):
   12415         Use UTF8String instead of cString to convert the MIME type to a C string. Safer, since it can't
   12416         ever fail due to encoding problems even though this string should always be ASCII.
   12417         (-[WebBaseNetscapePluginStream destroyStream]): Use stringWithUTF8String to convert the path name
   12418         to an NSString, since stringWithCString is deprecated (doesn't really matter since the path is always
   12419         all ASCII). Fix the bug by calling fileSystemRepresentation on the NSString to turn it into a C
   12420         string form. Even though the POSIX path can't have any non-ASCII characters in it, the Carbon path
   12421         can, so we need to use this instead of cString which can fail depending on characters and encoding.
   12422 
   12423 2004-08-09  Maciej Stachowiak  <mjs (a] apple.com>
   12424 
   12425         Reviewed by Trey.
   12426 
   12427 	WebKit part of:
   12428 
   12429 	- made basic marked text highlighting work to complete basic level of <rdar://problem/3704359> input method support not yet implemented for HTML editing
   12430 
   12431         * WebView.subproj/WebHTMLView.m:
   12432         (-[WebHTMLView markedRange]): Use new bridge calls instead of internal marked range storage.
   12433         (-[WebHTMLView hasMarkedText]): Likewise.
   12434         (-[WebHTMLView unmarkText]): Likewise.
   12435         (-[WebHTMLView _selectMarkedText]): Likewise.
   12436         (-[WebHTMLView _selectRangeInMarkedText:]): Likewise.
   12437         (-[WebHTMLView _selectionIsInsideMarkedText]): Likewise.
   12438         (-[WebHTMLView _updateSelectionForInputManager]): Likewise.
   12439         (-[WebHTMLView setMarkedText:selectedRange:]): Use direct bridge call instead
   12440 	of private _selectMarkedDOMRange: method, which would now be trivial.
   12441         * WebView.subproj/WebHTMLViewInternal.h: Remove unneeded
   12442 
   12443 2004-08-10  Darin Adler  <darin (a] apple.com>
   12444 
   12445         Reviewed by Ken.
   12446 
   12447         - change name of WebMakeCollectable to WebNSRetainCFRelease so it fits into the
   12448           "NS and CF retain counts are separate" mental model, rather than the "think about
   12449           how garbage collection works" one
   12450 
   12451         * Misc.subproj/WebKitNSStringExtras.m: (+[NSString _web_encodingForResource:]): Rename.
   12452         * Misc.subproj/WebNSObjectExtras.h: (WebNSRetainCFRelease): Ditto.
   12453         * Misc.subproj/WebNSURLExtras.m:
   12454         (+[NSURL _web_URLWithData:relativeToURL:]): Ditto.
   12455         (-[NSURL _web_URLWithLowercasedScheme]): Ditto.
   12456 
   12457 2004-08-09  Trey Matteson  <trey (a] apple.com>
   12458 
   12459 	3756599 - REGRESSION: hit assertion in KWQPageState invalidate
   12460 
   12461 	By inspection I found a flaw in the recently added logic, although
   12462 	I have no steps to repro.  My theoretical explanation is that we would
   12463 	get two errors and go through _receivedMainResourceError: twice, which
   12464 	would cause the pageState to be invalidated twice, which is the only
   12465 	way I can see to hit the assert.
   12466 
   12467         Reviewed by Darin
   12468 
   12469         * WebView.subproj/WebFrame.m:
   12470         (-[WebFrame _receivedMainResourceError:]):  Clear the pageState out
   12471 	of the history item after it's been invalidated by WebCore.
   12472 
   12473 2004-08-09  Richard Williamson   <rjw (a] apple.com>
   12474 
   12475         Inspired by Trey we have a much better approach for conditionally
   12476         linking Quart.framework.  Instead of multiple targets we use 
   12477         `` to invoke some inline script to extend COMMON_LDFLAGS as
   12478         necessary.  Thanks Trey!
   12479         
   12480         Reviewed by Trey.
   12481 
   12482         * WebKit.pbproj/project.pbxproj:
   12483 
   12484 2004-08-09  Trey Matteson  <trey (a] apple.com>
   12485 
   12486 	Hookup UI for "Continuous Spelling" menu item.
   12487 
   12488         Reviewed by Richard.
   12489 
   12490         * WebView.subproj/WebView.m:
   12491         (-[WebView validateUserInterfaceItem:]):  Enable and check the
   12492 	menu item to reflect our state.
   12493         (-[WebView toggleContinuousSpellChecking:]):  Change type to
   12494 	IBAction, just cosmetic.
   12495         * WebView.subproj/WebViewPrivate.h:
   12496 
   12497 2004-08-08  Trey Matteson  <trey (a] apple.com>
   12498 
   12499 	3745023 - Safari crashes trying to access anchor while downloading
   12500 
   12501 	I bet this is behind a few other crashers as well.  In this bug the start of the
   12502 	download leaves a KWQPageState hanging around, and when that is freed it damages
   12503 	the part and view.  If you're still using that page, you're dead.
   12504 
   12505 	The fix is to properly invalidate the PageState when we receive an error before
   12506 	reaching WebFrameCommitted state.  Normally this happens when a page is reheated
   12507 	from the PageState, but in this case we never manage to leave the page to begin
   12508 	with, although we've already created the PageState.
   12509 
   12510 	Other errors besides the synthetic one download generates would have caused similar
   12511 	crashing.  Another example would be clicking on a second link before the load
   12512 	caused by clicking on the first link reached committed state.
   12513 
   12514         Reviewed by Richard
   12515 
   12516         * WebView.subproj/WebDataSource.m:
   12517         (-[WebDataSource _receivedMainResourceError:complete:]):  Let the frame do the
   12518 	main work (since it has access to the pageCache state).  Also renamed to make
   12519 	it clear that this is about an error for the main resource.
   12520         * WebView.subproj/WebDataSourcePrivate.h:
   12521         * WebView.subproj/WebFrame.m:
   12522         (-[WebFrame _receivedMainResourceError:]):  Let WC know about the failure, as
   12523 	the DataSource used to, but now pass the pageCache state along too.
   12524         * WebView.subproj/WebFramePrivate.h:
   12525         * WebView.subproj/WebMainResourceClient.m:
   12526         (-[WebMainResourceClient receivedError:]):  Call renamed method.
   12527         (-[WebMainResourceClient cancelWithError:]):  Ditto.
   12528 
   12529 2004-08-08  Vicki Murley  <vicki (a] apple.com>
   12530 
   12531         Reviewed by vicki (changes by rjw)
   12532  
   12533 	- make "weak" linking with Quartz work with buildit
   12534 
   12535         * WebKit.pbproj/project.pbxproj: 
   12536 
   12537 2004-08-06  Ken Kocienda  <kocienda (a] apple.com>
   12538 
   12539         Reviewed by Maciej
   12540 
   12541         Finish off spellchecking support to HTML editing. Includes work to
   12542         enable continuous spellchecking.
   12543 
   12544         * WebCoreSupport.subproj/WebBridge.m:
   12545         (-[WebBridge isContinuousSpellCheckingEnabled]): Simple bridge method.
   12546         * WebCoreSupport.subproj/WebTextRenderer.m:
   12547         (-[WebTextRenderer drawLineForMisspelling:withWidth:]): New method to add
   12548         AppKit-style misspelling underline.
   12549 
   12550 === Safari-155 ===
   12551 
   12552 2004-08-05  Darin Adler  <darin (a] apple.com>
   12553 
   12554         * WebView.subproj/WebHTMLView.m: Added a list of methods that NSTextView implements that we don't.
   12555         All inside #if 0.
   12556 
   12557 2004-08-05  Chris Blumenberg  <cblu (a] apple.com>
   12558 
   12559         Fixed unnecessary import of NSURLFileTypeMappings.
   12560 
   12561         * WebView.subproj/WebMainResourceClient.m:
   12562 
   12563 2004-08-05  Richard Williamson   <rjw (a] apple.com>
   12564 
   12565         Make builds conditionally include -framework Quartz.
   12566 		
   12567         Reviewed by Chris.
   12568 
   12569         * WebKit.pbproj/project.pbxproj:
   12570 
   12571 2004-08-04  Darin Adler  <darin (a] apple.com>
   12572 
   12573         - fixed broken Deployment build
   12574 
   12575         * Carbon.subproj/HIWebView.m: (Click):
   12576         Remove code that checks err variable before setting it.
   12577 
   12578 2004-08-03  Richard Williamson   <rjw (a] apple.com>
   12579 
   12580         First cut at dirt simple PDF support.  This feature
   12581         depends on Quartz.framework (parent of PDFKit), which only exists
   12582         on Tiger.  So, we "weak" link against Quartz.
   12583 		
   12584         We do very basic PDF rendering.  Coming up are support for
   12585         "Find..." and linearized PDF (incremental).  Linearized PDF 
   12586         support will require API changes in PDFKit.
   12587 		
   12588         No UI is added to Safari, yet.
   12589 		
   12590         Reviewed by John.
   12591 
   12592         * WebKit.pbproj/project.pbxproj:
   12593         * WebView.subproj/WebDataSource.m:
   12594         (+[WebDataSource _repTypesAllowImageTypeOmission:]):
   12595         * WebView.subproj/WebFrameView.m:
   12596         (+[WebFrameView _viewTypesAllowImageTypeOmission:]):
   12597         * WebView.subproj/WebPDFRepresentation.h: Added.
   12598         * WebView.subproj/WebPDFRepresentation.m: Added.
   12599         (-[WebPDFRepresentation finishedLoadingWithDataSource:]):
   12600         (-[WebPDFRepresentation canProvideDocumentSource]):
   12601         (-[WebPDFRepresentation documentSource]):
   12602         (-[WebPDFRepresentation title]):
   12603         * WebView.subproj/WebPDFView.h: Added.
   12604         * WebView.subproj/WebPDFView.m: Added.
   12605         (-[WebPDFView initWithFrame:]):
   12606         (-[WebPDFView setDataSource:]):
   12607         (-[WebPDFView dataSourceUpdated:]):
   12608         (-[WebPDFView setNeedsLayout:]):
   12609         (-[WebPDFView layout]):
   12610         (-[WebPDFView viewWillMoveToHostWindow:]):
   12611         (-[WebPDFView viewDidMoveToHostWindow]):
   12612 
   12613         Copied fix from Jaguar carbon/cocoa work.
   12614 		
   12615         Reviewed by Darin (Jaguar version)
   12616 
   12617         * Carbon.subproj/CarbonWindowAdapter.h:
   12618         * Carbon.subproj/CarbonWindowAdapter.m:
   12619         (-[CarbonWindowAdapter relinquishFocus]):
   12620         * Carbon.subproj/HIWebView.m:
   12621         (Click):
   12622         (OwningWindowChanged):
   12623         (WindowHandler):
   12624 
   12625 2004-08-03  David Hyatt  <hyatt (a] apple.com>
   12626 
   12627 	Add the text/xsl MIME type as one that can be displayed.
   12628 	
   12629         Reviewed by john
   12630 
   12631         * WebView.subproj/WebDataSource.m:
   12632         (+[WebDataSource _repTypesAllowImageTypeOmission:]):
   12633         * WebView.subproj/WebFrameView.m:
   12634         (+[WebFrameView _viewTypesAllowImageTypeOmission:]):
   12635 
   12636 2004-08-03  Maciej Stachowiak  <mjs (a] apple.com>
   12637 
   12638         Reviewed by Ken.
   12639 
   12640 	- implemented enough of the NSTextInput protocol and added the
   12641 	proper calls to NSInputManager to allow input methods to
   12642 	work. However, the text is not marked yet.
   12643 
   12644         * WebView.subproj/WebHTMLViewInternal.h: Added new fields to track
   12645 	marked range.
   12646         * WebView.subproj/WebHTMLView.m:
   12647         (-[WebHTMLView markedRange]): Implemented
   12648         (-[WebHTMLView conversationIdentifier]): Implemented
   12649         (-[WebHTMLView hasMarkedText]): Implemented
   12650         (-[WebHTMLView unmarkText]): Implemented
   12651         (-[WebHTMLView setMarkedText:selectedRange:]): Implemented - does
   12652 	not yet handle attributes in attributed strings
   12653         (-[WebHTMLView insertText:]): Modified to handle replacing or abandoning
   12654 	the marked text when set.
   12655         (-[WebHTMLView _selectMarkedText]): new helper method, self-explanatory
   12656         (-[WebHTMLView _setMarkedDOMRange:]): hitto.
   12657         (-[WebHTMLView _selectRangeInMarkedText:]): ditto
   12658         (-[WebHTMLView _discardMarkedText]): ditto
   12659         (-[WebHTMLView _selectionIsInsideMarkedText]): ditto
   12660         (-[WebHTMLView _updateSelectionForInputManager]): ditto
   12661 
   12662 	- did a bit of refactoring while I was in here.
   12663 
   12664         * WebView.subproj/WebHTMLView.m:
   12665         (-[WebHTMLView _shouldReplaceSelectionWithText:givenAction:]): added this new
   12666 	helper method to simplify the common case of calling the shouldInsertText: delegate
   12667         (-[WebHTMLView pasteAsPlainText:]): use it
   12668         (-[WebHTMLView insertTab:]): ditto
   12669         (-[WebHTMLView insertNewline:]): ditto
   12670         (-[WebHTMLView _changeWordCaseWithSelector:]): ditto
   12671         (-[WebHTMLView _changeSpellingToWord:]): ditto
   12672         (-[WebHTMLView _selectionChanged]): ditto
   12673 
   12674 2004-08-03  Chris Blumenberg  <cblu (a] apple.com>
   12675 
   12676 	Fixed: <rdar://problem/3572737> Images not resizing at www.bmx-test.com (spoof nofix)
   12677 
   12678         Reviewed by darin.
   12679 
   12680         * WebCoreSupport.subproj/WebImageRendererFactory.m:
   12681         (-[WebImageRendererFactory supportedMIMETypes]): hard code image/pjpeg to the list of image mime types that we can handle
   12682 
   12683 2004-08-03  Darin Adler  <darin (a] apple.com>
   12684 
   12685         Reviewed by Ken.
   12686 
   12687         - fixed <rdar://problem/3740937> ER: A way to turn a DOMRange into text (equivalent of -innerText)
   12688 
   12689         * DOM.subproj/DOMPrivate.h: Added.
   12690         * WebKit.pbproj/project.pbxproj: Added DOMPrivate.h.
   12691         * copy-webcore-files-to-webkit: Added DOMPrivate.h.
   12692 
   12693 2004-08-02  John Sullivan  <sullivan (a] apple.com>
   12694 
   12695         Reviewed by Darin.
   12696 
   12697         WebKit part of fix for <rdar://problem/3631868> NSToolbar adoption: 
   12698         Tab key should cycle around toolbar and page content
   12699 
   12700         * WebView.subproj/WebHTMLView.m:
   12701         removed overrides of nextKeyView and previousKeyView
   12702         (-[WebHTMLView nextValidKeyView]):
   12703         call super only if we can't move the focus within the frame hierarchy
   12704         (-[WebHTMLView previousValidKeyView]):
   12705         ditto
   12706         * WebView.subproj/WebHTMLViewInternal.h:
   12707         removed nextKeyViewAccessShouldMoveFocus ivar
   12708 
   12709 2004-08-02  Ken Kocienda  <kocienda (a] apple.com>
   12710 
   12711         Reviewed by John
   12712 
   12713         Update name of firstResponderIsSelfOrDescendantView, adding _web_ prefix to this SPI call.
   12714         
   12715         Do some work to make caret blinking in newly-created editable WebView's that are 
   12716         similar in structure to Blot more "automatic".
   12717 
   12718         * Misc.subproj/WebNSViewExtras.h: Change name of firstResponderIsSelfOrDescendantView. Add _web_ prefix.
   12719         * Misc.subproj/WebNSViewExtras.m:
   12720         (-[NSView _web_firstResponderIsSelfOrDescendantView]): Name change.
   12721         (-[NSView _web_firstResponderCausesFocusDisplay]): Adds an additional check for whether the view's
   12722         is first responder. This helps to make the focus setting in viewDidMoveToWindow work right.
   12723         * WebView.subproj/WebHTMLView.m:
   12724         (-[WebHTMLView updateFocusDisplay]): Use _web_firstResponderCausesFocusDisplay now instead of 
   12725         firstResponderIsSelfOrDescendantView.
   12726         (-[WebHTMLView viewDidMoveToWindow]): Schedule call to updateFocusDisplay for the next crank of the
   12727         run loop. The reason is that placing the caret in the just-installed view requires the HTML/XML 
   12728         document to be available on the WebCore side, but it is not at the time this code is running. 
   12729         However, it will be there on the next crank of the run loop. Doing this helps to make a 
   12730         blinking caret appear in a new, empty window "automatic".
   12731         (-[WebHTMLView performKeyEquivalent:]):  _web_firstResponderIsSelfOrDescendantView name change.
   12732         * WebView.subproj/WebView.m:
   12733         (-[WebView _performResponderOperation:with:]): _web_firstResponderIsSelfOrDescendantView name change.
   12734 
   12735 2004-07-29  Maciej Stachowiak  <mjs (a] apple.com>
   12736 
   12737         Reviewed by John.
   12738 
   12739 	Added stubbed-out versions of all the NSTextInput protocol
   12740 	methods, and put comments in places where we will need to call the
   12741 	input manager to make input methods work 100%.
   12742 	
   12743         * WebCoreSupport.subproj/WebBridge.m:
   12744         (-[WebBridge respondToChangedSelection]):
   12745         * WebView.subproj/WebHTMLView.m:
   12746         (-[WebHTMLView mouseDown:]):
   12747         (-[WebHTMLView mouseDragged:]):
   12748         (-[WebHTMLView mouseUp:]):
   12749         (-[WebHTMLView _interceptEditingKeyEvent:]):
   12750         (-[WebHTMLView keyDown:]):
   12751         (-[WebHTMLView _selectionChanged]):
   12752         (-[WebHTMLView _delegateDragSourceActionMask]):
   12753         (-[WebHTMLView validAttributesForMarkedText]):
   12754         (-[WebHTMLView characterIndexForPoint:]):
   12755         (-[WebHTMLView firstRectForCharacterRange:]):
   12756         (-[WebHTMLView selectedRange]):
   12757         (-[WebHTMLView markedRange]):
   12758         (-[WebHTMLView attributedSubstringFromRange:]):
   12759         (-[WebHTMLView conversationIdentifier]):
   12760         (-[WebHTMLView hasMarkedText]):
   12761         (-[WebHTMLView unmarkText]):
   12762         (-[WebHTMLView setMarkedText:selectedRange:]):
   12763         (-[WebHTMLView doCommandBySelector:]):
   12764         (-[WebHTMLView insertText:]):
   12765         * WebView.subproj/WebHTMLViewInternal.h:
   12766         * WebView.subproj/WebView.m:
   12767 
   12768 === Safari-154 ===
   12769 
   12770 2004-07-29  Darin Adler  <darin (a] apple.com>
   12771 
   12772         Reviewed by Ken.
   12773 
   12774         - fill in some unimplemented methods
   12775 
   12776         * WebView.subproj/WebHTMLView.m:
   12777         (-[WebHTMLView moveToBeginningOfDocument:]): Implement, using new document granularity.
   12778         (-[WebHTMLView moveToBeginningOfDocumentAndModifySelection:]): Ditto.
   12779         (-[WebHTMLView moveToBeginningOfParagraph:]): Implement, even though the underlying WebCore
   12780         code is not yet implemented.
   12781         (-[WebHTMLView moveToBeginningOfParagraphAndModifySelection:]): Ditto.
   12782         (-[WebHTMLView moveToEndOfDocument:]): More of the same.
   12783         (-[WebHTMLView moveToEndOfDocumentAndModifySelection:]): Ditto.
   12784         (-[WebHTMLView moveToEndOfParagraph:]): More of the same.
   12785         (-[WebHTMLView moveToEndOfParagraphAndModifySelection:]): Ditto.
   12786         (-[WebHTMLView pageDown:]): Added comment describing desired behavior.
   12787         (-[WebHTMLView pageUp:]): Ditto.
   12788         (-[WebHTMLView copyFont:]): Ditto.
   12789         (-[WebHTMLView pasteFont:]): Ditto.
   12790         (-[WebHTMLView changeAttributes:]): Ditto.
   12791         (-[WebHTMLView indent:]): Ditto.
   12792 
   12793 2004-07-28  Chris Blumenberg  <cblu (a] apple.com>
   12794 
   12795 	Fixed: <rdar://problem/3737864> Can not download image from web by using drag and drop
   12796 
   12797         Reviewed by john.
   12798 
   12799         * Misc.subproj/WebNSPasteboardExtras.m:
   12800         (-[NSPasteboard _web_declareAndWriteDragImage:URL:title:archive:source:]): On Tiger, to use NSFilesPromisePboardType with other pasteboard types, set the file types of the promise on the pasteboard as a property list instead of mucking with the NSFilePromiseDragSource class
   12801 
   12802 2004-07-28  Maciej Stachowiak  <mjs (a] apple.com>
   12803 
   12804         Reviewed by John.
   12805 
   12806 	- avoid triggering an assertion when using dead keys (like option-e)
   12807 
   12808         * WebView.subproj/WebHTMLView.m:
   12809         (-[WebHTMLView insertText:]): Don't pass zero-length strings to
   12810 	WebCore. Dead-key input seems to insert empty strings as a side
   12811 	effect.
   12812 
   12813 2004-07-28  Trey Matteson  <trey (a] apple.com>
   12814 
   12815 	Spellchecking, Part I.  Basic spellcheck is working.  Spelling panel is hooked up.
   12816 
   12817 	At this point, no special marking of misspellings, no grammar check, no context
   12818 	menu integration, no "check continually" mode.
   12819 
   12820         Reviewed by Ken.
   12821 
   12822         * WebCoreSupport.subproj/WebBridge.m:
   12823         (-[WebBridge spellCheckerDocumentTag]):  Typical bridge glue.
   12824         * WebView.subproj/WebHTMLView.m:
   12825         (-[WebHTMLView validateUserInterfaceItem:]):  Validate various spelling actions.
   12826         (-[WebHTMLView checkSpelling:]):  Call WC for real work, update panel.
   12827         (-[WebHTMLView showGuessPanel:]):  Show panel, call WC for real work.
   12828         (-[WebHTMLView _changeSpellingToWord:]):  Apply correction to our doc.
   12829         (-[WebHTMLView changeSpelling:]):  Simple pass through to above method.
   12830         (-[WebHTMLView ignoreSpelling:]):  Tell checker to ignore the word.
   12831         * WebView.subproj/WebView.m:
   12832         (-[WebView _close]):  Call AK's closeSpellDocumentWithTag: for proper cleanup.
   12833 
   12834 2004-07-27  John Sullivan  <sullivan (a] apple.com>
   12835 
   12836         Reviewed by Trey.
   12837         
   12838         WebKit part of fix for <rdar://problem/3622268> Reload failed pages when a 
   12839         network problem is corrected, inc. using Network Diagnostics
   12840 
   12841         * WebView.subproj/WebFrame.m:
   12842         (-[WebFrame reload]):
   12843         This method did not handle unreachableURLs at all. The reason Safari's Reload
   12844         did work with unreachableURLs was that Safari does "reloadObeyingLocationField"
   12845         which never actually calls -[WebFrame reload]. Fixed by creating a fresh
   12846         request for the previously-unreachable URL.
   12847 
   12848 2004-07-26  Richard Williamson   <rjw (a] apple.com>
   12849 
   12850         Fixed 3739737.  When setting the focus to a NSView, set the focus
   12851         carbon focus to kControlIndicatorPart.  kControlIndicatorPart is a
   12852         placeholder value for use to indicate that Cocoa has the focus.  
   12853 	
   12854         Reviewed by Ken.
   12855 
   12856         * Carbon.subproj/CarbonWindowAdapter.m:
   12857         (-[CarbonWindowAdapter makeFirstResponder:]):
   12858         * Carbon.subproj/HIWebView.m:
   12859         (Click):
   12860         (SetFocusPart):
   12861 
   12862 2004-07-26  Chris Blumenberg  <cblu (a] apple.com>
   12863 
   12864 	Fixed: <rdar://problem/3689734> dragging to an editable WebView does not scroll document
   12865 
   12866         Reviewed by rjw.
   12867 
   12868         * WebView.subproj/WebView.m:
   12869         (-[WebView documentViewAtWindowPoint:]): new, factored from draggingDocumentViewAtWindowPoint:
   12870         (-[WebView _draggingDocumentViewAtWindowPoint:]): call documentViewAtWindowPoint:
   12871         (-[WebView _autoscrollForDraggingInfo:timeDelta:]): forward call to the document view
   12872         (-[WebView _shouldAutoscrollForDraggingInfo:]): ditto
   12873 
   12874 === Safari-153 ===
   12875 
   12876 2004-07-23  Ken Kocienda  <kocienda (a] apple.com>
   12877 
   12878         Reviewed by Trey
   12879 
   12880         Fix for this bug:
   12881         
   12882         <rdar://problem/3738920> Caret blinks in inactive window
   12883 
   12884         As part of the fix, I cleaned up the way we handle special drawing that needs
   12885         to be done in the HTML view that is first responder in the key window (e.g the
   12886         drawing of text selection highlight and caret blinking).
   12887 
   12888         * WebView.subproj/WebHTMLView.m:
   12889         (-[WebHTMLView updateFocusDisplay]): New method that centralizes the changes
   12890         we need to make when the first responder-ness of the view or key-ness of the
   12891         window changes.
   12892         (-[WebHTMLView viewDidMoveToWindow]): Call new updateFocusDisplay helper.
   12893         (-[WebHTMLView windowDidBecomeKey:]): Ditto.
   12894         (-[WebHTMLView windowDidResignKey:]): Ditto.
   12895         (-[WebHTMLView becomeFirstResponder]): Ditto.
   12896         (-[WebHTMLView resignFirstResponder]): Ditto.
   12897 
   12898 2004-07-22  Darin Adler  <darin (a] apple.com>
   12899 
   12900         * Plugins.subproj/npruntime.h: Update with new version from newer JavaScriptCore.
   12901 
   12902 2004-07-21  Ken Kocienda  <kocienda (a] apple.com>
   12903 
   12904         Reviewed by Trey
   12905 
   12906         * WebCoreSupport.subproj/WebBridge.m: Remove interceptEditingKeyEvent
   12907         bridge call over. This method of handling editing key events is now
   12908         obsolete.
   12909         * WebView.subproj/WebHTMLView.m:
   12910         (-[WebHTMLView performKeyEquivalent:]): Send key event over to the 
   12911         DOM if this view is or contains the first responder. This now
   12912         happens unconditionally.
   12913         (-[WebHTMLView keyDown:]): Send key event to the DOM, then see if
   12914         the web view wants to interpret it an an editing key event. This
   12915         is the new place to intercept key events for editing.
   12916 
   12917 2004-07-21  Ken Kocienda  <kocienda (a] apple.com>
   12918 
   12919         Reviewed by John
   12920 
   12921         Add implementations for these methods. Formerly, they logged an error.
   12922 
   12923         * WebView.subproj/WebHTMLView.m:
   12924         (-[WebHTMLView moveToBeginningOfLine:]):
   12925         (-[WebHTMLView moveToBeginningOfLineAndModifySelection:]):
   12926         (-[WebHTMLView moveToEndOfLine:]):
   12927         (-[WebHTMLView moveToEndOfLineAndModifySelection:]):
   12928 
   12929 2004-07-21  Ken Kocienda  <kocienda (a] apple.com>
   12930 
   12931         Reviewed by John
   12932 
   12933         Added some more handlers for standard Cocoa key bindings. 
   12934         These are "secrets" of NSText, meaning they are not public API, but we choose to mimic.
   12935 
   12936         * WebView.subproj/WebHTMLView.m:
   12937         (-[WebHTMLView moveToBeginningOfDocumentAndModifySelection:]):
   12938         (-[WebHTMLView moveToBeginningOfLineAndModifySelection:]):
   12939         (-[WebHTMLView moveToBeginningOfParagraphAndModifySelection:]):
   12940         (-[WebHTMLView moveToEndOfDocumentAndModifySelection:]):
   12941         (-[WebHTMLView moveToEndOfLineAndModifySelection:]):
   12942         (-[WebHTMLView moveToEndOfParagraph:]):
   12943         (-[WebHTMLView moveToEndOfParagraphAndModifySelection:]):
   12944         * WebView.subproj/WebView.h: Add these declarations to the comment in the header listing
   12945         the responder-like methods we support.
   12946         * WebView.subproj/WebView.m:
   12947         (-[WebView moveToBeginningOfParagraphAndModifySelection:]):
   12948         (-[WebView moveToEndOfParagraphAndModifySelection:]):
   12949         (-[WebView moveToBeginningOfLineAndModifySelection:]):
   12950         (-[WebView moveToEndOfLineAndModifySelection:]):
   12951         (-[WebView moveToBeginningOfDocumentAndModifySelection:]):
   12952         (-[WebView moveToEndOfDocumentAndModifySelection:]):
   12953 
   12954 2004-07-20  Ken Kocienda  <kocienda (a] apple.com>
   12955 
   12956         Reviewed by Richard
   12957 
   12958         * Misc.subproj/WebNSEventExtras.h: Added helper that returns whether
   12959         a key event has a binding in the key binding manager.
   12960         * Misc.subproj/WebNSEventExtras.m: 
   12961         (-[NSEvent _web_keyBindingManagerHasBinding]): New helper mentioned above.
   12962         * Plugins.subproj/npruntime.h:
   12963         * WebView.subproj/WebHTMLView.m:
   12964         (-[WebHTMLView performKeyEquivalent:]): Add a check of whether the key event 
   12965         has a binding in the key binding manager. This works around the fact that
   12966         NSResponder's interpretKeyEvents does not return a value telling whether
   12967         or not the key was handled. This now makes it possible for us to trap
   12968         modified key events we know we can handle (like those command-key + arrow events 
   12969         used for text navigation), while letting all others pass.
   12970 
   12971 2004-07-20  Chris Blumenberg  <cblu (a] apple.com>
   12972 
   12973 	Fixed:
   12974 	<rdar://problem/3580589> REGRESSION (1.1-1.2): can't open a new window for an image that has not loaded
   12975 	<rdar://problem/3612691> Missing image icons (blue ?) lack context menu
   12976 
   12977         Reviewed by john.
   12978 
   12979         * WebView.subproj/WebDefaultContextMenuDelegate.m:
   12980         (-[WebDefaultUIDelegate webView:contextMenuItemsForElement:defaultMenuItems:]): if there is no image, but there is an image URL, provide image context menu items besides "Copy Image" 
   12981         * WebView.subproj/WebHTMLView.m:
   12982         (-[WebHTMLView _startDraggingImage:at:operation:event:sourceIsDHTML:DHTMLWroteData:]): don't drag an image with an actual image
   12983         (-[WebHTMLView _mayStartDragAtEventLocation:]): ditto
   12984 
   12985 2004-07-20  Maciej Stachowiak  <mjs (a] apple.com>
   12986 
   12987         Reviewed by Chris.
   12988 
   12989 	<rdar://problem/3721690> REGRESSION (125.7-148u) clicking on links at macosx.apple.com/Builds does not load new page in frame
   12990 	
   12991         * Plugins.subproj/npruntime.h:
   12992         * WebCoreSupport.subproj/WebBridge.m:
   12993         (-[WebBridge canTargetLoadInFrame:]): Don't apply the restrictions to frames
   12994 	that are in the same window (Mozilla does this too).
   12995 
   12996 2004-07-20  Richard Williamson   <rjw (a] apple.com>
   12997 
   12998 		Fix for 3728558.  Fixed the key event handling in the carbon/cocoa
   12999 		integration code.  This does not fix the arrow keys not working on
   13000 		initial focus problem also mentioned in the bug.
   13001 		
   13002 		Bumped the version of the NP function structures.
   13003 		
   13004         Reviewed by John.
   13005 
   13006         * Carbon.subproj/CarbonUtils.m:
   13007         (WebInitForCarbon):
   13008         (PoolCleaner):
   13009         * Carbon.subproj/HIWebView.m:
   13010         (OwningWindowChanged):
   13011         (WindowHandler):
   13012         * Plugins.subproj/npapi.h:
   13013 
   13014 2004-07-20  Trey Matteson  <trey (a] apple.com>
   13015 
   13016 	3733698	REGRESSION: sometimes dragging photos on homepage.mac.com leads to an assertion
   13017 
   13018 	Relax an assertion, as we ran into a valid case where it's not true.
   13019 
   13020         Reviewed by Chris.
   13021 
   13022         * WebView.subproj/WebHTMLView.m:
   13023         (-[WebHTMLView _startDraggingImage:at:operation:event:sourceIsDHTML:DHTMLWroteData:]):
   13024 	Removing this assert allows for the oddball case of a drag gesture that
   13025 	starts on one element, but then the element is no longer there when
   13026 	the drag is about to start.
   13027 
   13028 2004-07-20  Ken Kocienda  <kocienda (a] apple.com>
   13029 
   13030         Reviewed by Hyatt
   13031 
   13032         Fix for this bug:
   13033         
   13034         <rdar://problem/3707505> HTMLCompose: blinking cursor in both an address text field and the message body
   13035 
   13036         * WebView.subproj/WebHTMLView.m:
   13037         (-[WebHTMLView setCaretVisible:]): New helper. Calls over bridge to do the work.
   13038         (-[WebHTMLView windowDidBecomeKey:]): This function cannot just assume that self is first responder
   13039         (and do things like adjusting text background color and restoring focus rings). 
   13040         First-responder-ness needs to be checked first. Now it is.
   13041         (-[WebHTMLView windowDidResignKey:]): Ditto.
   13042         (-[WebHTMLView becomeFirstResponder]): Call new helper to make caret visible.
   13043         (-[WebHTMLView resignFirstResponder]): Call new helper to make caret invisible.
   13044 
   13045 2004-07-12  Richard Williamson   <rjw (a] apple.com>
   13046 
   13047         Fixed 3721917.  The RealPlayer plugin doesn't support the new 
   13048         NPPVpluginScriptableNPObject variable passed to NPP_GetValue and
   13049         incorrectly returns NPERR_NO_ERROR.  We interpret this to the
   13050         mean the variable has been set.  The variable has not been set 
   13051         and will consequently be uninitialized.
   13052 
   13053         * Plugins.subproj/WebBaseNetscapePluginView.m:
   13054         (-[WebBaseNetscapePluginView pluginScriptableObject]):
   13055 
   13056 2004-07-19  Ken Kocienda  <kocienda (a] apple.com>
   13057 
   13058         Reviewed by Richard
   13059 
   13060         Fix for this bug:
   13061         
   13062         <rdar://problem/3707504> HTMLCompose: key events are stolen by Web(HTML)View
   13063 
   13064         * Misc.subproj/WebNSViewExtras.h:
   13065         * Misc.subproj/WebNSViewExtras.m:
   13066         (-[NSView firstResponderIsSelfOrDescendantView]): New helper to 
   13067         (-[WebHTMLView performKeyEquivalent:]): Do not pass key events through to the editing
   13068         key handler unless the WebHTMLView is first responder or contains the first responder.
   13069         This prevents the "stealing" of key events mentioned in the bug.
   13070         * WebView.subproj/WebView.m:
   13071         (-[WebView _performResponderOperation:with:]): Uses the new firstResponderIsSelfOrDescendantView
   13072         helper. The code I replaced used the same logic as the new helper.
   13073 
   13074 === Safari-152 ===
   13075 
   13076 2004-07-12  Maciej Stachowiak  <mjs (a] apple.com>
   13077 
   13078         Reviewed by Kevin.
   13079 
   13080 	<rdar://problem/3673988>: (REGRESSION(141-144): connection assertion failure at http://traffic.511.org/sfgate)
   13081 	
   13082         * WebView.subproj/WebBaseResourceHandleDelegate.m:
   13083         (-[WebBaseResourceHandleDelegate connectionDidFinishLoading:]):
   13084 	Don't check connection consistency if this load got cancelled
   13085 	while finishing, because in this case we have cleared the
   13086 	connection field already. This can happen when a redirect fires
   13087 	from an onload handler.
   13088 
   13089 2004-07-12  Maciej Stachowiak  <mjs (a] apple.com>
   13090 
   13091         Reviewed by John.
   13092 
   13093 	<rdar://problem/3632570>: (REGRESSION: SocialText.net wiki keeps asking for auth, even though pages load)
   13094 
   13095         * Misc.subproj/WebIconLoader.m:
   13096         (-[WebIconLoader didReceiveAuthenticationChallenge:]): Ignore the challenge - we don't
   13097 	want an auth panel for favicons.
   13098         (-[WebIconLoader didCancelAuthenticationChallenge:]): Ignore cancel, since we are ignoring
   13099 	the challenge.
   13100 
   13101 2004-07-09  Chris Blumenberg  <cblu (a] apple.com>
   13102 	
   13103 	Allowed my change for 3715785 to compile on Jaguar.
   13104 
   13105         Reviewed by kocienda.
   13106 
   13107         * WebCoreSupport.subproj/WebBridge.m:
   13108         (-[WebBridge canTargetLoadInFrame:]): don't use the DOM API since it doesn't exist on Jaguar, instead call the new domain method on the bridge
   13109 
   13110 2004-07-09  Ken Kocienda  <kocienda (a] apple.com>
   13111 
   13112         Reviewed by John
   13113 
   13114         * Plugins.subproj/npruntime.h: Updated license to lawyer-approved 
   13115         joint Apple-Mozilla BSD-style license.
   13116 
   13117 2004-07-08  Chris Blumenberg  <cblu (a] apple.com>
   13118 
   13119 	Fixed: <rdar://problem/3720728> REGRESSION (125.8-146): Crash moving mouse over plugin at manray-photo.com
   13120 	
   13121         Reviewed by john.
   13122 
   13123         * Plugins.subproj/WebBaseNetscapePluginView.m:
   13124         (-[WebBaseNetscapePluginView pluginScriptableObject]): don't call NPP_GetValue unless the plug-in implements it
   13125 
   13126 2004-07-08  Chris Blumenberg  <cblu (a] apple.com>
   13127 
   13128 	Fixed: <rdar://problem/3706296> VIP: ifilm.com crashing reproducibly with Safari
   13129 
   13130         Reviewed by kocienda.
   13131 
   13132         * Plugins.subproj/WebNetscapePluginPackage.m:
   13133         (-[WebNetscapePluginPackage launchRealPlayer]): don't release a NULL appURL
   13134 
   13135 2004-07-08  Chris Blumenberg  <cblu (a] apple.com>
   13136 
   13137 	Fixed: <rdar://problem/3650140> reproducible assertion failure going to plugin page with JavaScript disabled
   13138 
   13139         Reviewed by john.
   13140 
   13141         * Plugins.subproj/WebBaseNetscapePluginView.m:
   13142         (-[WebBaseNetscapePluginView evaluateJavaScriptPluginRequest:]): don't call NPP_NewStream and other stream methods if there is no JS result to deliver. This is what Mozilla does.
   13143         (-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:]): Return NPERR_GENERIC_ERROR if JS is disabled. This is what Mozilla does.
   13144 
   13145 === Safari-151 ===
   13146 
   13147 2004-07-07  Trey Matteson  <trey (a] apple.com>
   13148 
   13149 	3719051 - Safari doesn't update form inputs when a page was refreshed by javascript window.location
   13150 	... and at least 5 other cases in Radar
   13151 
   13152 	Very similar problem to the Harvard PIN bug.  We need to be sure
   13153 	to not carry any state over when we are processing a client
   13154 	redirect, which reuses the same WebHistoryItem.
   13155 
   13156         Reviewed by John.
   13157 
   13158         * WebView.subproj/WebFrame.m:
   13159         (-[WebFrame _transitionToCommitted:]):  Comment
   13160         (-[WebFrame _opened]):  Clear form and scroll state on client redirect.
   13161 
   13162 2004-07-06  Chris Blumenberg  <cblu (a] apple.com>
   13163 
   13164 	Fixed: <rdar://problem/3715785> multiple frame injection vulnerability reported by Secunia, affects almost all browsers
   13165 	
   13166         Reviewed by john, trey, kocienda.
   13167 
   13168         * WebCoreSupport.subproj/WebBridge.m:
   13169         (-[WebBridge canTargetLoadInFrame:]): new method, return YES if the requesting frame is local, the target frame is an entire window or if the domain of the parent of the targeted frame equals this domain
   13170         (-[WebBridge loadURL:referrer:reload:userGesture:target:triggeringEvent:form:formValues:]): call canTargetLoadInFrame: to make sure we can load the request
   13171         (-[WebBridge postWithURL:referrer:target:data:contentType:triggeringEvent:form:formValues:]): ditto
   13172 
   13173 2004-07-06  John Sullivan  <sullivan (a] apple.com>
   13174 
   13175         Reviewed by Trey.
   13176 
   13177         - fixed <rdar://problem/3717147> folder icon used for error page in back/forward 
   13178         menu when iTunes is not installed
   13179 
   13180         * WebView.subproj/WebFrame.m:
   13181         (-[WebFrame _transitionToCommitted:]):
   13182         When displaying the error page for an unreachable URL, leave the requested URL
   13183         in the WebHistoryItem; don't clobber it with a bogus one that represents the
   13184         error page. This not only avoids the wrong-icon problem, but should also help
   13185         in cases where an unreachable URL becomes reachable later on.
   13186 
   13187 2004-07-06  Trey Matteson  <trey (a] apple.com>
   13188 
   13189 	3716053 - www.theage.com.au has extra back/forward items due to ads
   13190 
   13191 	The real change was in WebKit.  Here was are just renaming a method and folding
   13192 	all the WebFrameLoadTypeOnLoadEvent uses to be WebFrameLoadTypeInternal, since there
   13193 	was never any difference anyway.
   13194 
   13195         Reviewed by Richard
   13196 
   13197         * WebCoreSupport.subproj/WebBridge.m:
   13198         (-[WebBridge loadURL:referrer:reload:userGesture:target:triggeringEvent:form:formValues:]):  rename part of the method.
   13199         * WebView.subproj/WebFrame.m:  Nuke WebFrameLoadTypeOnLoadEvent.
   13200         (-[WebFrame _transitionToCommitted:]):
   13201         (-[WebFrame _checkLoadCompleteForThisFrame]):
   13202         (-[WebFrame _loadItem:withLoadType:]):
   13203         (-[WebFrame _itemForRestoringDocState]):
   13204         * WebView.subproj/WebFramePrivate.h:
   13205 
   13206 2004-07-06  Ken Kocienda  <kocienda (a] apple.com>
   13207 
   13208         Reviewed by Trey
   13209         
   13210         Only register the editing delegate for those notifications for which it implements the callbacks.
   13211 
   13212         * WebView.subproj/WebView.m:
   13213         (-[WebView registerForEditingDelegateNotification:selector:]):
   13214         (-[WebView setEditingDelegate:]):
   13215 
   13216 2004-07-06  Trey Matteson  <trey (a] apple.com>
   13217 
   13218 	3294652 - Failed drag of links doesn't slide back
   13219 
   13220 	The only reason for this is that because of some hacks, we lie to
   13221 	AK about the drag image offset, which means we slide back to
   13222 	slightly the wrong place.  But it's very minor, so we should
   13223 	just fix it.
   13224 
   13225         Reviewed by Ken.
   13226 
   13227         * WebView.subproj/WebHTMLView.m:
   13228         (-[WebHTMLView _startDraggingImage:at:operation:event:sourceIsDHTML:DHTMLWroteData:]):
   13229 	Ask for slideback.
   13230 
   13231 2004-07-02  Darin Adler  <darin (a] apple.com>
   13232 
   13233         Reviewed by Dave.
   13234 
   13235         - fixed problem where tabsToLinks and privateBrowsingEnabled did not work with non-
   13236           standard WebPreferences objects
   13237 
   13238         * WebView.subproj/WebPreferences.m:
   13239         (-[WebPreferences _valueForKey:]): New helper.
   13240         (-[WebPreferences _stringValueForKey:]): Use _valueForKey.
   13241         (-[WebPreferences _integerValueForKey:]): Use _valueForKey.
   13242         (-[WebPreferences _boolValueForKey:]): Use _valueForKey.
   13243         (-[WebPreferences tabsToLinks]): Use _boolValueForKey; this is the bug fix.
   13244         (-[WebPreferences privateBrowsingEnabled]): Ditto.
   13245         (+[WebPreferences _setIBCreatorID:]): Use copy instead of retain for keeping an NSString.
   13246 
   13247 2004-07-01  Trey Matteson  <trey (a] apple.com>
   13248 
   13249 	3556159 - Crashes in -[WebFrame(WebPrivate) _transitionToCommitted:] at www.mastercardbusiness.com
   13250 
   13251 	We know from the line number of the crash that it is due to [self parentFrame]==nil.
   13252 
   13253 	Looking at the HTML and that of the related bugs, they do special stuff with onload
   13254 	handlers.  It is no longer repro, presumably because the includes JS files changed,
   13255 	as the bugs only included the top level HTML.  I suspect that the problem is that the
   13256 	WebFrameLoadTypeOnLoadEvent case was added, and in some weird sequence specific to
   13257 	MasterCard, they hit a case where we would be in WebFrameLoadTypeOnLoadEvent mode but
   13258 	not have a parent frame.
   13259 
   13260 	So we guard in the code against hitting a nil parentFrame, and log an error just in
   13261 	case this ever crops up again and we can learn more about it.
   13262 
   13263         Reviewed by Richard.
   13264 
   13265         * WebView.subproj/WebFrame.m:
   13266         (-[WebFrame _transitionToCommitted:]):  Guard against nil parentFrame.
   13267 
   13268 2004-07-01  John Sullivan  <sullivan (a] apple.com>
   13269 
   13270         Reviewed by Trey.
   13271         
   13272         - fixed these bugs:
   13273         <rdar://problem/3709110> REGRESSION (Tiger): Pressing Tab key to move focus 
   13274         onto links skips every other link
   13275         <rdar://problem/3692576> focus ring is in odd place after clicking RSS button 
   13276         with "Tab to links" enabled
   13277         
   13278         WebHTMLView has some trickery by which we advance the focused link when nextKeyView
   13279         or previousKeyView is called within nextValidKeyView or previousValidKeyView. This
   13280         broke in Tiger because AppKit now (sometimes at least) calls nextKeyView more than
   13281         once within nextValidKeyView. Fixed 3709110 by making sure we only advance the focus 
   13282         once within a call to nextValidKeyView or previousValidKeyView.
   13283         
   13284         Also, this same trickery didn't work right with hidden views. Fixed 3692576 by checking
   13285         whether the view is hidden and bypassing the focus-moving trickery in that case.
   13286 
   13287         * WebView.subproj/WebHTMLViewInternal.h:
   13288         renamed inNextValidKeyView -> nextKeyViewAccessShouldMoveFocus
   13289         
   13290         * WebView.subproj/WebHTMLView.m:
   13291         (-[WebHTMLView nextKeyView]):
   13292         now clears nextKeyViewAccessShouldMoveFocus
   13293         (-[WebHTMLView previousKeyView]):
   13294         ditto
   13295         (-[WebHTMLView nextValidKeyView]):
   13296         now doesn't set focus-moving trigger ivar if view is hidden or has hidden ancestor
   13297         (-[WebHTMLView previousValidKeyView]):
   13298         ditto
   13299 
   13300 2004-06-30  Trey Matteson  <trey (a] apple.com>
   13301 
   13302 	Dragging within a web view should be allowed to start when the window isn't key.
   13303 
   13304 	A few months ago, Chris made this work, but it relied on the fact that all dragging
   13305 	was done in WebKit.  When WebCore got involved in dragging, it was broken.  Now we
   13306 	have a new scheme that gets it working again that properly involves WebCore.
   13307 
   13308 	The general idea is that when AK asks us whether to accept the first mouse and do
   13309 	"delayed window ordering", we must consult WC to see if we might start a drag.  In
   13310 	addition, instead of these drags in non-active windows being started as a special
   13311 	case in WK, they go through the normal WK-WC drag machinery.  Finally to work in
   13312 	frames we have to drill to the deepest hit view in acceptsFirstMouse, because previous
   13313 	hacks to hitTest make the top-most WebHTMLView field all events for its view tree
   13314 	(which leads to it fielding all acceptFirstMouse messages too).
   13315 
   13316         Reviewed by John.
   13317 
   13318         * WebCoreSupport.subproj/WebBridge.m:
   13319         (-[WebBridge mayStartDragAtEventLocation:]):  Glue change for new arg type.
   13320         * WebView.subproj/WebHTMLView.m:
   13321         (-[WebHTMLView _startDraggingImage:at:operation:event:sourceIsDHTML:DHTMLWroteData:]):
   13322 	firstMouseDownEvent ivar is no longer needed.
   13323         (-[WebHTMLView _mayStartDragAtEventLocation:]):  Receives a location instead of a drag
   13324 	event, since we need to do this work when we have no drag event.  This means the
   13325 	check of the delay for text dragging is moved down to WebCore.
   13326         (-[WebHTMLView acceptsFirstMouse:]):  Respond based on whether we might do a drag.
   13327 	This includes drilling to the deepest view the event hits, whereas we used to only
   13328 	respond considering the topmost WebHTMLView.
   13329         (-[WebHTMLView shouldDelayWindowOrderingForEvent:]):  Ditto.
   13330         (-[WebHTMLView mouseDown:]):  Get rid of special case where some activating
   13331 	mouseDown events weren't sent to WC.  We need to go through the whole pipeline
   13332 	now to get a drag started properly.
   13333         (-[WebHTMLView mouseDragged:]):  Ditto, let WC start the drag.
   13334         (-[WebHTMLView mouseUp:]):  firstMouseDownEvent ivar is no longer needed.
   13335         * WebView.subproj/WebHTMLViewInternal.h:
   13336         * WebView.subproj/WebHTMLViewPrivate.h:
   13337 
   13338 2004-06-25  Trey Matteson  <trey (a] apple.com>
   13339 
   13340 	Added new utility method.
   13341 
   13342         Reviewed by John.
   13343 
   13344         * WebView.subproj/WebFrame.m:
   13345         (-[WebFrame _isDescendantOfFrame:]):   New code.
   13346         * WebView.subproj/WebFramePrivate.h:
   13347 
   13348 2004-06-24  Richard Williamson   <rjw (a] apple.com>
   13349 
   13350 		Fixed <rdar://problem/3710313>: CGContext not zeroed when WebImageRenderer is copied
   13351 		The context ivar of WebImageRenderer wasn't being nil when the object was copied.
   13352 
   13353         Reviewed by Darin.
   13354 
   13355         * WebCoreSupport.subproj/WebImageRenderer.m:
   13356         (-[WebImageRenderer copyWithZone:]):
   13357         (-[WebImageRenderer dealloc]):
   13358         (-[WebImageRenderer drawImageInRect:fromRect:compositeOperator:context:]):
   13359 
   13360 2004-06-24  Trey Matteson  <trey (a] apple.com>
   13361 
   13362 	3672725 - Assertion failure in URLCompletion code with particular set of bookmarks
   13363 
   13364 	Problem was caused by a URL with unescaped unicodes getting into
   13365 	the Bookmarks file, presumably from import from IE.  We now test
   13366 	for this case and convert the data on the way in as if it were
   13367 	user-entered.
   13368 
   13369         Reviewed by John and Darin.
   13370 
   13371         * History.subproj/WebHistoryItem.m:
   13372         (-[WebHistoryItem initFromDictionaryRepresentation:]):
   13373 
   13374 2004-06-24  Trey Matteson  <trey (a] apple.com>
   13375 
   13376 	3704950	drag image in DB ConfigBar has horizontal graphics turd	WebCore JavaScript
   13377 
   13378 	When we generate a drag image (or a selection image too, for that matter) we
   13379 	translate the CTM using a CG call.  Later, WebImageRenderer adjusts the pattern
   13380 	phase based on the CTM of the focused view, which doesn't include our translate.
   13381 	So we must inform WebKit about the additional phase adjustment.
   13382 
   13383         Reviewed by Richard
   13384 
   13385         * WebCoreSupport.subproj/WebGraphicsBridge.h:
   13386         * WebCoreSupport.subproj/WebGraphicsBridge.m:
   13387         (-[WebGraphicsBridge setAdditionalPatternPhase:]):  New trivial setter.
   13388         (-[WebGraphicsBridge additionalPatternPhase]):      ...and getter.
   13389         * WebCoreSupport.subproj/WebImageRenderer.m:
   13390         (-[WebImageRenderer tileInRect:fromPoint:context:]):  Take any additional phase
   13391 	adjustment into account when setting phase.
   13392 
   13393 2004-06-24  Trey Matteson  <trey (a] apple.com>
   13394 
   13395 	3693420 - onbeforecut and onbeforepaste need real implementaion
   13396 
   13397         Reviewed by Chris.
   13398 
   13399         * WebView.subproj/WebHTMLView.m:
   13400         (-[WebHTMLView validateUserInterfaceItem:]):  Check with WebCore
   13401 	to see if cut, copy, paste should be enabled.
   13402 
   13403 2004-06-24  John Sullivan  <sullivan (a] apple.com>
   13404 
   13405         Reviewed by Darin.
   13406         
   13407         - fixed <rdar://problem/3706792> 8A161: Choosing text encoding for 
   13408         error page opens finder window!?
   13409 
   13410         * WebView.subproj/WebFrame.m:
   13411         (-[WebFrame _reloadAllowingStaleDataWithOverrideEncoding:]):
   13412         take unreachableURL into account
   13413 
   13414 2004-06-23  Richard Williamson   <rjw (a] apple.com>
   13415 
   13416 	Implemented changes for latest npruntime.h.
   13417 	Made npruntime.h public.
   13418 		
   13419         Reviewed by Chris.
   13420 
   13421         * Plugins.subproj/WebBaseNetscapePluginView.h:
   13422         * Plugins.subproj/WebBaseNetscapePluginView.m:
   13423         (-[WebBaseNetscapePluginView pluginScriptableObject]):
   13424         (-[WebBaseNetscapePluginView forceRedraw]):
   13425         (-[WebBaseNetscapePluginView getVariable:value:]):
   13426         * Plugins.subproj/WebBaseNetscapePluginViewPrivate.h:
   13427         * Plugins.subproj/WebNetscapePluginPackage.m:
   13428         (-[WebNetscapePluginPackage load]):
   13429         * Plugins.subproj/npapi.h:
   13430         * Plugins.subproj/npapi.m:
   13431         (NPN_GetValue):
   13432         * Plugins.subproj/npfunctions.h:
   13433         * Plugins.subproj/npruntime.h:
   13434         * WebKit.pbproj/project.pbxproj:
   13435 
   13436 2004-06-21  Darin Adler  <darin (a] apple.com>
   13437 
   13438         * English.lproj/StringsNotToBeLocalized.txt: Updated for recent changes.
   13439 
   13440 2004-06-21  Chris Blumenberg  <cblu (a] apple.com>
   13441 
   13442 	Made WebKitErrorDescriptionPlugInCancelledConnection have its own description string
   13443 	(Not for software update branch)
   13444 
   13445         Reviewed by john.
   13446 
   13447         * English.lproj/Localizable.strings:
   13448         * Misc.subproj/WebKitErrors.m:
   13449 
   13450 2004-06-21  Chris Blumenberg  <cblu (a] apple.com>
   13451 
   13452 	Made WebKitErrorDescriptionPlugInCancelledConnection properly reuse an already localized string to avoid loc changes.
   13453 
   13454         Reviewed by john.
   13455 
   13456         * ChangeLog:
   13457         * Misc.subproj/WebKitErrors.m:
   13458 
   13459 2004-06-21  Chris Blumenberg  <cblu (a] apple.com>
   13460 
   13461 	Fixed: <rdar://problem/3701269> change in error handling behavior from 10.3.3 to 10.3.4 breaks unreleased Adobe PDF plug-in
   13462 
   13463         Reviewed by john.
   13464 
   13465         * Misc.subproj/WebKitErrors.m:
   13466         (registerErrors): register string for WebKitErrorPlugInCancelledConnection
   13467         * Misc.subproj/WebKitErrorsPrivate.h:
   13468         * Plugins.subproj/WebBaseNetscapePluginStream.h:
   13469         * Plugins.subproj/WebBaseNetscapePluginStream.m:
   13470         (-[WebBaseNetscapePluginStream startStreamWithURL:expectedContentLength:lastModifiedDate:MIMEType:]): use renamed WEB_REASON_PLUGIN_CANCELLED constant
   13471         (-[WebBaseNetscapePluginStream destroyStream]): ditto
   13472         * Plugins.subproj/WebNetscapePluginRepresentation.m:
   13473         (-[WebNetscapePluginRepresentation cancelWithReason:]): if the reason is WEB_REASON_PLUGIN_CANCELLED, cancel the load with WebKitErrorPlugInCancelledConnection
   13474         * Plugins.subproj/WebNetscapePluginStream.m:
   13475         (-[WebNetscapePluginStream cancelWithReason:]): ditto
   13476 
   13477 === Safari-146 ===
   13478 
   13479 2004-06-17  Richard Williamson   <rjw (a] apple.com>
   13480 
   13481 		Changed private headers to be pubic for npapi.h and npfunctions.h.  That
   13482 		API was approved but never marked as public in the project file.  This change does
   13483 		not make npruntime.h public, which contains the not yet approved changes
   13484 		for script-ability of netscape plugins.  Unfortunately, that API will not
   13485 		be public for WWDC.
   13486 				
   13487         Reviewed by Chris.
   13488 
   13489         * WebKit.pbproj/project.pbxproj:
   13490 
   13491 2004-06-17  Trey Matteson  <trey (a] apple.com>
   13492 
   13493 	3698514 - coordinates in ondragstart and ondrag events are wrong
   13494 
   13495 	This part fixes the ondrag coords.  I thought Cocoa passed us the mouse location
   13496 	in draggedImage:movedTo:, but no, it's the position of the dragged image.
   13497 	WebCore needs the mouse location, so to calc that we must save away the
   13498 	offset of the mouse relative to the image when we kick off the drag.
   13499 
   13500         Reviewed by Maciej.
   13501 
   13502         * Misc.subproj/WebNSViewExtras.h:
   13503         * Misc.subproj/WebNSViewExtras.m:
   13504         (-[NSView _web_dragImage:rect:event:pasteboard:source:offset:]): Add the ability
   13505 	to return the offset of the cursor wrt to the drag image, since this routine
   13506 	generates its own drag image and positions it.
   13507         * WebView.subproj/WebHTMLView.m:
   13508         (-[WebHTMLView _startDraggingImage:at:operation:event:sourceIsDHTML:DHTMLWroteData:]):
   13509 	Calc the offset of the cursor wrt to the drag image in the myriad of ways
   13510 	that we kick off the drag.	
   13511         (-[WebHTMLView draggedImage:movedTo:]):  Adjust the location by the
   13512 	offset we save when we kicked off the drag.
   13513         (-[WebHTMLView draggedImage:endedAt:operation:]):  Ditto.
   13514         * WebView.subproj/WebHTMLViewInternal.h:
   13515         * WebView.subproj/WebImageView.m:
   13516         (-[WebImageView mouseDragged:]):  Pass nil for new arg, we don't care.
   13517 
   13518 2004-06-16  David Hyatt  <hyatt (a] apple.com>
   13519 
   13520 	In order to support truncation in Emerson, enhance pointToOffset so that it needn't include partial
   13521 	character glyphs (the left half of a glyph).
   13522 	
   13523         Reviewed by mjs
   13524 
   13525         * WebCoreSupport.subproj/WebTextRenderer.m:
   13526         (-[WebTextRenderer pointToOffset:style:position:reversed:includePartialGlyphs:]):
   13527         (-[WebTextRenderer _ATSU_pointToOffset:style:position:reversed:includePartialGlyphs:]):
   13528         (-[WebTextRenderer _CG_pointToOffset:style:position:reversed:includePartialGlyphs:]):
   13529 
   13530 === Safari-145 ===
   13531 
   13532 2004-06-16  Darin Adler  <darin (a] apple.com>
   13533 
   13534         - fixed <rdar://problem/3696081> REGRESSION: <WebKit/CarbonUtils.h> doesn't build any more
   13535 
   13536         Reviewed by Trey.
   13537 
   13538         * Carbon.subproj/CarbonUtils.h: Fixed include. Need to include <ApplicationServices/ApplicationServices.h>
   13539         to get CGImageRef; can't include an individual header.
   13540 
   13541 2004-06-15  Richard Williamson   <rjw (a] apple.com>
   13542 
   13543 	Fixed <rdar://problem/3695875>: Objective-C instances that are exported to JavaScript are too promiscuous
   13544 	
   13545 	Flip the policy for exposing Objective-C methods and properties.
   13546 	
   13547 	Reviewed by Trey.
   13548 	
   13549 	* Plugins.subproj/WebPluginPackage.m:
   13550 	(+[NSObject isSelectorExcludedFromWebScript:]):  Just return YES.
   13551 	(+[NSObject isKeyExcludedFromWebScript:]):  Just return YES.
   13552 
   13553 2004-06-15  Trey Matteson  <trey (a] apple.com>
   13554 
   13555 	3639321 - Harvard PIN authentication ends up sending PIN as clear text with POST action
   13556 
   13557 	When going back/forward to an item, if we went there originally via a POST, 
   13558 	we ask the user about rePOSTing, and if they say yes, we resend the POST. 
   13559 	This rePOST case is triggered by the form data that we saved on the b/f item.
   13560 	In the case of this bug, the overall navigation was accomplished by a POST,
   13561 	then a redirect, causing a GET.  When a load of type redirect achieves the Committed
   13562 	stage, we replace the current URL in the b/f item with the new URL (instead of
   13563 	adding a new item to the b/f list).
   13564 
   13565 	The bug is that at the same time we should also update the form data in
   13566 	the b/f item to match that of the new request.  I think this will normally
   13567 	mean nil'ing it out, unless there's some way for the result of the redirect
   13568 	to be another POST.
   13569  
   13570 	The security leak occurred because we did not clear the form data on the item,
   13571 	so when going back or forward to the page, we would go into the rePOSTing code,
   13572 	even though we eventually reached that page via a GET (caused by the redirect).
   13573 	So we would do a POST to the redirect URL containing the private data sent in
   13574 	the original POST.
   13575 
   13576         Reviewed by mjs and rjw.
   13577 
   13578         * History.subproj/WebHistoryItem.m:
   13579         (-[WebHistoryItem _setFormInfoFromRequest:]):  New method, just wraps 3 old set methods.
   13580         (-[WebHistoryItem formData]):  Diff being dumb, no change.
   13581         (-[WebHistoryItem formContentType]):  Ditto
   13582         (-[WebHistoryItem formReferrer]): Ditto
   13583         * History.subproj/WebHistoryItemPrivate.h:
   13584         * WebView.subproj/WebFrame.m:
   13585         (-[WebFrame _createItem:]):  Call new WebHistoryItem method - no change in real behavior
   13586         (-[WebFrame _transitionToCommitted:]):  Clear out the form data at the key time, to fix the bug.
   13587 
   13588 2004-06-15  Chris Blumenberg  <cblu (a] apple.com>
   13589 
   13590 	Fixed: <rdar://problem/3695724> WebKit plug-ins should only have to implement plugInViewWithArguments:
   13591 
   13592         Reviewed by rjw.
   13593 
   13594         * ChangeLog:
   13595         * Plugins.subproj/WebPluginViewFactory.h: mention that plugInViewWithArguments is required
   13596         * WebView.subproj/WebFrame.m:
   13597         (-[WebFrame _reloadForPluginChanges]): check for plugInViewWithArguments: not webPlugInInitialize
   13598         * WebView.subproj/WebHTMLView.m:
   13599         (-[WebHTMLView addSubview:]): ditto
   13600 
   13601 2004-06-15  Trey Matteson  <trey (a] apple.com>
   13602 
   13603 	3695240 - pasting plain text with newlines in it turns them into spaces
   13604 
   13605 	Easy fix, we just need to consume the incoming data as text instead of markup.
   13606 
   13607         Reviewed by John and Darin.
   13608 
   13609         * WebView.subproj/WebHTMLView.m:
   13610         (-[WebHTMLView _documentFragmentFromPasteboard:allowPlainText:]):
   13611 
   13612 2004-06-15  Darin Adler  <darin (a] apple.com>
   13613 
   13614         - fixed crash introduced by my earlier change
   13615 
   13616         * WebCoreSupport.subproj/WebImageRenderer.m:
   13617         (-[WebImageContext dealloc]): Set _cgsContext to 0 before calling super as before.
   13618         (-[WebImageContext finalize]): Ditto.
   13619 
   13620 2004-06-14  Darin Adler  <darin (a] apple.com>
   13621 
   13622         Reviewed by Maciej.
   13623 
   13624         - fixed some things for GC that Patrick missed, or that happened after the branch
   13625 
   13626         * Carbon.subproj/HIWebView.m:
   13627         (HIWebViewConstructor): Use CFRetain instead of retain.
   13628         (HIWebViewDestructor): Use CFRelease instead of release.
   13629         * Misc.subproj/WebFileDatabase.m:
   13630         (-[WebFileDatabase initWithPath:]): Use release instead of dealloc.
   13631         * WebCoreSupport.subproj/WebImageRenderer.m:
   13632         (-[WebImageContext finalize]): Had [super dealloc] here by mistake; change to [super finalize].
   13633         * WebCoreSupport.subproj/WebTextRenderer.m:
   13634         (-[WebTextRenderer finalize]): Added.
   13635         * WebView.subproj/WebDebugDOMNode.m:
   13636         (-[WebDebugDOMNode initWithWebFrameView:]): Use release instead of dealloc.
   13637         * WebView.subproj/WebRenderNode.m:
   13638         (-[WebRenderNode initWithWebFrameView:]): Use release instead of dealloc.
   13639 
   13640 2004-06-15  Trey Matteson  <trey (a] apple.com>
   13641 
   13642 	Fix ASSERT/crash we get sometimes when dragging link images.  Turns
   13643 	out there was an uninitialized variable for the image size,
   13644 	so at random we would try to create huge images that could not
   13645 	be focused.
   13646 	
   13647         Reviewed by Maciej and Darin.
   13648 
   13649         * WebView.subproj/WebHTMLView.m:
   13650         (-[WebHTMLView _dragImageForLinkElement:]):  Trivial fix to
   13651 	not use += with uninited variable.
   13652 
   13653 2004-06-14  Darin Adler  <darin (a] apple.com>
   13654 
   13655         Reviewed by me, code changes by Patrick Beard.
   13656 
   13657         - fixed <rdar://problem/3671507>: (WebKit should adopt GC changes and compile with GC enabled)
   13658 
   13659         * WebKit.pbproj/project.pbxproj: Added WebNSObjectExtras.h.
   13660         * Misc.subproj/WebNSObjectExtras.h: Added. Includes WebMakeCollectable, a cover for
   13661         CFMakeCollectable that returns type id, for less casting, and works on Panther as well
   13662         as Tiger. Also declares finalize in NSObject so we can call super without warnings on Panther.
   13663 
   13664         * Carbon.subproj/CarbonWindowAdapter.m: Fixed header and includes a bit.
   13665         (-[CarbonWindowAdapter finalize]): Added.
   13666         * History.subproj/WebBackForwardList.m:
   13667         (-[WebBackForwardList dealloc]): Got count outside loop.
   13668         (-[WebBackForwardList finalize]): Added.
   13669         * History.subproj/WebHistoryItem.m:
   13670         (-[WebHistoryItem finalize]): Added.
   13671         * Misc.subproj/WebFileDatabase.m:
   13672         (-[WebFileDatabase _createLRUList:]): Use release on Panther, drain on Tiger.
   13673         (+[WebFileDatabase _syncLoop:]): Ditto.
   13674         (-[WebFileDatabase dealloc]): Removed, since we never deallocate objects of this class, and
   13675         the method was untested.
   13676         * Misc.subproj/WebKitErrors.m: (registerErrors): Use release on Panther, drain on Tiger.
   13677         * Misc.subproj/WebKitNSStringExtras.m: (+[NSString _web_encodingForResource:]): Use
   13678         WebMakeCollectable. Also fixed indenting.
   13679         * Misc.subproj/WebNSURLExtras.m:
   13680         (+[NSURL _web_URLWithData:relativeToURL:]): Use WebMakeCollectable.
   13681         (-[NSURL _web_URLWithLowercasedScheme]): Use WebMakeCollectable.
   13682         (-[NSString _web_mapHostNameWithRange:encode:makeString:]): Change code to use CFRelease
   13683         to balance CFURLCreateStringByReplacingPercentEscapes CFString creation, not release.
   13684         * Plugins.subproj/WebBaseNetscapePluginStream.m:
   13685         (-[WebBaseNetscapePluginStream finalize]): Added.
   13686         * Plugins.subproj/WebBaseNetscapePluginView.m:
   13687         (-[WebBaseNetscapePluginView freeAttributeKeysAndValues]): Added. Shared code for dealloc and finalize.
   13688         (-[WebBaseNetscapePluginView dealloc]): Call freeAttributeKeysAndValues.
   13689         (-[WebBaseNetscapePluginView finalize]): Added.
   13690         (-[WebBaseNetscapePluginView requestWithURLCString:]): Changed so that CFString objects are
   13691         released with CFRelease, not release.
   13692         (-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:]): Fixed storage leak in
   13693         error case. Made sure CFString object is released with CFRelease, not release.
   13694         (-[WebBaseNetscapePluginView _postURLNotify:target:len:buf:file:notifyData:allowHeaders:]):
   13695         Another CFString that needed to a CFRelease, not a release.
   13696         (-[WebBaseNetscapePluginView status:]): Ditto.
   13697         * Plugins.subproj/WebBasePluginPackage.m:
   13698         (-[WebBasePluginPackage pathByResolvingSymlinksAndAliasesInPath:]): Changed code to
   13699         CFRelease a CFURLRef, instead of release.
   13700         (-[WebBasePluginPackage finalize]): Added.
   13701         * WebCoreSupport.subproj/WebBridge.m:
   13702         (-[WebBridge fini]): Added. Shared code for dealloc and finalize.
   13703         (-[WebBridge dealloc]): Call fini.
   13704         (-[WebBridge finalize]): Added.
   13705         * WebCoreSupport.subproj/WebGlyphBuffer.m:
   13706         (-[WebGlyphBuffer finalize]): Added.
   13707         * WebCoreSupport.subproj/WebImageRenderer.m:
   13708         (-[WebImageContext initWithBounds:context:]): Use CGContextRetain to avoid cast.
   13709         (-[WebImageContext dealloc]): Tweaked.
   13710         (-[WebImageContext finalize]): Added.
   13711         (-[WebImageRenderer finalize]): Added.
   13712         (-[WebPDFDocument finalize]): Added.
   13713         * WebView.subproj/WebDataProtocol.m:
   13714         (+[NSURL _web_uniqueWebDataURL]): Changed so that CFString object is released with
   13715         CFRelease, not release.
   13716         * WebView.subproj/WebDataSource.m:
   13717         (-[WebDataSourcePrivate dealloc]): Took non-release work out of here.
   13718         (-[WebDataSource dealloc]): Moved it here.
   13719         (-[WebDataSource finalize]): Added.
   13720         (-[WebDataSource isLoading]): Use release on Panther, drain on Tiger.
   13721         * WebView.subproj/WebFrame.m:
   13722         (-[WebFramePrivate dealloc]): Took non-release work out of here.
   13723         (-[WebFrame dealloc]): Moved it here.
   13724         (-[WebFrame finalize]): Added.
   13725         * WebView.subproj/WebFrameView.m:
   13726         (-[WebFrameView finalize]): Added.
   13727         * WebView.subproj/WebHTMLRepresentation.m:
   13728         (-[WebHTMLRepresentation finalize]): Added.
   13729         * WebView.subproj/WebHTMLView.m:
   13730         (-[WebHTMLViewPrivate dealloc]): Moved non-release work out of here.
   13731         (-[WebHTMLView dealloc]): Moved it here.
   13732         (-[WebHTMLView finalize]): Added.
   13733         * WebView.subproj/WebImageView.m:
   13734         (-[WebImageView finalize]): Added.
   13735         * WebView.subproj/WebMainResourceClient.m:
   13736         (-[WebMainResourceClient finalize]): Added.
   13737         * WebView.subproj/WebTextView.m:
   13738         (-[WebTextView finalize]): Added.
   13739         * WebView.subproj/WebView.m:
   13740         (-[WebView finalize]): Added.
   13741 
   13742 2004-06-14  Ken Kocienda  <kocienda (a] apple.com>
   13743 
   13744         Reviewed by Darin
   13745         
   13746         Fix for this bug:
   13747         
   13748         <rdar://problem/3693202> WebView.h header unnecessarily lists NSResponder methods it overrides
   13749 
   13750         * WebView.subproj/WebView.h: NSResponder overrides now gathered in a comment section.
   13751 
   13752 2004-06-13  Trey Matteson  <trey (a] apple.com>
   13753 
   13754 	Support for DHTML cut/copy/paste.
   13755 
   13756         Reviewed by Chris
   13757 
   13758         * WebView.subproj/WebHTMLView.m:
   13759         (-[WebHTMLView copy:]):  Give DHTML first crack at executing the command.
   13760         (-[WebHTMLView cut:]):  Ditto
   13761         (-[WebHTMLView paste:]):  Ditto
   13762 
   13763 2004-06-14  Chris Blumenberg  <cblu (a] apple.com>
   13764 
   13765 	Fixed: <rdar://problem/3674456> make new drag & drop API compatible with DHTML dragging
   13766 
   13767         Reviewed by trey.
   13768 
   13769         * WebView.subproj/WebHTMLView.m:
   13770         (-[WebHTMLView concludeDragForDraggingInfo:actionMask:]): tweak
   13771         * WebView.subproj/WebUIDelegate.h: removed old, added new methods
   13772         * WebView.subproj/WebUIDelegatePrivate.h: moved new methods to public header
   13773         * WebView.subproj/WebView.h: removed old, added new methods
   13774         * WebView.subproj/WebView.m: moved methods around
   13775         (-[WebView moveDragCaretToPoint:]): moved
   13776         (-[WebView removeDragCaret]): moved
   13777         (-[WebView _bridgeAtPoint:]): moved
   13778         (-[WebView editableDOMRangeForPoint:]): moved
   13779         * WebView.subproj/WebViewInternal.h: add new internal method
   13780         * WebView.subproj/WebViewPrivate.h: moved new methods to public header
   13781 
   13782 2004-06-14  Trey Matteson  <trey (a] apple.com>
   13783 
   13784 	Use a different hack, as recommended by Kristin, to force the drag
   13785 	manager to exit a modal event wait it is in.  The hack is required
   13786 	to update the drag image on the fly.  Instead of posting a CG
   13787 	event we post at the AppKit level.
   13788 
   13789         Reviewed by Louch
   13790 
   13791         * WebCoreSupport.subproj/WebGraphicsBridge.m:
   13792         (-[WebGraphicsBridge setDraggingImage:at:]):
   13793 
   13794 2004-06-14  Chris Blumenberg  <cblu (a] apple.com>
   13795 
   13796 	Fixed:
   13797 	<rdar://problem/3692668> REGRESSION: delay when images and links
   13798 	<rdar://problem/3692675> links should drag when dragging images that are links when drag source action is WebDragSourceActionLink
   13799 
   13800         Reviewed by trey.
   13801 
   13802         * WebView.subproj/WebHTMLView.m:
   13803         (-[WebHTMLView _mayStartDragWithMouseDragged:]): cleaned up, only use selection delay for selections, allow links to be dragged when image dragging is disabled 
   13804 
   13805 2004-06-12  Trey Matteson  <trey (a] apple.com>
   13806 
   13807 	Small rearrangement to support dynamic changing of the drag
   13808 	image during DHTML dragging.
   13809 
   13810         Reviewed by John
   13811 
   13812         * WebCoreSupport.subproj/WebBridge.m:  Bridge glue moved to WebGraphicsBridge.
   13813         * WebCoreSupport.subproj/WebGraphicsBridge.m:
   13814         (FlipImageSpec):  Code moved from WebHTMLView.m.
   13815         (-[WebGraphicsBridge setDraggingImage:at:]):  Ditto.  Plus, we've added a gross
   13816 	event posting hack to force CG drag manager to update the display when we set
   13817 	the drag image.
   13818         * WebView.subproj/WebHTMLView.m:  Code moved to WebGraphicsBridge.
   13819         * WebView.subproj/WebHTMLViewPrivate.h:
   13820 
   13821 2004-06-11  Chris Blumenberg  <cblu (a] apple.com>
   13822 
   13823 	Implemented the remainder of the drag & drop API.
   13824 
   13825         Reviewed by trey.
   13826 
   13827         * Misc.subproj/WebNSPasteboardExtras.h:
   13828         * Misc.subproj/WebNSPasteboardExtras.m:
   13829         (-[NSPasteboard _web_declareAndWriteDragImage:URL:title:archive:source:]): new
   13830         * Misc.subproj/WebNSViewExtras.h:
   13831         * Misc.subproj/WebNSViewExtras.m:
   13832         (-[NSView _web_dragImage:rect:event:pasteboard:source:]): simplified, this method now just creates a drag image and starts the drag
   13833         * WebCoreSupport.subproj/WebBridge.m:
   13834         (-[WebBridge allowDHTMLDrag:UADrag:]): now calls _delegateDragSourceActionMask on WebHTMLView to interact with the delegate
   13835         * WebView.subproj/WebDefaultUIDelegate.m:
   13836         * WebView.subproj/WebHTMLView.m:
   13837         (-[WebHTMLView _startDraggingImage:at:operation:event:sourceIsDHTML:DHTMLWroteData:]): call new delegate method, cleaned-up a little
   13838         (-[WebHTMLView draggingUpdatedWithDraggingInfo:actionMask:]): call drag caret methods on WebView instead of WebBridge so WebView can make sure only 1 HTML view has a drag cursor
   13839         (-[WebHTMLView draggingCancelledWithDraggingInfo:]): ditto
   13840         (-[WebHTMLView concludeDragForDraggingInfo:actionMask:]): ditto
   13841         (-[WebHTMLView _delegateDragSourceActionMask]): new, gets drag source action mask from delegate
   13842         * WebView.subproj/WebHTMLViewInternal.h:
   13843         * WebView.subproj/WebImageView.h:
   13844         * WebView.subproj/WebImageView.m:
   13845         (-[WebImageView mouseDown:]): get the drag source action mask from the delegate
   13846         (-[WebImageView mouseDragged:]): inform the delegate of the drag
   13847         * WebView.subproj/WebView.m:
   13848         (-[WebViewPrivate dealloc]): assert that dragCursorBridge is nil
   13849         (-[WebView _close]): release dragCursorBridge
   13850         (-[WebView _bridgeAtPoint:]): new
   13851         (-[WebView editableDOMRangeForPoint:]): new API
   13852         (-[WebView moveDragCaretToPoint:]): new API
   13853         (-[WebView removeDragCaret]): new API
   13854         (-[WebView _frameViewAtWindowPoint:]): moved so this can be called internally
   13855         * WebView.subproj/WebViewInternal.h:
   13856         * WebView.subproj/WebViewPrivate.h:
   13857 
   13858 2004-07-10  Trey Matteson  <trey (a] apple.com>
   13859 
   13860 	Prep work for latest delegate API for dragging.  In addition, I also straightened out all
   13861 	the cases of DHTML setting a drag image or setting pasteboard data, and how that would
   13862 	override WebKit's default behavior (which follows how WinIE does things).
   13863 
   13864         Reviewed by Chris.
   13865 
   13866         * Misc.subproj/WebNSViewExtras.h:
   13867         * Misc.subproj/WebNSViewExtras.m:
   13868         (-[NSView _web_dragImage:archive:rect:URL:title:event:dragImage:dragLocation:writePasteboard:]):
   13869 	New args to allow WebCore override of dragImage and pasteboard data.
   13870         * WebCoreSupport.subproj/WebBridge.m:
   13871         (-[WebBridge allowDHTMLDrag:UADrag:]):  New method to return the drag action info to WC.
   13872         (-[WebBridge startDraggingImage:at:operation:event:sourceIsDHTML:DHTMLWroteData:]):
   13873 	Pass along new args.
   13874         * WebView.subproj/WebHTMLView.m:
   13875         (-[WebHTMLView _startDraggingImage:at:operation:event:sourceIsDHTML:DHTMLWroteData:]):
   13876 	Allow WebCore to override drag image and pasteboard data for any type of drag.
   13877         (-[WebHTMLView mouseDragged:]):  Pass NO for new args.
   13878         * WebView.subproj/WebHTMLViewPrivate.h:
   13879         * WebView.subproj/WebImageView.m:
   13880         (-[WebImageView mouseDragged:]):  Pass NO/nil for new args.
   13881 
   13882 === Safari-144 ===
   13883 
   13884 2004-06-10  Kevin Decker  <kdecker (a] apple.com>
   13885 
   13886         Reviewed by John.
   13887 
   13888         * WebView.subproj/WebResource.m:
   13889         (-[WebResource description]):
   13890             -added per request of cblu
   13891         (-[WebResource _response]):
   13892             -added this method to the header
   13893         (-[WebResource _stringValue]):
   13894             - gives the string value of the NSData representation
   13895         * WebView.subproj/WebResourcePrivate.h:
   13896 
   13897 2004-06-10  Darin Adler  <darin (a] apple.com>
   13898 
   13899         Reviewed by Ken.
   13900 
   13901         * WebCoreSupport.subproj/WebBridge.m: Removed undo-related methods.
   13902         (-[WebBridge undoManager]): Added.
   13903 
   13904         * WebKit.pbproj/.cvsignore: Updated for new Xcode files.
   13905 
   13906 2004-06-09  Ken Kocienda  <kocienda (a] apple.com>
   13907 
   13908         Reviewed by Darin
   13909 
   13910         Fix for this bug:
   13911         
   13912         <rdar://problem/3672088>: "Editable WebViews should maintain a selection even when they're not firstResponder"
   13913 
   13914         Add some code to determine whether a WebHTMLView should maintain an
   13915         inactive selection when the view is not first responder. Traditionally,
   13916         these views have not maintained such selections, clearing them when the
   13917         view was not first responder. However, for appls embedding this view as
   13918         an editing widget, it is desirable to act more like an NSTextView. For
   13919         now, however, the view only acts in this way when the web view is set to
   13920         be editable with -[WebView setEditable:YES]. This will maintain
   13921         traditional behavior for WebKit clients dating back to before this
   13922         change, and will likely be a decent switch for the long term, since
   13923         clients to ste the web view to be editable probably want it to act like
   13924         a "regular" Cocoa view in terms of its selection behavior.
   13925 
   13926         * WebView.subproj/WebHTMLView.m:
   13927         (-[WebHTMLView updateTextBackgroundColor]): Add code to tell whether the view is resigning first responder,
   13928         and if it is, use the inactive text background color.
   13929         (-[WebHTMLView maintainsInactiveSelection]): New helper which does checks to see if the new selection
   13930         behavior should be used, or whether we should continue with traditional WebKit behavior.
   13931         (-[WebHTMLView resignFirstResponder]): Call new maintainsInactiveSelection helper. If true,
   13932         do not clear the selection.
   13933         * WebView.subproj/WebHTMLViewInternal.h: Add resigningFirstResponder flag.
   13934 
   13935 2004-06-09  Chris Blumenberg  <cblu (a] apple.com>
   13936 
   13937 	Implemented drag destination portion of the new drag & drop API.
   13938 
   13939         Reviewed by trey.
   13940 
   13941         * WebView.subproj/WebDefaultUIDelegate.m:
   13942         (-[WebDefaultUIDelegate webView:dragDestinationActionMaskForDraggingInfo:]): new delegate implementation
   13943         (-[WebDefaultUIDelegate webView:willPerformDragDestinationAction:forDraggingInfo:]): ditto
   13944         * WebView.subproj/WebDocumentInternal.h:
   13945         * WebView.subproj/WebHTMLView.m:
   13946         (-[WebHTMLView draggingUpdatedWithDraggingInfo:actionMask:]): handle the action mask
   13947         (-[WebHTMLView concludeDragForDraggingInfo:actionMask:]): ditto
   13948         * WebView.subproj/WebUIDelegate.h:
   13949         * WebView.subproj/WebUIDelegatePrivate.h:
   13950         * WebView.subproj/WebView.m:
   13951         (-[WebView _dragOperationForDraggingInfo:]): call new delegate methods
   13952         (-[WebView performDragOperation:]): ditto
   13953         * WebView.subproj/WebViewInternal.h:
   13954         * WebView.subproj/WebViewPrivate.h:
   13955 
   13956 2004-06-09  Richard Williamson   <rjw (a] apple.com>
   13957 
   13958         Implemented PDF rendering for the drawImage() function
   13959         in Context2D.  This allows PDF files to be drawn in scaled
   13960         or rotated context without rasterization artifacts.
   13961         
   13962         The PDF image is currently NOT cached.  Caching can/will be added
   13963         as an optimization.  The hooks are already in place to flush
   13964         the cache as necessary.
   13965         
   13966         Reviewed by John.
   13967 
   13968         * WebCoreSupport.subproj/WebImageRenderer.h:
   13969         * WebCoreSupport.subproj/WebImageRenderer.m:
   13970         (-[WebImageRenderer dealloc]):
   13971         (-[WebImageRenderer _needsRasterFlush]):
   13972         (-[WebImageRenderer drawClippedToValidInRect:fromRect:]):
   13973         (-[WebImageRenderer _PDFDocumentRef]):
   13974         (-[WebImageRenderer _PDFDraw]):
   13975         (-[WebImageRenderer _PDFDrawFromRect:toRect:operation:alpha:flipped:]):
   13976         (-[WebImageRenderer MIMEType]):
   13977         (ReleasePDFDocumentData):
   13978         (-[WebPDFDocument initWithData:]):
   13979         (-[WebPDFDocument dealloc]):
   13980         (-[WebPDFDocument documentRef]):
   13981         (-[WebPDFDocument mediaBox]):
   13982         (-[WebPDFDocument bounds]):
   13983         (-[WebPDFDocument adjustCTM:]):
   13984         (-[WebPDFDocument setCurrentPage:]):
   13985         (-[WebPDFDocument currentPage]):
   13986         (-[WebPDFDocument pageCount]):
   13987 
   13988         Added back check for old plugin API.
   13989         
   13990         * WebView.subproj/WebFrame.m:
   13991         (-[WebFrame _reloadForPluginChanges]):
   13992         * WebView.subproj/WebHTMLView.m:
   13993         (-[WebHTMLView addSubview:]):
   13994         * WebCoreSupport.subproj/WebBridge.m:
   13995         (-[WebBridge frameRequiredForMIMEType:URL:]):
   13996 
   13997 2004-06-08  Trey Matteson  <trey (a] apple.com>
   13998 
   13999 	In DHTML dragging there is no notion of registering for types, so we'd
   14000 	like to just pass all types down to WebCore.  It turns out that the per-type
   14001 	registration doesn't matter as far as the underlying drag service is
   14002 	concerned, so Cocoa is already getting called for any type.  We just hack and
   14003 	override a private method to ensure we accept any type.
   14004 
   14005         Reviewed by Chris.
   14006 
   14007         * WebView.subproj/WebView.m:
   14008         (-[WebView _hitTest:dragTypes:]):  We accept any drag type if it is within
   14009 	our view, without overriding a subview's decision.
   14010 
   14011 2004-06-08  Trey Matteson  <trey (a] apple.com>
   14012 
   14013 	A DHTML drag source can now change the dragging image during the drag.  Currently
   14014 	it may only be set to a static image.
   14015 
   14016         Reviewed by John
   14017 
   14018         * WebCoreSupport.subproj/WebBridge.m:
   14019         (-[WebBridge setDraggingImage:at:]):  Typical bridge glue.
   14020         * WebView.subproj/WebHTMLView.m:
   14021         (FlipImageSpec):  New utility, copied from AppKit.
   14022         (-[WebHTMLView _setDraggingImage:at:]):  Mostly copied from AppKit.  Sets the drag
   14023 	image using CG API.
   14024         * WebView.subproj/WebHTMLViewPrivate.h:
   14025 
   14026 2004-06-08  Chris Blumenberg  <cblu (a] apple.com>
   14027 
   14028 	Fixed: <rdar://problem/3640423>: (REGRESSION: can't paste text copied from web page into Excel (due to HTML on the pasteboard?))
   14029 
   14030         Reviewed by darin.
   14031 
   14032         * WebView.subproj/WebHTMLView.m:
   14033         (+[WebHTMLView _selectionPasteboardTypes]): don't include NSHTMLPboardType
   14034         (-[WebHTMLView _selectedArchive]): removed markup string parameter
   14035         (_selectionPasteboardTypes::if): don't put NSHTMLPboardType on the pasteboard
   14036         * WebView.subproj/WebHTMLViewPrivate.h:
   14037 
   14038 2004-06-07  Darin Adler  <darin (a] apple.com>
   14039 
   14040         Reviewed by Chris.
   14041 
   14042         - fixed <rdar://problem/3676761>: (REGRESSION: Text Bigger/Smaller commands are always disabled in TOT)
   14043 
   14044         * WebView.subproj/WebHTMLView.m: Add @interface declaration for WebTextSizing category
   14045         on WebHTMLView. This must have gotten lost somewhere along the way.
   14046 
   14047 2004-06-05  Trey Matteson  <trey (a] apple.com>
   14048 
   14049         WebKit no longer causes an endless stream of dragexit events to
   14050         occur at the DHTML level when hovering over an element that is
   14051         not accepting the drag.
   14052 
   14053         Reviewed by Chris
   14054 
   14055         * WebView.subproj/WebView.m:
   14056         (-[WebView _dragOperationForDraggingInfo:]):  If the potential target refuses
   14057         the item, don't turn around and immediately tell it to cancel the drag, which is
   14058         what leads to the exit event happening at the DOM level.  If the target just
   14059         refused the drag, it should not have anything it needs to cancel.
   14060 
   14061 2004-06-03  Trey Matteson  <trey (a] apple.com>
   14062 
   14063         DHTML dragging uses the Cocoa NSDragOperation on both the source and dest ends.
   14064         Most of the real work is in WebCore.
   14065 
   14066         Reviewed by rjw
   14067 
   14068         * WebCoreSupport.subproj/WebBridge.m:
   14069         (-[WebBridge startDraggingImage:at:operation:event:]):  Pass the drag op along.
   14070         * WebView.subproj/WebHTMLView.m:
   14071         (-[WebHTMLView _startDraggingImage:at:operation:event:]):  Remember drag op from WC.
   14072         (-[WebHTMLView mouseDragged:]):  Pass None for the op (alternate code path that will
   14073         be going away).
   14074         (-[WebHTMLView draggingSourceOperationMaskForLocal:]):  Use the WC drag op.
   14075         * WebView.subproj/WebHTMLViewInternal.h:
   14076         * WebView.subproj/WebHTMLViewPrivate.h:
   14077 
   14078 === Safari-143 ===
   14079 
   14080 2004-06-04  Chris Blumenberg  <cblu (a] apple.com>
   14081 
   14082         Fixed: <rdar://problem/3674921>: (can't drag an image from Desktop to Blot document)
   14083 
   14084         Reviewed by mjs.
   14085 
   14086         * WebView.subproj/WebDataSource.m:
   14087         (-[WebDataSource _imageElementWithImageResource:]): factored out from _documentFragmentWithImageResource:
   14088         (-[WebDataSource _documentFragmentWithImageResource:]): call _imageElementWithImageResource:
   14089         * WebView.subproj/WebDataSourcePrivate.h:
   14090         * WebView.subproj/WebHTMLView.m:
   14091         (-[WebHTMLView _imageExistsAtPaths:]): new
   14092         (-[WebHTMLView _documentFragmentWithPaths:]): new
   14093         (-[WebHTMLView _documentFragmentFromPasteboard:allowPlainText:]): handle NSFilenamesPboardType
   14094         (+[WebHTMLView _insertablePasteboardTypes]): include NSFilenamesPboardType
   14095         (-[WebHTMLView _canProcessDragWithDraggingInfo:]): check for NSFilenamesPboardType and check that the files are images
   14096 
   14097 2004-06-04  Richard Williamson   <rjw (a] apple.com>
   14098 
   14099         Fixed crasher from last checkin.
   14100         
   14101         Reviewed by Ken.
   14102 
   14103         * Plugins.subproj/WebPluginDatabase.m:
   14104         (+[WebPluginDatabase setAdditionalWebPlugInPaths:]):
   14105         (pluginLocations):
   14106 
   14107 2004-06-03  Richard Williamson   <rjw (a] apple.com>
   14108 
   14109         Add SPI to allow setting of plugin load path.
   14110                 Reviewed by Hyatt.
   14111 
   14112         * Plugins.subproj/WebPluginDatabase.h:
   14113         * Plugins.subproj/WebPluginDatabase.m:
   14114         (+[WebPluginDatabase setAdditionalWebPlugInPaths:]):
   14115         (pluginLocations):
   14116 
   14117 2004-06-03  Darin Adler  <darin (a] apple.com>
   14118 
   14119         Reviewed by Chris.
   14120 
   14121         - fixed <rdar://problem/3677038>: (Need SPI to get URL of favicon for a site)
   14122 
   14123         * Misc.subproj/WebIconDatabase.h: Add iconURLForURL: method.
   14124         * Misc.subproj/WebIconDatabase.m: (-[WebIconDatabase iconURLForURL:]): Added.
   14125 
   14126 2004-06-02  Ken Kocienda  <kocienda (a] apple.com>
   14127 
   14128         Reviewed by John
   14129 
   14130         Fix for these bugs:
   14131         
   14132         <rdar://problem/3675806>: "Make API name change for -webViewShouldBeginEditing:inDOMRange:"
   14133         <rdar://problem/3675809>: "Make API name change for -webViewShouldEndEditing:inDOMRange:"
   14134 
   14135         New names are -webView:shouldBeginEditingInDOMRange: and -webView:shouldEndEditingInDOMRange:, 
   14136         respectively.
   14137 
   14138         * WebView.subproj/WebDefaultEditingDelegate.m:
   14139         (-[WebDefaultEditingDelegate webView:shouldBeginEditingInDOMRange:]):
   14140         (-[WebDefaultEditingDelegate webView:shouldEndEditingInDOMRange:]):
   14141         * WebView.subproj/WebEditingDelegate.h:
   14142         * WebView.subproj/WebView.m:
   14143         (-[WebView _shouldBeginEditingInDOMRange:]):
   14144         (-[WebView _shouldEndEditingInDOMRange:]):
   14145 
   14146 2004-06-02  Richard Williamson   <rjw (a] apple.com>
   14147 
   14148         conformsToProtocol:@protocol(WebPlugin) becomes
   14149         respondsToSelector:@selector(webPlugInInitialize) because
   14150         protocol was changed to an informal protocol.
   14151                 Reviewed by Kevin.
   14152 
   14153         * WebCoreSupport.subproj/WebBridge.m:
   14154         (-[WebBridge frameRequiredForMIMEType:URL:]):
   14155         * WebView.subproj/WebHTMLView.m:
   14156         (-[WebHTMLView addSubview:]):
   14157 
   14158 2004-06-01  Trey Matteson  <trey (a] apple.com>
   14159 
   14160         First cut at source side of DHTML dragging.  Most of the work is in WebCore.
   14161 
   14162         Reviewed by hyatt.
   14163 
   14164         * WebCoreSupport.subproj/WebBridge.m:
   14165         (-[WebBridge startDraggingImage:at:event:]):  Added image and loc args for
   14166         when WC tells WK to start a drag.
   14167         * WebView.subproj/WebHTMLView.m:
   14168         (-[WebHTMLView _startDraggingImage:at:event:]):  New image and loc args coming
   14169         from WebCore.  Hysteresis is moved to WC.
   14170         (-[WebHTMLView mouseDragged:]):  Call new _startDragging method.
   14171         (-[WebHTMLView draggedImage:movedTo:]):  Pass event to WC.
   14172         (-[WebHTMLView draggedImage:endedAt:operation:]):  Pass event to WC.
   14173         (-[WebHTMLView mouseUp:]):  Reset firstMouseDownEvent.  Fixes bug where
   14174         we would occasionally short-circuit WC event handling due to aliasing
   14175         problem with this event.
   14176         * WebView.subproj/WebHTMLViewPrivate.h:
   14177 
   14178 2004-06-02  Darin Adler  <darin (a] apple.com>
   14179 
   14180         Reviewed by John.
   14181 
   14182         - fixed problem with timing of delegate callbacks in the back/forward cache case
   14183 
   14184         * WebView.subproj/WebFrame.m:
   14185         (-[WebFrame _transitionToCommitted:]): Move code to indicate page is done loading in the
   14186         back/forward cache case from here ...
   14187         (-[WebFrame _opened]): ... to here.
   14188 
   14189 2004-06-01  Richard Williamson   <rjw (a] apple.com>
   14190 
   14191         Fixed deployment build warning.
   14192 
   14193         * WebCoreSupport.subproj/WebImageRenderer.m:
   14194         (-[WebImageRenderer incrementalLoadWithBytes:length:complete:]):
   14195 
   14196 2004-06-01  Richard Williamson   <rjw (a] apple.com>
   14197 
   14198         Added support for drawImage and drawImageFromRect to <CANVAS>
   14199         Added support for composite attribute to <CANVAS>
   14200 
   14201         Reviewed by Trey.
   14202 
   14203         * WebCoreSupport.subproj/WebImageRenderer.h:
   14204         * WebCoreSupport.subproj/WebImageRenderer.m:
   14205         (-[WebImageContext initWithBounds:context:]):
   14206         (-[WebImageContext dealloc]):
   14207         (-[WebImageContext saveGraphicsState]):
   14208         (-[WebImageContext restoreGraphicsState]):
   14209         (-[WebImageContext isDrawingToScreen]):
   14210         (-[WebImageContext focusStack]):
   14211         (-[WebImageContext setFocusStack:]):
   14212         (-[WebImageContext bounds]):
   14213         (-[WebImageContext isFlipped]):
   14214         (-[WebImageRenderer incrementalLoadWithBytes:length:complete:]):
   14215         (-[WebImageRenderer dealloc]):
   14216         (-[WebImageRenderer _beginRedirectContext:]):
   14217         (-[WebImageRenderer _endRedirectContext:]):
   14218         (-[WebImageRenderer _needsRasterFlush]):
   14219         (-[WebImageRenderer drawClippedToValidInRect:fromRect:]):
   14220         (-[WebImageRenderer drawImageInRect:fromRect:]):
   14221         (-[WebImageRenderer flushRasterCache]):
   14222         (-[WebImageRenderer drawImageInRect:fromRect:compositeOperator:context:]):
   14223         (-[WebImageRenderer tileInRect:fromPoint:context:]):
   14224         * WebCoreSupport.subproj/WebImageRendererFactory.m:
   14225         (-[WebImageRendererFactory imageRendererWithMIMEType:]):
   14226         (-[WebImageRendererFactory imageRendererWithName:]):
   14227         (-[WebImageRendererFactory CGCompositeOperationInContext:]):
   14228         (-[WebImageRendererFactory setCGCompositeOperation:inContext:]):
   14229         (-[WebImageRendererFactory setCGCompositeOperationFromString:inContext:]):
   14230 
   14231 2004-06-01  John Sullivan  <sullivan (a] apple.com>
   14232 
   14233         Reviewed by Trey.
   14234         
   14235         Work on text-align API. Marked these bugs fixed:
   14236         <rdar://problem/3655380>: (Editing:-alignCenter:methodunimplemented(WebKiteditingAPI))
   14237         <rdar://problem/3655381>: (Editing:-alignJustified:methodunimplemented(WebKiteditingAPI))
   14238         <rdar://problem/3655383>: (Editing:-alignLeft:methodunimplemented(WebKiteditingAPI))
   14239         <rdar://problem/3655384>: (Editing:-alignRight:methodunimplemented(WebKiteditingAPI))        
   14240         
   14241         in favor of opening this bug:
   14242         <rdar://problem/3675191>: (Editing: -alignLeft: and friends mostly implemented but not 
   14243         yet working (WebKit editing API))        
   14244 
   14245         * English.lproj/StringsNotToBeLocalized.txt:
   14246         updated for these changes
   14247         
   14248         * WebView.subproj/WebHTMLView.m:
   14249         (-[WebHTMLView changeDocumentBackgroundColor:]):
   14250         added a FIXME about why this is still not quite right
   14251         (-[WebHTMLView _alignSelectionUsingCSSValue:]):
   14252         new method, bottleneck for the various values
   14253         (-[WebHTMLView alignCenter:]):
   14254         call _alignSelectionUsingCSSValue:@"center"
   14255         (-[WebHTMLView alignJustified:]):
   14256         call _alignSelectionUsingCSSValue:@"justify"
   14257         (-[WebHTMLView alignLeft:]):
   14258         call _alignSelectionUsingCSSValue:@"left"
   14259         (-[WebHTMLView alignRight:]):
   14260         call _alignSelectionUsingCSSValue:@"right"
   14261 
   14262 2004-06-01  John Sullivan  <sullivan (a] apple.com>
   14263 
   14264         Reviewed by Ken.
   14265         
   14266         - fixed <rdar://problem/3655378>: (Editing:-changeDocumentBackgroundColor:
   14267         methodunimplemented(WebKiteditingAPI))
   14268         - made startSpeaking: actually work; previous implementation raised a DOMException
   14269 
   14270         * WebView.subproj/WebHTMLView.m:
   14271         (-[WebHTMLView _changeCSSColorUsingSelector:inRange:]):
   14272         added range parameter
   14273         (-[WebHTMLView _entireDOMRange]):
   14274         new convenience method
   14275         (-[WebHTMLView changeDocumentBackgroundColor:]):
   14276         now affects entire document, not just selected range, a la NSTextView
   14277         (-[WebHTMLView changeColor:]):
   14278         now passes in a range to _changeCSSColorUsingSelector:inRange:
   14279         (-[WebHTMLView startSpeaking:]):
   14280         now uses _entireDOMRange
   14281 
   14282 2004-06-01  Chris Blumenberg  <cblu (a] apple.com>
   14283 
   14284         Fixed: <rdar://problem/3661505>: (REGRESSION (Safari-140) can't drag standalone images more than once)
   14285 
   14286         Reviewed by john.
   14287 
   14288         * WebView.subproj/WebImageView.m:
   14289         (-[WebImageView mouseDown:]): set ignoringMouseDraggedEvents to NO. This line of code was deleted somehow.
   14290 
   14291 2004-06-01  John Sullivan  <sullivan (a] apple.com>
   14292 
   14293         Reviewed by Darin.
   14294         
   14295         - fixed <rdar://problem/3657003>: (HTML Editing: Color panel doesn't work)
   14296 
   14297         * WebView.subproj/WebHTMLView.m:
   14298         (-[WebHTMLView _colorPanelColorAsStyleUsingSelector:]):
   14299         new method, returns a DOMCSSStyleDeclaration *
   14300         (-[WebHTMLView _changeCSSColorUsingSelector:]):
   14301         new method, sets a color-related style attribute on the selection
   14302         (-[WebHTMLView changeDocumentBackgroundColor:]):
   14303         call _changeCSSColorUsingSelector: with @selector(setBackgroundColor:)
   14304         (-[WebHTMLView changeColor:]):
   14305         call _changeCSSColorUsingSelector: with @selector(setColor:); also added
   14306         comments explaining why changeDocumentBackgroundColor: will never actually
   14307         be called until an AppKit code-incest mess is straighted out.
   14308 
   14309 2004-06-01  Ken Kocienda  <kocienda (a] apple.com>
   14310 
   14311         Reviewed by Darin
   14312 
   14313         * WebView.subproj/WebHTMLView.m:
   14314         (-[WebHTMLView _fontManagerOperationAsStyle]): Fixed typo in family-name code that caused
   14315         family names to match when they should not.
   14316 
   14317 2004-06-01  Chris Blumenberg  <cblu (a] apple.com>
   14318 
   14319         Made paste and drop ask the delegate before making any replacements.
   14320 
   14321         Reviewed by kocienda.
   14322 
   14323         * WebView.subproj/WebHTMLView.m:
   14324         (-[WebHTMLView _pasteWithPasteboard:allowPlainText:]): renamed, now calls _shouldInsertFragment:replacingDOMRange:givenAction:
   14325         (-[WebHTMLView _shouldInsertFragment:replacingDOMRange:givenAction:]): new, asks delegate
   14326         (-[WebHTMLView concludeDragForDraggingInfo:]): now calls _shouldInsertFragment:replacingDOMRange:givenAction:
   14327         (-[WebHTMLView paste:]): call renamed _pasteWithPasteboard:allowPlainText:
   14328         (-[WebHTMLView pasteAsRichText:]): ditto
   14329 
   14330 2004-05-28  Darin Adler  <darin (a] apple.com>
   14331 
   14332         Reviewed by Maciej.
   14333 
   14334         * WebView.subproj/WebHTMLView.m: (-[WebHTMLView _fontManagerOperationAsStyle]):
   14335         First cut at figuring out what operation the font manager is doing without
   14336         digging into its private data structures.
   14337 
   14338 2004-05-28  Darin Adler  <darin (a] apple.com>
   14339 
   14340         Reviewed by Ken.
   14341 
   14342         - various editing-related improvements
   14343         - fixed <rdar://problem/3655366>: (Editing: -selectParagraph: method unimplemented (WebKit editing API))
   14344         - fixed <rdar://problem/3655367>: (Editing: -selectLine: method unimplemented (WebKit editing API))
   14345         - fixed <rdar://problem/3655369>: (Editing: -selectWord: method unimplemented (WebKit editing API))
   14346         - fixed <rdar://problem/3655392>: (Editing: -uppercaseWord: method unimplemented (WebKit editing API))
   14347         - fixed <rdar://problem/3655393>: (Editing: -lowercaseWord: method unimplemented (WebKit editing API))
   14348         - fixed <rdar://problem/3655394>: (Editing: -capitalizeWord: method unimplemented (WebKit editing API))
   14349 
   14350         * WebView.subproj/WebHTMLView.m:
   14351         (-[WebHTMLView _alterCurrentSelection:direction:granularity:]): Removed the call to
   14352         ensureCaretVisible. This is now handled on the other side of the bridge.
   14353         (-[WebHTMLView moveDown:]): Changed to use WebSelectByLine granularity instead of
   14354         WebSelectDown direction.
   14355         (-[WebHTMLView moveDownAndModifySelection:]): Ditto.
   14356         (-[WebHTMLView moveUp:]): Ditto.
   14357         (-[WebHTMLView moveUpAndModifySelection:]): Ditto.
   14358         (-[WebHTMLView _expandSelectionToGranularity:]): Added.
   14359         (-[WebHTMLView selectParagraph:]): Implemented by calling _expandSelectionToGranularity.
   14360         (-[WebHTMLView selectLine:]): Ditto.
   14361         (-[WebHTMLView selectWord:]): Ditto.
   14362         (-[WebHTMLView _fontManagerOperationAsStyle]): Added. Placeholder for the job of figuring
   14363         out what style change to make based on NSFontManager.
   14364         (-[WebHTMLView changeFont:]): Implemented, but not really tested because guts are still
   14365         missing due to lack of above method.
   14366         (-[WebHTMLView insertTab:]): Removed the call to ensureCaretVisible.
   14367         (-[WebHTMLView insertNewline:]): Removed the call to ensureCaretVisible.
   14368         (-[WebHTMLView insertParagraphSeparator:]): Made this insert a newline for now.
   14369         (-[WebHTMLView _changeWordCaseWithSelector:]): Added.
   14370         (-[WebHTMLView uppercaseWord:]): Implemented by calling _changeWordCaseWithSelector.
   14371         (-[WebHTMLView lowercaseWord:]): Ditto.
   14372         (-[WebHTMLView capitalizeWord:]): Ditto.
   14373         (-[WebHTMLView deleteBackward:]): Removed the call to ensureCaretVisible.
   14374         (-[WebHTMLView checkSpelling:]): Put a pile of AppKit code in here as a placeholder.
   14375         (-[WebHTMLView startSpeaking:]): Use the new stringForRange: method instead of outerText.
   14376         That way we can handle cases where the entire document is selected.
   14377         (-[WebHTMLView insertText:]): Removed the call to ensureCaretVisible.
   14378 
   14379 2004-05-28  Chris Blumenberg  <cblu (a] apple.com>
   14380 
   14381         Fixed: <rdar://problem/3672129>: (selection deselects when clicking editable WebView in background window)
   14382 
   14383         Fixed this problem by using NSTextView's approach of only allowing dragging on first mouse down.
   14384 
   14385         Reviewed by john.
   14386 
   14387         * WebView.subproj/WebHTMLView.m:
   14388         (-[WebHTMLView acceptsFirstMouse:]): store the first mouse down
   14389         (-[WebHTMLView mouseDown:]): Don't tell WebCore about the first mouse down event since only dragging can occur on the first mouse down.
   14390         (-[WebHTMLView mouseDragged:]): Don't tell WebCore about the drags that occur after the first mouse down since only dragging can occur after the first mouse down.
   14391         * WebView.subproj/WebHTMLViewInternal.h:
   14392 
   14393 2004-05-28  Darin Adler  <darin (a] apple.com>
   14394 
   14395         * WebView.subproj/WebView.m: At Ken's suggestion, for better efficiency and safety,
   14396         use _cmd rather than explicit selector names in the forwarding methods.
   14397 
   14398 2004-05-28  Darin Adler  <darin (a] apple.com>
   14399 
   14400         Reviewed by Ken.
   14401 
   14402         - implemented a few more editing operations, moved code from WebView to WebHTMLView
   14403 
   14404         * WebCoreSupport.subproj/WebBridge.m:
   14405         (-[WebBridge respondToChangedContents]): Call _updateFontPanel on the WebHTMLView, not the WebView.
   14406         (-[WebBridge respondToChangedSelection]): Ditto.
   14407 
   14408         * WebView.subproj/WebHTMLView.m: Moved WebElementOrTextFilter class here from WebView and
   14409         gave it a prefix so it won't conflict with developers' class names.
   14410         (-[WebHTMLView _updateFontPanel]): Moved here from WebView.
   14411 
   14412         * WebView.subproj/WebView.m:
   14413         (-[WebView toggleSmartInsertDelete:]): Added.
   14414         (-[WebView toggleContinuousSpellChecking:]): Added.
   14415         (-[WebView isContinuousGrammarCheckingEnabled]): Added.
   14416         (-[WebView setContinuousGrammarCheckingEnabled:]): Added.
   14417         (-[WebView toggleContinuousGrammarChecking:]): Added.
   14418         (-[WebView setSmartInsertDeleteEnabled:]): Implemented. We have the flag now, although we
   14419         still don't actually have smart insert and delete implemented.
   14420         (-[WebView smartInsertDeleteEnabled]): Ditto.
   14421         (-[WebView setContinuousSpellCheckingEnabled:]): Implemented.
   14422         (-[WebView isContinuousSpellCheckingEnabled]): Implemented.
   14423         (-[WebView spellCheckerDocumentTag]): Implemented.
   14424         (-[WebView _preflightSpellCheckerNow:]): Added.
   14425         (-[WebView _preflightSpellChecker]): Added.
   14426         (-[WebView _continuousCheckingAllowed]): Added.
   14427 
   14428         * WebView.subproj/WebHTMLViewInternal.h: Added. We'll things here from WebHTMLViewPrivate so
   14429         they are internal to the framework, rather than SPI.
   14430         * WebKit.pbproj/project.pbxproj: Added WebHTMLViewInternal.h.
   14431         * WebView.subproj/WebHTMLViewPrivate.h: Moved WebHTMLViewPrivate into the internal header.
   14432         Despite its name, it's internal, not SPI.
   14433 
   14434         * WebView.subproj/WebViewPrivate.h: Moved WebViewPrivate into the internal header.
   14435         Despite its name, it's internal, not SPI. Added a number of new operations which should
   14436         be public API. We'll have to figure out what to do about API review and the WWDC deadline.
   14437         * WebView.subproj/WebViewInternal.h: Removed _updateFontPanel method.
   14438 
   14439         * English.lproj/StringsNotToBeLocalized.txt: Update.
   14440 
   14441 2004-05-27  Ken Kocienda  <kocienda (a] apple.com>
   14442 
   14443         Reviewed by John
   14444 
   14445         The font panel now updates correctly, reflecting the current selection. There may
   14446         still be some bugs and corner cases to handle, but this will work for a general
   14447         implementation of the feature.
   14448 
   14449         * WebView.subproj/WebView.m:
   14450         (+[ElementOrTextFilter filter]): Added. This filter will accept DOM elements and
   14451         text nodes and skip everything else. This filter is used when walking a selection
   14452         to determine the fonts in use.
   14453         (-[ElementOrTextFilter acceptNode:]): DOM node filter implementation method.
   14454         (-[WebView _fontFromStyle]): Removed, in lieu of new fontForCurrentPosition call on the bridge.
   14455         (-[WebView _updateFontPanel]): Reworked to use a TreeWalker instead of a NodeIterator. This
   14456         was done since the iterator must be rooted at the document root, but start iterating 
   14457         at the start of the selection. TreeWalker's setCurrentNode allows this to be done.
   14458 
   14459 2004-05-27  Kevin Decker  <kdecker (a] apple.com>
   14460 
   14461         * Plugins.subproj/WebScriptObject.h:
   14462 
   14463 2004-05-27  Kevin Decker  <kdecker (a] apple.com>
   14464 
   14465         Reviewed by Ken.
   14466         
   14467         - error messages (eg. from JavaScriptCore) sent to the bridge now 
   14468           get delievered to a new delegate method.  
   14469     
   14470         * WebCoreSupport.subproj/WebBridge.m:
   14471         (-[WebBridge addMessageToConsole:]):
   14472         * WebKit.pbproj/project.pbxproj:
   14473         * WebView.subproj/WebUIDelegatePrivate.h:
   14474 
   14475 === Safari-142 ===
   14476 
   14477 2004-05-27  Trey Matteson  <trey (a] apple.com>
   14478 
   14479         First cut at DHTML dragging, destination side.  Dragging text, files and URLs onto
   14480         elements works.  Type conversion from NSPasteboard to MIME types is hardwired.
   14481         No JS access yet to modifier keys, or operations mask.
   14482 
   14483         Reviewed by Chris.
   14484 
   14485         * WebView.subproj/WebHTMLView.m:
   14486         (-[WebHTMLView draggingUpdatedWithDraggingInfo:]): Call DHTML dragging via bridge.
   14487         (-[WebHTMLView draggingCancelledWithDraggingInfo:]): Ditto.
   14488         (-[WebHTMLView concludeDragForDraggingInfo:]): Ditto.
   14489         * WebView.subproj/WebHTMLViewPrivate.h:
   14490         * WebView.subproj/WebView.m:
   14491         (-[WebView _setWebKitDragRespondsToDragging:]):  New SPI for finer grained control than the
   14492         delegate currently has.
   14493         (-[WebView _webKitDragRespondsToDragging]): Ditto.
   14494         (-[WebView _commonInitializationWithFrameName:groupName:]):  Init new flag.
   14495         (-[WebView _dragOperationForDraggingInfo:]):  Comment.
   14496         * WebView.subproj/WebViewPrivate.h:
   14497 
   14498 2004-05-27  Darin Adler  <darin (a] apple.com>
   14499 
   14500         * WebView.subproj/WebFrameView.m: (-[WebFrameView _scrollVerticallyBy:]): Added comment.
   14501 
   14502 2004-05-27  Darin Adler  <darin (a] apple.com>
   14503 
   14504         Reviewed by Maciej.
   14505 
   14506         - fixed <rdar://problem/3667948>: (REGRESSION: Page Down key goes down two pages when smooth scrolling is on)
   14507 
   14508         * WebView.subproj/WebFrameView.m:
   14509         (-[WebFrameView _scrollVerticallyBy:]): Added return value to indicate if any scrolling was done.
   14510         This requires using secret AppKit methods; the public methods don't have a return value.
   14511         (-[WebFrameView _pageVertically:]): Added return value to indicate if any scrolling was done.
   14512         (-[WebFrameView scrollPageUp:]): Base call through to next responder on whether any scrolling was done,
   14513         using return value, rather than looking at new scroll position. This was the cause of the bug,
   14514         since with smooth scrolling no scrolling has happened yet when the function returns.
   14515         (-[WebFrameView scrollPageDown:]): Ditto.
   14516 
   14517         - removed temporary DOMDocument method from WebView
   14518 
   14519         * WebView.subproj/WebView.m:
   14520         (-[WebView computedStyleForElement:pseudoElement:]): Call getComputedStyle on the document that owns the
   14521         element rather than on the document that currently contains the selection.
   14522         (-[WebView _updateFontPanel]): Get the document from the DOM range rather than using the DOMDocument method.
   14523         (-[WebView styleDeclarationWithText:]): Change this method to not use the DOMDocument method, but do the same
   14524         job with inline code.
   14525 
   14526         * WebView.subproj/WebViewPrivate.h: Moved a recently-added category that is not SPI out of here.
   14527         * WebView.subproj/WebViewInternal.h: Moved the category in here. And removed the DOMDocument method from it.
   14528 
   14529         - other changes
   14530 
   14531         * English.lproj/StringsNotToBeLocalized.txt: Updated for recent changes.
   14532 
   14533         * copy-webcore-files-to-webkit: Change tabs to spaces. Quiet the script down by
   14534         making it no longer echo each command or print messages about what it's doing by default.
   14535 
   14536 2004-05-27  Darin Adler  <darin (a] apple.com>
   14537 
   14538         Reviewed by Maciej.
   14539 
   14540         - moved to new symlink technique for embedding frameworks
   14541 
   14542         * WebKit.pbproj/project.pbxproj: Get rid of embed-frameworks build step
   14543         because we don't need it any more.
   14544 
   14545 2004-05-27  Darin Adler  <darin (a] apple.com>
   14546 
   14547         - fixed Deployment build
   14548 
   14549         * WebView.subproj/WebView.m: (-[WebView concludeDragOperation:]):
   14550         Got rid of ASSERT-only local variable.
   14551 
   14552 2004-05-26  Maciej Stachowiak  <mjs (a] apple.com>
   14553 
   14554         Reviewed by Dave.
   14555 
   14556         - fix further problems with Emerson feed: redirection for RSS feeds
   14557 
   14558         This is done by removing removing the calls to defer callbacks
   14559         while waiting for [... Maciej stopped typing here ...]
   14560 
   14561         * WebView.subproj/WebMainResourceClient.m:
   14562         (-[WebMainResourceClient continueAfterNavigationPolicy:formState:]):
   14563         (-[WebMainResourceClient connection:willSendRequest:redirectResponse:]):
   14564         (-[WebMainResourceClient continueAfterContentPolicy:response:]):
   14565         (-[WebMainResourceClient checkContentPolicyForResponse:]):
   14566 
   14567 2004-05-26  Chris Blumenberg  <cblu (a] apple.com>
   14568 
   14569         Added and implemented proposed dragging API changes. These changes are necessary to make JS dragging work properly.
   14570 
   14571         Reviewed by trey.
   14572 
   14573         * WebView.subproj/WebDefaultUIDelegate.m:
   14574         (-[WebDefaultUIDelegate webView:shouldDetermineDragOperationForDraggingInfo:dragOperation:]): instead of calling back to the WebView to get the default drag operation, return YES. Return NO in order to return a custom drag operation. Removed element parameter since another new API provides a way to get that.
   14575         (-[WebDefaultUIDelegate webView:shouldProcessDragWithDraggingInfo:]): Removed element parameter since another new API provides a way to get that.
   14576         * WebView.subproj/WebDocumentInternal.h:
   14577         * WebView.subproj/WebHTMLView.m:
   14578         (-[WebHTMLView draggingUpdatedWithDraggingInfo:]): now returns a drag operation
   14579         (-[WebHTMLView draggingCancelledWithDraggingInfo:]): moved
   14580         * WebView.subproj/WebUIDelegatePrivate.h:
   14581         * WebView.subproj/WebView.m:
   14582         (-[WebView elementAtPoint:]): new proposed API
   14583         (-[WebView dragOperationForDraggingInfo:]): removed code from this API that should be removed
   14584         (-[WebView _dragOperationForDraggingInfo:]): call new API
   14585         (-[WebView concludeDragOperation:]): call new API
   14586 
   14587 2004-05-26  Darin Adler  <darin (a] apple.com>
   14588 
   14589         Reviewed by John.
   14590 
   14591         - moved HTML editing operations from WebView to WebHTMLView, leaving only forwarding machinery
   14592           at the WebView level
   14593 
   14594         - fixed <rdar://problem/3655412>: (Editing: -startSpeaking: method unimplemented (WebKit editing API))
   14595         - fixed <rdar://problem/3655414>: (Editing: -stopSpeaking: method unimplemented (WebKit editing API))
   14596         - fixed <rdar://problem/3655375>: (Editing: -pasteAsRichText: method unimplemented (WebKit editing API))
   14597 
   14598         * WebView.subproj/WebView.h: Added missing declaration of selectionAffinity. I think this
   14599         omission was an editorial mistake.
   14600 
   14601         * WebView.subproj/WebView.m:
   14602         (-[WebView searchFor:direction:caseSensitive:wrap:]): Use _frameForCurrentSelection directly,
   14603         since it no longer returns nil.
   14604         (-[WebView pasteboardTypesForSelection]): Use _frameForCurrentSelection instead of going through the bridge.
   14605         (-[WebView _frameForCurrentSelection]): Renamed from _currentFrame and changed to return main frame
   14606         rather than nil when called on WebView that has no current selection.
   14607         (-[WebView _bridgeForCurrentSelection]): Moved in file.
   14608         (-[WebView _updateFontPanel]): Removed the one call to _currentSelectionIsEditable here, since
   14609         it was the only one left in this file. Eventually this code will move to WebHTMLView.
   14610         (-[WebView _performResponderOperation:with:]): Name change.
   14611 
   14612         * WebView.subproj/WebDataSource.m: (-[WebDataSource _documentFragmentWithImageResource:]):
   14613         Build document fragment using DOM instead of composing HTML text.
   14614 
   14615         * WebView.subproj/WebHTMLView.m:
   14616         (-[WebHTMLView _documentFragmentFromPasteboard:allowPlainText:]): Added allowPlainText boolean,
   14617         moved method into new location in file so it can be in the right category, changed link pasting
   14618         to use DOM instead of composing HTML text.
   14619         (-[WebHTMLView _replaceSelectionWithPasteboard:selectReplacement:allowPlainText:]): Added allowPlainText
   14620         boolean, moved method into new location in file so it can be in the right category.
   14621         (-[WebHTMLView concludeDragForDraggingInfo:]): Pass YES for allowPlainText.
   14622         (-[WebHTMLView keyDown:]): Set keyDownEvent field for use by workaround below.
   14623         (-[WebHTMLView centerSelectionInVisibleArea:]): Moved here from WebView.
   14624         (-[WebHTMLView _alterCurrentSelection:direction:granularity:]): Ditto.
   14625         (-[WebHTMLView moveBackward:]): Ditto.
   14626         (-[WebHTMLView moveBackwardAndModifySelection:]): Ditto.
   14627         (-[WebHTMLView moveDown:]): Ditto.
   14628         (-[WebHTMLView moveDownAndModifySelection:]): Ditto.
   14629         (-[WebHTMLView moveForward:]): Ditto.
   14630         (-[WebHTMLView moveForwardAndModifySelection:]): Ditto.
   14631         (-[WebHTMLView moveLeft:]): Ditto.
   14632         (-[WebHTMLView moveLeftAndModifySelection:]): Ditto.
   14633         (-[WebHTMLView moveRight:]): Ditto.
   14634         (-[WebHTMLView moveRightAndModifySelection:]): Ditto.
   14635         (-[WebHTMLView moveToBeginningOfDocument:]): Ditto.
   14636         (-[WebHTMLView moveToBeginningOfLine:]): Ditto.
   14637         (-[WebHTMLView moveToBeginningOfParagraph:]): Ditto.
   14638         (-[WebHTMLView moveToEndOfDocument:]): Ditto.
   14639         (-[WebHTMLView moveToEndOfLine:]): Ditto.
   14640         (-[WebHTMLView moveToEndOfParagraph:]): Ditto.
   14641         (-[WebHTMLView moveUp:]): Ditto.
   14642         (-[WebHTMLView moveUpAndModifySelection:]): Ditto.
   14643         (-[WebHTMLView moveWordBackward:]): Ditto.
   14644         (-[WebHTMLView moveWordBackwardAndModifySelection:]): Ditto.
   14645         (-[WebHTMLView moveWordForward:]): Ditto.
   14646         (-[WebHTMLView moveWordForwardAndModifySelection:]): Ditto.
   14647         (-[WebHTMLView moveWordLeft:]): Ditto.
   14648         (-[WebHTMLView moveWordLeftAndModifySelection:]): Ditto.
   14649         (-[WebHTMLView moveWordRight:]): Ditto.
   14650         (-[WebHTMLView moveWordRightAndModifySelection:]): Ditto.
   14651         (-[WebHTMLView pageDown:]): Ditto.
   14652         (-[WebHTMLView pageUp:]): Ditto.
   14653         (-[WebHTMLView selectParagraph:]): Ditto.
   14654         (-[WebHTMLView selectLine:]): Ditto.
   14655         (-[WebHTMLView selectWord:]): Ditto.
   14656         (-[WebHTMLView copy:]): Moved down in file so it's in the right category.
   14657         (-[WebHTMLView cut:]): Ditto.
   14658         (-[WebHTMLView delete:]): Ditto.
   14659         (-[WebHTMLView paste:]): Ditto.
   14660         (-[WebHTMLView copyFont:]): Moved here from WebView.
   14661         (-[WebHTMLView pasteFont:]): Ditto.
   14662         (-[WebHTMLView pasteAsPlainText:]): Ditto.
   14663         (-[WebHTMLView pasteAsRichText:]): Implemented this by calling the paste code with
   14664         allowPlainText:NO; believe it or not, that's what this means in NSTextView.
   14665         (-[WebHTMLView changeFont:]): Moved here from WebView.
   14666         (-[WebHTMLView changeAttributes:]): Ditto.
   14667         (-[WebHTMLView changeDocumentBackgroundColor:]): Ditto.
   14668         (-[WebHTMLView changeColor:]): Ditto.
   14669         (-[WebHTMLView alignCenter:]): Ditto.
   14670         (-[WebHTMLView alignJustified:]): Ditto.
   14671         (-[WebHTMLView alignLeft:]): Ditto.
   14672         (-[WebHTMLView alignRight:]): Ditto.
   14673         (-[WebHTMLView indent:]): Ditto.
   14674         (-[WebHTMLView insertTab:]): Moved here from WebView, also call insertText rather than
   14675         replaceSelectionWithText so it's undoable like a typed character.
   14676         (-[WebHTMLView insertBacktab:]): Moved here from WebView.
   14677         (-[WebHTMLView insertNewline:]): Moved here from WebView, also call insertText rather than
   14678         replaceSelectionWithText so it's undoable like a typed character.
   14679         (-[WebHTMLView insertParagraphSeparator:]): Moved here from WebView.
   14680         (-[WebHTMLView changeCaseOfLetter:]): Ditto.
   14681         (-[WebHTMLView uppercaseWord:]): Ditto.
   14682         (-[WebHTMLView lowercaseWord:]): Ditto.
   14683         (-[WebHTMLView capitalizeWord:]): Ditto.
   14684         (-[WebHTMLView deleteForward:]): Ditto.
   14685         (-[WebHTMLView deleteBackward:]): Ditto.
   14686         (-[WebHTMLView deleteBackwardByDecomposingPreviousCharacter:]): Ditto.
   14687         (-[WebHTMLView deleteWordForward:]): Ditto.
   14688         (-[WebHTMLView deleteWordBackward:]): Ditto.
   14689         (-[WebHTMLView deleteToBeginningOfLine:]): Ditto.
   14690         (-[WebHTMLView deleteToEndOfLine:]): Ditto.
   14691         (-[WebHTMLView deleteToBeginningOfParagraph:]): Ditto.
   14692         (-[WebHTMLView deleteToEndOfParagraph:]): Ditto.
   14693         (-[WebHTMLView complete:]): Ditto.
   14694         (-[WebHTMLView checkSpelling:]): Ditto.
   14695         (-[WebHTMLView showGuessPanel:]): Ditto.
   14696         (-[WebHTMLView performFindPanelAction:]): Ditto.
   14697         (-[WebHTMLView startSpeaking:]): Implemented this.
   14698         (-[WebHTMLView stopSpeaking:]): Implemented this.
   14699         (-[WebHTMLView insertText:]): Moved here from WebView.
   14700 
   14701         * WebView.subproj/WebHTMLViewPrivate.h: Removed declarations of methods that are neither
   14702         SPI nor needed outside WebHTMLView.m.
   14703 
   14704         * WebView.subproj/WebViewInternal.h: Removed _currentFrame, and added _frameForCurrentSelection and
   14705         _bridgeForCurrentSelection.
   14706 
   14707 2004-05-25  Maciej Stachowiak  <mjs (a] apple.com>
   14708 
   14709         Reviewed by Richard.
   14710 
   14711         <rdar://problem/3652498>: new sniffing support is crashing
   14712         
   14713         * WebView.subproj/WebMainResourceClient.m:
   14714         (-[WebMainResourceClient checkContentPolicyForResponse:]): Retain
   14715         listener around call, in case delegate does something that ends up
   14716         invalidating it, like navigating to a new URL.
   14717 
   14718 2004-05-25  Chris Blumenberg  <cblu (a] apple.com>
   14719 
   14720         Fixed regression where undoing typing would undo character-by-character.
   14721 
   14722         Reviewed by kocienda.
   14723 
   14724         * WebView.subproj/WebView.m:
   14725         (-[WebView insertText:]): call insertText: rather than replaceSelectionWithText:: since text insertion via insertText: is coalesced and this is the behavior we want here
   14726 
   14727 2004-05-25  Ken Kocienda  <kocienda (a] apple.com>
   14728 
   14729         Reviewed by John
   14730 
   14731         Change postDidChangeSelectionNotification and postDidChangeNotification tp
   14732         respondToChangedSelection and respondToChangedContents, respectively, to
   14733         account for the fact that we do work in these calls other than post a
   14734         notification. The need to clear the typing style on both kinds of changes
   14735         inspired the name change.
   14736 
   14737         Add in support to set and access typing style. We don't do anything with it yet
   14738         except store and return it. Using the typing style is still to come.
   14739 
   14740         * WebCoreSupport.subproj/WebBridge.m:
   14741         (-[WebBridge respondToChangedContents]): Change name of functions as described.
   14742         (-[WebBridge respondToChangedSelection]): Change name of functions as described.
   14743         * WebView.subproj/WebView.m:
   14744         (-[WebView dealloc:]): Dealloc typing style ivar.
   14745         (-[WebView setTypingStyle:]): Change to set typing style ivar.
   14746         (-[WebView typingStyle]): Return new typing style ivar.
   14747         * WebView.subproj/WebViewPrivate.h: Add ivar for typing style.
   14748 
   14749 2004-05-25  Ken Kocienda  <kocienda (a] apple.com>
   14750 
   14751         Reviewed by John
   14752         
   14753         Improve _bridgeForCurrentSelection so that it is frame-savvy.
   14754         Fixup setSelectedDOMRange:affinity: so that it uses the right bridge.
   14755 
   14756         * WebView.subproj/WebView.m:
   14757         (-[WebView _bridgeForCurrentSelection]): Use _currentFrame not mainFrame. 
   14758         (-[WebView _currentFrame]): Moved to WebView (WebInternal) category so _bridgeForCurrentSelection can use it.
   14759         (-[WebView setSelectedDOMRange:affinity:]): Derive the bridge to use from the range passed in; _bridgeForCurrentSelection
   14760         is not the right way to get at the document for the range.
   14761         * WebView.subproj/WebViewInternal.h: Add _currentFrame declaration.
   14762 
   14763 2004-05-24  Darin Adler  <darin (a] apple.com>
   14764 
   14765         Reviewed by Ken.
   14766 
   14767         - fixed <rdar://problem/3666022>: (REGRESSION: crash from infinite regress in -[WebFrameView(WebPrivate) scrollPageDown:])
   14768 
   14769         * WebView.subproj/WebView.m:
   14770         (-[WebView _performResponderOperation:sender:]): Helper method that knows how to pass on operations
   14771         to the responder chain, allowing us to implement operations that will get passed to views inside
   14772         us as necessary. Moved a few methods to this, and soon will move even more.
   14773         (-[WebView scrollLineDown:]): Use the above method.
   14774         (-[WebView scrollLineUp:]): Ditto.
   14775         (-[WebView scrollPageDown:]): Ditto.
   14776         (-[WebView scrollPageUp:]): Ditto.
   14777         (-[WebView copy:]): Ditto.
   14778         (-[WebView cut:]): Ditto.
   14779         (-[WebView paste:]): Ditto.
   14780         (-[WebView delete:]): Ditto.
   14781         (-[WebView insertBacktab:]): Ditto.
   14782 
   14783 2004-05-24  Chris Blumenberg  <cblu (a] apple.com>
   14784 
   14785         Improved editing via drag
   14786  
   14787         Reviewed by kocienda.
   14788 
   14789         * WebView.subproj/WebDataSource.m: 
   14790         (-[WebDataSource _documentFragmentWithImageResource:]): made this method return a fragment instead of replace the selection so that the caller do other things with the fragment
   14791         (-[WebDataSource _documentFragmentWithArchive:]): ditto
   14792         (-[WebDataSource _replaceSelectionWithArchive:selectReplacement:]): call renamed methods
   14793         * WebView.subproj/WebDataSourcePrivate.h:
   14794         * WebView.subproj/WebDocumentInternal.h:
   14795         * WebView.subproj/WebHTMLView.m:
   14796         (-[WebHTMLView _documentFragmentFromPasteboard:]): made this method return a fragment instead of replace the selection so that the caller do other things with the fragment
   14797         (-[WebHTMLView _replaceSelectionWithPasteboard:selectReplacement:]): new
   14798         (-[WebHTMLView paste:]): call _replaceSelectionWithPasteboard:selectReplacement:
   14799         (-[WebHTMLView dragOperationForDraggingInfo:]): handle the case where the destination is editable, but the source is not
   14800         (-[WebHTMLView draggingCancelledWithDraggingInfo:]): new, removes drag caret
   14801         (-[WebHTMLView draggingUpdatedWithDraggingInfo:]): remove drag caret when we can't handle the drag
   14802         (-[WebHTMLView concludeDragForDraggingInfo:]): instead of calling paste, move the selection when doing a move and replace the drag caret when doing a copy
   14803         * WebView.subproj/WebHTMLViewPrivate.h:
   14804         * WebView.subproj/WebView.m:
   14805         (-[WebViewPrivate dealloc]):
   14806         (-[WebView _setDraggingDocumentView:]): new
   14807         (-[WebView _dragOperationForDraggingInfo:]): if the current dragging document view changes, tell the previous dragging document view that dragging cancelled 
   14808         (-[WebView draggingExited:]): new, tell the previous dragging document view that dragging cancelled
   14809         (-[WebView concludeDragOperation:]): release the dragging document view
   14810         (-[WebView replaceSelectionWithNode:]): pass the selectReplacement BOOL to the bridge
   14811         (-[WebView replaceSelectionWithText:]): ditto
   14812         (-[WebView replaceSelectionWithMarkupString:]): ditto
   14813         (-[WebView replaceSelectionWithArchive:]): ditto
   14814         (-[WebView pasteAsPlainText:]): ditto
   14815         (-[WebView insertTab:]): ditto
   14816         (-[WebView insertText:]): ditto
   14817         * WebView.subproj/WebViewPrivate.h: 
   14818 
   14819 2004-05-24  John Sullivan  <sullivan (a] apple.com>
   14820 
   14821         Reviewed by Dave.
   14822         
   14823         - added private RSSFeedReferrer field to WebHistoryItem so RSS feeds in the
   14824         back/forward list can remember what page (if any) they were initiated from.
   14825 
   14826         * History.subproj/WebHistoryItem.m:
   14827         new RSSFeedReferrer ivar in private structure
   14828         (-[WebHistoryItemPrivate dealloc]):
   14829         release RSSFeedReferrer
   14830         (-[WebHistoryItem copyWithZone:]):
   14831         copy RSSFeedReferrer
   14832         (-[WebHistoryItem RSSFeedReferrer]):
   14833         return RSSFeedReferrer
   14834         (-[WebHistoryItem setRSSFeedReferrer:]):
   14835         set RSSFeedReferrer
   14836 
   14837         * History.subproj/WebHistoryItemPrivate.h:
   14838         declare -RSSFeedReferrer and -setRSSFeedReferrer:
   14839 
   14840 2004-05-22  Darin Adler  <darin (a] apple.com>
   14841 
   14842         Reviewed by Ken.
   14843 
   14844         - implemented some of the trivial WebView editing operations; some had bug reports, to wit:
   14845         - fixed <rdar://problem/3655342>: (Editing: -centerSelectionInVisibleArea: method unimplemented (WebKit editing API))
   14846         - fixed <rdar://problem/3655398>: (Editing: -deleteWordBackward: method unimplemented (WebKit editing API))
   14847         - fixed <rdar://problem/3655397>: (Editing: -deleteWordForward: method unimplemented (WebKit editing API))
   14848         - fixed <rdar://problem/3655387>: (Editing: -insertBacktab: method unimplemented (WebKit editing API))
   14849         - fixed <rdar://problem/3655386>: (Editing: -insertTab: method unimplemented (WebKit editing API))
   14850         - fixed <rdar://problem/3655351>: (Editing: -moveWordBackward: method unimplemented (WebKit editing API))
   14851         - fixed <rdar://problem/3655352>: (Editing: -moveWordBackwardAndModifySelection: method unimplemented (WebKit editing API))
   14852         - fixed <rdar://problem/3655353>: (Editing: -moveWordForward: method unimplemented (WebKit editing API))
   14853         - fixed <rdar://problem/3655354>: (Editing: -moveWordForwardAndModifySelection: method unimplemented (WebKit editing API))
   14854         - fixed <rdar://problem/3655374>: (Editing: -pasteAsPlainText: method unimplemented (WebKit editing API))
   14855         - fixed <rdar://problem/3655362>: (Editing: -scrollLineDown: method unimplemented (WebKit editing API))
   14856         - fixed <rdar://problem/3655363>: (Editing: -scrollLineUp: method unimplemented (WebKit editing API))
   14857 
   14858         * WebView.subproj/WebView.m:
   14859         (-[WebView centerSelectionInVisibleArea:]): Implemented. The implementation isn't perfect, but it's hooked
   14860         up. It simply calls ensureCaretVisible for now.
   14861         (-[WebView moveBackward:]): Implemented. The WebCore API already has a way to specify backward as opposed
   14862         to left. A separate issue is the fact that these operations don't have bi-di-savvy implementations, but
   14863         now this method is hooked up and will work at least for left-to-right text.
   14864         (-[WebView moveBackwardAndModifySelection:]): Ditto.
   14865         (-[WebView moveForward:]): Ditto.
   14866         (-[WebView moveForwardAndModifySelection:]): Ditto.
   14867         (-[WebView moveWordBackward:]): Ditto.
   14868         (-[WebView moveWordBackwardAndModifySelection:]): Ditto.
   14869         (-[WebView moveWordForward:]): Ditto.
   14870         (-[WebView moveWordForwardAndModifySelection:]): Ditto.
   14871         (-[WebView scrollLineDown:]): Forward to WebFrameView.
   14872         (-[WebView scrollLineUp:]): Ditto.
   14873         (-[WebView scrollPageDown:]): Ditto.
   14874         (-[WebView scrollPageUp:]): Ditto.
   14875         (-[WebView delete:]): Implemented. Follows pattern used in cut, copy, and paste.
   14876         (-[WebView pasteAsPlainText:]): Implemented. Calls delegate, then replaceSelectionWithText: on the bridge.
   14877         (-[WebView insertTab:]): Implemented. Calls delegate, then replaceSelectionWithText: on the bridge.
   14878         (-[WebView insertBacktab:]): Implemented. Does nothing. If we ever change so that you can use a WebView as
   14879         a field editor, then we might have to add code here.
   14880         (-[WebView deleteWordForward:]): Implement by calling moveForwardAndModifySelection: and then delete:.
   14881         Might not be a perfect implementation in the presence of delegates who refuse to delete because it will
   14882         change the selection even if the delete is disallowed.
   14883         (-[WebView deleteWordBackward:]): Implement by calling moveBackwardAndModifySelection: and then delete:.
   14884         Same issue about about delegates as deleteWordForward:.
   14885 
   14886         * WebView.subproj/WebHTMLView.m: (-[WebHTMLView _pasteFromPasteboard:]): Added a FIXME.
   14887 
   14888         * DOM.subproj/DOMViews.h: Updated from recent change to WebCore.
   14889 
   14890 2004-05-21  Richard Williamson   <rjw (a] apple.com>
   14891 
   14892         Removed _bindObject:forFrame: SPI.
   14893 
   14894         Reviewed by Chris.
   14895 
   14896         * WebView.subproj/WebView.m:
   14897         * WebView.subproj/WebViewPrivate.h:
   14898 
   14899 === Safari-141 ===
   14900 
   14901 2004-05-21  Darin Adler  <darin (a] apple.com>
   14902 
   14903         Reviewed by Ken and Chris.
   14904 
   14905         * WebView.subproj/WebHTMLView.m: (-[WebHTMLView _pasteFromPasteboard:]): Call replaceSelectionWithText:
   14906         instead of replaceSelectionWithMarkupString: when pasting plain text.
   14907 
   14908         * WebView.subproj/WebDataSource.m: (-[WebDataSource _replaceSelectionWithMarkupString:baseURL:]):
   14909         Remove bogus check for empty markup. There's nothing wrong with an empty string, and no reason
   14910         that replacing with empty string should be a no-op instead of a delete.
   14911 
   14912 2004-05-20  Darin Adler  <darin (a] apple.com>
   14913 
   14914         Reviewed by Chris.
   14915 
   14916         - fixed <rdar://problem/3662383>: (REGRESSION: drag slide-back sometimes causes link to load)
   14917 
   14918         * WebCoreSupport.subproj/WebBridge.m: (-[WebBridge handleMouseDragged:]):
   14919         Added BOOL result to handleMouseDragged:.
   14920         * WebView.subproj/WebHTMLViewPrivate.h: Added BOOL result to _handleMouseDragged:.
   14921 
   14922         * WebView.subproj/WebHTMLView.m: (-[WebHTMLView _handleMouseDragged:]): Added BOOL result,
   14923         returning YES when the drag started, and no when the hysteresis has not yet been overcome.
   14924 
   14925 2004-05-20  Ken Kocienda  <kocienda (a] apple.com>
   14926 
   14927         Reviewed by Hyatt
   14928 
   14929         Provide the methods to glue the WebView's editing delegate so that these methods work:
   14930         
   14931         <rdar://problem/3655316>: "Editing: -webViewShouldBeginEditing:inDOMRange: method unimplemented (WebKit editing API)"
   14932         <rdar://problem/3655317>: "Editing: -webViewShouldEndEditing:inDOMRange: method unimplemented (WebKit editing API)"
   14933 
   14934         * WebCoreSupport.subproj/WebBridge.m:
   14935         (-[WebBridge shouldBeginEditing:]): New method used to glue delegate to focus shifts.
   14936         (-[WebBridge shouldEndEditing:]): Ditto.
   14937         * WebView.subproj/WebView.m:
   14938         (-[WebView _shouldBeginEditingInDOMRange:]): Ditto.
   14939         (-[WebView _shouldEndEditingInDOMRange:]): Ditto.
   14940         * WebView.subproj/WebViewPrivate.h: Ditto.
   14941 
   14942 2004-05-20  Richard Williamson   <rjw (a] apple.com>
   14943 
   14944         Fixed typo in header comment.
   14945 
   14946         Reviewed by Ken.
   14947 
   14948         * Plugins.subproj/WebScriptObject.h:
   14949 
   14950 2004-05-19  Chris Blumenberg  <cblu (a] apple.com>
   14951 
   14952         Fixed: <rdar://problem/3462627>: (API: Need a way to disable/customize dragging)
   14953 
   14954         Reviewed by john.
   14955 
   14956         * Misc.subproj/WebNSPasteboardExtras.m:
   14957         (-[NSPasteboard _web_writeImage:URL:title:archive:types:]): fixed bug that caused exception
   14958         * WebView.subproj/WebDefaultUIDelegate.m:
   14959         (-[WebDefaultUIDelegate webView:shouldBeginDragForElement:dragImage:mouseDownEvent:mouseDraggedEvent:]): new, returns YES
   14960         (-[WebDefaultUIDelegate webView:dragOperationForDraggingInfo:overElement:]): new, returns [WebView dragOperationForDraggingInfo:]
   14961         (-[WebDefaultUIDelegate webView:shouldProcessDragWithDraggingInfo:overElement:]): new, returns YES
   14962         * WebView.subproj/WebDocumentInternal.h: added WebDocumentDragging and WebDocumentElement for document dragging
   14963         * WebView.subproj/WebDocumentPrivate.h: moved WebDocumentSelection to WebDocumentInternal.h
   14964         * WebView.subproj/WebFrame.m:
   14965         (-[WebFrame _actionInformationForNavigationType:event:originalURL:]): 
   14966         * WebView.subproj/WebHTMLView.h:
   14967         * WebView.subproj/WebHTMLView.m:
   14968         (+[WebHTMLView _insertablePasteboardTypes]): new 
   14969         (-[WebHTMLView _handleMouseDragged:]): call shouldBeginDragForElement:::: delegate API
   14970         (-[WebHTMLView _mayStartDragWithMouseDragged:]): call renamed elementAtPoint SPI
   14971         (-[WebHTMLView initWithFrame:]): don't register for drag types since this is handled at the WebView
   14972         (-[WebHTMLView menuForEvent:]): call renamed elementAtPoint SPI
   14973         (-[WebHTMLView _isSelectionEvent:]): call renamed elementAtPoint SPI
   14974         (-[WebHTMLView dragImage:at:offset:event:pasteboard:source:slideBack:]): rather than unregistering drag types on the WebView, just tell it that we're dragging
   14975         (-[WebHTMLView draggedImage:endedAt:operation:]): ditto
   14976         (-[WebHTMLView _canProcessDragWithDraggingInfo:]): new
   14977         (-[WebHTMLView dragOperationForDraggingInfo:]): new WebDocumentDragging SPI
   14978         (-[WebHTMLView draggingUpdatedWithDraggingInfo:]): ditto
   14979         (-[WebHTMLView concludeDragForDraggingInfo:]): ditto
   14980         (-[WebHTMLView elementAtPoint:]): renamed from _elementAtPoint since this is part of the WebDocumentElement SPI
   14981         * WebView.subproj/WebHTMLViewPrivate.h:
   14982         * WebView.subproj/WebImageView.h:
   14983         * WebView.subproj/WebImageView.m:
   14984         (-[WebImageView elementAtPoint:]): new
   14985         (-[WebImageView menuForEvent:]): call elementAtPoint
   14986         (-[WebImageView mouseDragged:]): rather than unregistering drag types on the WebView, just tell it that we're dragging
   14987         (-[WebImageView draggedImage:endedAt:operation:]): ditto
   14988         * WebView.subproj/WebTextView.h:
   14989         * WebView.subproj/WebTextView.m:
   14990         (-[WebTextView _elementAtWindowPoint:]): new
   14991         (-[WebTextView elementAtPoint:]): new
   14992         (-[WebTextView menuForEvent:]): call _elementAtWindowPoint
   14993         * WebView.subproj/WebView.h:
   14994         * WebView.subproj/WebView.m:
   14995         (-[WebViewPrivate dealloc]): removed draggedTypes ivar
   14996         (+[WebView URLFromPasteboard:]): implemented
   14997         (+[WebView URLTitleFromPasteboard:]): implemented
   14998         (-[WebView _registerDraggedTypes]): moved
   14999         (-[WebView _frameViewAtWindowPoint:]): new
   15000         (-[WebView _draggingDocumentViewAtWindowPoint:]): new
   15001         (-[WebView _elementAtWindowPoint:]): new
   15002         (-[WebView dragOperationForDraggingInfo:]): updated this API to handle subviews that may want to handle drags
   15003         (-[WebView _dragOperationForDraggingInfo:]): new, handles UI delegate for drag control
   15004         (-[WebView draggingEntered:]): call _dragOperationForDraggingInfo:
   15005         (-[WebView draggingUpdated:]): ditto
   15006         (-[WebView concludeDragOperation:]): work with the UI delegate and the subview to handle what happens
   15007         * WebView.subproj/WebViewPrivate.h:
   15008 
   15009 2004-05-19  Richard Williamson   <rjw (a] apple.com>
   15010 
   15011         Removed extraneous tabs that were added (by XCode?).
   15012         
   15013         * DOM.subproj/DOM-compat.h:
   15014         * Plugins.subproj/WebScriptObject.h:
   15015 
   15016 2004-05-19  Richard Williamson   <rjw (a] apple.com>
   15017 
   15018         Updated header copy script to only copy if modified headers
   15019         are different.
   15020 
   15021         * copy-webcore-files-to-webkit:
   15022 
   15023 2004-05-19  Ken Kocienda  <kocienda (a] apple.com>
   15024 
   15025         Reviewed by Hyatt and Darin
   15026 
   15027         Fix for this bug:
   15028         
   15029         <rdar://problem/3643230>: "can't tab out of contentEditable Elements"
   15030 
   15031         * WebCoreSupport.subproj/WebBridge.m:
   15032         (-[WebBridge interceptEditingKeyEvent:]): Renamed from _editingKeyDown. Also now returns
   15033         a BOOL to report whether the event was handled or not.
   15034         * WebView.subproj/WebView.m:
   15035         (-[WebView _interceptEditingKeyEvent:]): Also renamed from _editingKeyDown. Now includes
   15036         a check if the web view is editable and whether the event is a tab key event. If the former
   15037         is not true and the latter is, the key is not intercepted. This causes the tab to shift once
   15038         the key is processed by other non-editing key-handling mechanisms.
   15039         * WebView.subproj/WebViewPrivate.h: Changed declaration due to name change.
   15040 
   15041 2004-05-19  Ken Kocienda  <kocienda (a] apple.com>
   15042 
   15043         Reviewed by Hyatt
   15044 
   15045         * WebCoreSupport.subproj/WebBridge.m:
   15046         (-[WebBridge isEditable]): Return the isEditable value for the
   15047         WebView which contains this bridge's frame.
   15048 
   15049 2004-05-19  Darin Adler  <darin (a] apple.com>
   15050 
   15051         - fixed headers with licenses mangled by Xcode auto-indenting
   15052 
   15053         * DOM.subproj/DOMExtensions.h:
   15054         * WebCoreSupport.subproj/WebGraphicsBridge.h:
   15055         * WebCoreSupport.subproj/WebGraphicsBridge.m:
   15056 
   15057 2004-05-18  David Hyatt  <hyatt (a] apple.com>
   15058 
   15059         Improve layout scheduling.
   15060         Reviewed by kocienda
   15061 
   15062         * WebView.subproj/WebFrame.m:
   15063         (-[WebFrame _transitionToLayoutAcceptable]):
   15064         (-[WebFrame _checkLoadCompleteForThisFrame]):
   15065         * WebView.subproj/WebHTMLRepresentation.m:
   15066         (-[WebHTMLRepresentation finishedLoadingWithDataSource:]):
   15067 
   15068 2004-05-18  Richard Williamson   <rjw (a] apple.com>
   15069 
   15070         Finished implementation of windowScriptObject.
   15071                 Reviewed by Maciej.
   15072 
   15073         * WebView.subproj/WebView.m:
   15074         (-[WebView windowScriptObject]):
   15075 
   15076 2004-05-18  Richard Williamson   <rjw (a] apple.com>
   15077 
   15078         Added WebKit portion of webView:windowScriptObjectAvailable:
   15079         implementation.  Still need to implement creating the WebScriptObject
   15080         wrapper on the WebCore side.
   15081         
   15082         Reviewed by Maciej.
   15083 
   15084         Removed "_" from _setPageWidthForPrinting:.  This method facilitates
   15085         a work-around for carbon printing.  At some point we may make this
   15086         method public API.
   15087                 Reviewed by Chris.
   15088 
   15089         * WebCoreSupport.subproj/WebBridge.m:
   15090         (-[WebBridge overrideMediaType]):
   15091         (-[WebBridge windowObjectCleared]):
   15092         * WebView.subproj/WebDefaultFrameLoadDelegate.m:
   15093         (-[WebDefaultFrameLoadDelegate webView:windowScriptObjectAvailable:]):
   15094         * WebView.subproj/WebHTMLView.m:
   15095         (-[WebHTMLView setPageWidthForPrinting:]):
   15096 
   15097 2004-05-18  Darin Adler  <darin (a] apple.com>
   15098 
   15099         Reviewed by John.
   15100 
   15101         - fixed <rdar://problem/3520322>: "can't use <WebKit/HIWebView.h> or <WebKit/CarbonUtils.h> from non-Objective C"
   15102 
   15103         * Carbon.subproj/CarbonUtils.h: Added ifdefs so file compiles when included from non-Objective-C.
   15104         Changed style to match other Carbon headers a bit more closely. Also remove unnecessary includes.
   15105         * Carbon.subproj/HIWebView.h: Ditto.
   15106 
   15107         - fixed <rdar://problem/3648505>: "this text file scrolls to the second line instead of first when pressing home"
   15108 
   15109         * WebView.subproj/WebFrameView.m:
   15110         (-[WebFrameView _scrollToTopLeft]): Scroll to origin.y instead of assuming that top is 0; can be non-0 for text view.
   15111         (-[WebFrameView _scrollToBottomLeft]): Use NSMaxY instead of height for the same reason.
   15112 
   15113 2004-05-17  David Hyatt  <hyatt (a] apple.com>
   15114 
   15115         Fix for performance regression in PLT caused by not setting _timeOfLastCompletedLoad, causing
   15116         page cache to release during the benchmark.
   15117         * WebView.subproj/WebFrame.m:
   15118         (-[WebFrame _setState:]):
   15119 
   15120 2004-05-17  Chris Blumenberg  <cblu (a] apple.com>
   15121 
   15122         Implemented new WebView pasteboard methods. Made a lot of factoring changes related to pasteboard management.
   15123 
   15124         Reviewed by john.
   15125 
   15126         * Misc.subproj/WebNSPasteboardExtras.h:
   15127         * Misc.subproj/WebNSPasteboardExtras.m:
   15128         (+[NSPasteboard _web_writableTypesForURL]): renamed to not include "drag" these types are also used for copying
   15129         (+[NSPasteboard _web_writableTypesForImage]): new
   15130         (-[NSPasteboard _web_bestURL]): tweak
   15131         (-[NSPasteboard _web_writeURL:andTitle:types:]): take an array of types that this method should write, don't declare the types since this complicates things for the caller
   15132         (-[NSPasteboard _web_writeImage:URL:title:archive:types:]): ditto
   15133         * Misc.subproj/WebNSViewExtras.m:
   15134         (-[NSView _web_dragImage:archive:rect:URL:title:event:]): call renamed methods
   15135         * WebView.subproj/WebDefaultContextMenuDelegate.m:
   15136         (-[WebDefaultUIDelegate copyLinkToClipboard:]): call code factored out to WebView
   15137         (-[WebDefaultUIDelegate copyImageToClipboard:]): ditto
   15138         * WebView.subproj/WebDocumentPrivate.h:
   15139         * WebView.subproj/WebHTMLView.h:
   15140         * WebView.subproj/WebHTMLView.m:
   15141         (-[WebHTMLView _selectedRTFData]): new factored out method
   15142         (-[WebHTMLView _writeSelectionToPasteboard:]): factored code out to writeSelectionWithPasteboardTypes:toPasteboard:
   15143         (-[WebHTMLView _dragImageForLinkElement:]): tweak
   15144         (-[WebHTMLView _handleMouseDragged:]): call renamed methods
   15145         (-[WebHTMLView pasteboardTypesForSelection]): new
   15146         (-[WebTextView writeSelectionWithPasteboardTypes:toPasteboard:]): new, code moved from _writeSelectionToPasteboard:
   15147         * WebView.subproj/WebHTMLViewPrivate.h:
   15148         * WebView.subproj/WebImageView.h:
   15149         * WebView.subproj/WebImageView.m:
   15150         (-[WebImageView writeImageToPasteboard:types:]): call renamed methods
   15151         (-[WebImageView copy:]):
   15152         (-[WebImageView writeSelectionToPasteboard:types:]): call renamed methods
   15153         * WebView.subproj/WebTextView.h:
   15154         * WebView.subproj/WebTextView.m:
   15155         (-[WebTextView pasteboardTypesForSelection]): new
   15156         (-[WebTextView writeSelectionWithPasteboardTypes:toPasteboard:]): new
   15157         * WebView.subproj/WebView.m:
   15158         (-[WebView _writeImageElement:withPasteboardTypes:toPasteboard:]): new
   15159         (-[WebView _writeLinkElement:withPasteboardTypes:toPasteboard:]): mew
   15160         (-[WebView dragOperationForDraggingInfo:]): implemented API
   15161         (-[WebView draggingEntered:]): call API
   15162         (-[WebView draggingUpdated:]): ditto
   15163         (-[WebView concludeDragOperation:]): ditto
   15164         (-[WebView pasteboardTypesForSelection]): implemented API
   15165         (-[WebView writeSelectionWithPasteboardTypes:toPasteboard:]): ditto
   15166         (-[WebView pasteboardTypesForElement:]): ditto
   15167         (-[WebView writeElement:withPasteboardTypes:toPasteboard:]): ditto
   15168         * WebView.subproj/WebViewPrivate.h:
   15169 
   15170 2004-05-17  Ken Kocienda  <kocienda (a] apple.com>
   15171 
   15172         Reviewed by John
   15173 
   15174         Remove overrides in WebView for scrollPageDown and scrollPageUp.
   15175         NSView behavior gives us just what we want, and there is no
   15176         special behavior required for editing.
   15177 
   15178         <rdar://problem/3655364>: "Editing: -scrollPageDown: method unimplemented (WebKit editing API)"
   15179         <rdar://problem/3655365>: "Editing: -scrollPageUp: method unimplemented (WebKit editing API)"
   15180 
   15181         * WebView.subproj/WebView.h: Comment methods out and add a note about why.
   15182         * WebView.subproj/WebView.m: Remove stubbed out implementation.
   15183 
   15184 2004-05-14  Vicki Murley  <vicki (a] apple.com>
   15185 
   15186         Reviewed by mjs.
   15187  
   15188         <rdar://problem/3642427>: framework marketing number should be 2.0 for DoubleBarrel release
   15189 
   15190         * WebKit.pbproj/project.pbxproj: change CFBundleShortVersionString to 2.0
   15191 
   15192 2004-05-14  David Hyatt  <hyatt (a] apple.com>
   15193 
   15194         Eliminate timedLayout.
   15195         Reviewed by darin
   15196 
   15197         * WebView.subproj/WebFrame.m:
   15198         (-[WebFramePrivate dealloc]):
   15199         (-[WebFrame _detachFromParent]):
   15200         (-[WebFrame _transitionToLayoutAcceptable]):
   15201         (-[WebFrame _setState:]):
   15202         (-[WebFrame _checkLoadCompleteForThisFrame]):
   15203         (-[WebFrame stopLoading]):
   15204         * WebView.subproj/WebFramePrivate.h:
   15205 
   15206 === Safari-140 ===
   15207 
   15208 2004-05-14  Chris Blumenberg  <cblu (a] apple.com>
   15209 
   15210         Fixed: <rdar://problem/3655495>: (exception loading applets)
   15211 
   15212         Reviewed by kocienda.
   15213 
   15214         * WebCoreSupport.subproj/WebBridge.m:
   15215         (-[WebBridge pluginViewWithPackage:attributes:baseURL:]): when calling old cocoa plug-ins, use old keys
   15216 
   15217 2004-05-14  Chris Blumenberg  <cblu (a] apple.com>
   15218 
   15219         Fixed: <rdar://problem/3655204>: (repro assertion failure and crash loading java applets)
   15220 
   15221         Reviewed by kocienda.
   15222 
   15223         * WebCoreSupport.subproj/WebBridge.m:
   15224         (-[WebBridge pluginViewWithPackage:attributes:baseURL:]): call pluginViewWithArguments: for old Cocoa plug-ins
   15225 
   15226 2004-05-14  Chris Blumenberg  <cblu (a] apple.com>
   15227 
   15228         Copied headers from WebCore.
   15229 
   15230         * DOM.subproj/DOMCore.h:
   15231         * DOM.subproj/DOMEvents.h:
   15232 
   15233 2004-05-14  Ken Kocienda  <kocienda (a] apple.com>
   15234 
   15235         Reviewed by me
   15236 
   15237         * Plugins.subproj/WebPluginController.m:
   15238         (-[WebPluginController webPlugInContainerLoadRequest:inFrame:]): Fixed a compile error: undeclared identifier. 
   15239         Looked like a typo.
   15240 
   15241 2004-05-13  Richard Williamson   <rjw (a] apple.com>
   15242 
   15243         Backed out mistaken change that I didn't mean to checkin.
   15244 
   15245         * WebCoreSupport.subproj/WebBridge.m:
   15246         (-[WebBridge syncLoadResourceWithURL:customHeaders:postData:finalURL:responseHeaders:statusCode:]):
   15247 
   15248 2004-05-13  Richard Williamson   <rjw (a] apple.com>
   15249 
   15250         Updated to reflect new API.
   15251 
   15252         Reviewed by Chris.
   15253 
   15254         * WebCoreSupport.subproj/WebBridge.m:
   15255         (-[WebBridge setIsSelected:forView:]):
   15256         * WebView.subproj/WebFrame.m:
   15257         (-[WebFrame _reloadForPluginChanges]):
   15258 
   15259 2004-05-13  Chris Blumenberg  <cblu (a] apple.com>
   15260 
   15261         Fixed some indenting issues in public headers.
   15262 
   15263         * Plugins.subproj/WebJavaPlugIn.h:
   15264         * Plugins.subproj/WebPlugin.h:
   15265         * Plugins.subproj/WebScriptObject.h:
   15266         * WebView.subproj/WebEditingDelegate.h:
   15267         * WebView.subproj/WebFrameView.h:
   15268         * WebView.subproj/WebPolicyDelegate.h:
   15269         * WebView.subproj/WebResourceLoadDelegate.h:
   15270         * WebView.subproj/WebView.h:
   15271 
   15272 2004-05-13  Ken Kocienda  <kocienda (a] apple.com>
   15273 
   15274         Reviewed by Chris
   15275 
   15276         Moved -DOMDocument convenience back to private header.
   15277         I mistakenly moved it to the public header earlier today.
   15278 
   15279         * WebView.subproj/WebView.h: Removed
   15280         * WebView.subproj/WebViewPrivate.h: Re-added
   15281 
   15282 2004-05-13  Richard Williamson   <rjw (a] apple.com>
   15283 
   15284         Updated to implementation to reflect new API.  Left old SPI
   15285         in place for compatibility.  Can remove when the Java plug-in
   15286         updates.
   15287 
   15288         Reviewed by Chris.
   15289 
   15290         * Plugins.subproj/WebPlugin.h:
   15291         * Plugins.subproj/WebPluginContainer.h:
   15292         * Plugins.subproj/WebPluginController.h:
   15293         * Plugins.subproj/WebPluginController.m:
   15294         (-[WebPluginController startAllPlugins]):
   15295         (-[WebPluginController stopAllPlugins]):
   15296         (-[WebPluginController addPlugin:]):
   15297         (-[WebPluginController destroyAllPlugins]):
   15298         (-[WebPluginController webPlugInContainerLoadRequest:inFrame:]):
   15299         (-[WebPluginController showURL:inFrame:]):
   15300         (-[WebPluginController webPlugInContainerShowStatus:]):
   15301         (-[WebPluginController showStatus:]):
   15302         (-[WebPluginController webPlugInContainerSelectionColor]):
   15303         (-[WebPluginController selectionColor]):
   15304         (-[WebPluginController webFrame]):
   15305 
   15306 2004-05-13  Chris Blumenberg  <cblu (a] apple.com>
   15307 
   15308         - Added stubs for WebView action and drag & drop customization API's
   15309         - Fixed: <rdar://problem/3616555>: (API: Make DOM extensions and WebKit DOM operations public)
   15310 
   15311         Reviewed by rjw.
   15312 
   15313         * DOM.subproj/WebDOMOperations.h: added remaining DOM operations
   15314         * DOM.subproj/WebDOMOperationsPrivate.h:
   15315         * Misc.subproj/WebKit.h: added new public headers
   15316         * WebKit.pbproj/project.pbxproj:
   15317         * WebKit.exp: added symbol for WebElementDOMNodeKey
   15318         * WebView.subproj/WebUIDelegate.h: added new UI delegate methods
   15319         * WebView.subproj/WebView.h: added new pasteboard related methods
   15320         * WebView.subproj/WebView.m:
   15321         (+[WebView URLFromPasteboard:]): new stub
   15322         (+[WebView URLTitleFromPasteboard:]): new stub
   15323         (-[WebView dragOperationForDraggingInfo:]): new stub
   15324         (-[WebView pasteboardTypesForSelection]): new stub
   15325         (-[WebView writeSelectionWithPasteboardTypes:toPasteboard:]): new stub
   15326         (-[WebView pasteboardTypesForElement:]): new stub
   15327         (-[WebView writeElement:withPasteboardTypes:toPasteboard:]): new stub
   15328         * WebView.subproj/WebViewPrivate.h:
   15329 
   15330 2004-05-13  Richard Williamson   <rjw (a] apple.com>
   15331 
   15332         Changed imports of all DOM headers.  DOM headers
   15333         should be imported using the normal #import <WebCore/foo.h>,
   15334         they import is modified when copied to WebKit.
   15335 
   15336         Other approved API changes.  Currently unimplemented.
   15337 
   15338         Reviewed by Chris.
   15339 
   15340         * ChangeLog:
   15341         * DOM.subproj/DOM.h:
   15342         * DOM.subproj/DOMCSS.h:
   15343         * DOM.subproj/DOMCore.h:
   15344         * DOM.subproj/DOMEvents.h:
   15345         * DOM.subproj/DOMExtensions.h:
   15346         * DOM.subproj/DOMHTML.h:
   15347         * DOM.subproj/DOMRange.h:
   15348         * DOM.subproj/DOMStylesheets.h:
   15349         * DOM.subproj/DOMTraversal.h:
   15350         * DOM.subproj/DOMViews.h:
   15351         * Plugins.subproj/WebPlugin.h:
   15352         * Plugins.subproj/WebPluginContainer.h:
   15353         * Plugins.subproj/WebPluginPackage.m:
   15354         * Plugins.subproj/WebPluginViewFactory.h:
   15355         * Plugins.subproj/WebScriptObject.h:
   15356         * WebCoreSupport.subproj/WebBridge.m:
   15357         (-[WebBridge syncLoadResourceWithURL:customHeaders:postData:finalURL:responseHeaders:statusCode:]):
   15358         (-[WebBridge pluginViewWithPackage:attributes:baseURL:]):
   15359         * WebKit.exp:
   15360         * WebKit.pbproj/project.pbxproj:
   15361         * WebView.subproj/WebFrameLoadDelegate.h:
   15362         * WebView.subproj/WebView.h:
   15363         * WebView.subproj/WebView.m:
   15364         (-[WebView windowScriptObject]):
   15365         * copy-webcore-files-to-webkit:
   15366 
   15367 2004-05-13  Ken Kocienda  <kocienda (a] apple.com>
   15368 
   15369         Reviewed by Kevin
   15370 
   15371         Move WebKit editing APIs to public API files.
   15372 
   15373         * WebCoreSupport.subproj/WebBridge.m: Add WebEditingDelegate include.
   15374         * WebKit.pbproj/project.pbxproj: Go Xcode!
   15375         * WebView.subproj/WebDefaultEditingDelegate.m: Remove WebViewPrivate include; add WebEditingDelegate include.
   15376         * WebView.subproj/WebEditingDelegate.h: Added. New file.
   15377         * WebView.subproj/WebView.h: Move API-approved interfaces to this file.
   15378         * WebView.subproj/WebView.m: Add WebEditingDelegate include.
   15379         * WebView.subproj/WebViewPrivate.h: Move API-approved interfaces from this file.
   15380 
   15381 2004-05-12  Chris Blumenberg  <cblu (a] apple.com>
   15382 
   15383         Fixed: 
   15384         <rdar://problem/3633296>: (Japanese input is not working properly in Carbon Web Kit applications (including CarbonWeb))
   15385         <rdar://problem/3631390>: (can't toggle between Input Methods (IMEs) using cmd-space in Carbon Web Kit applications)
   15386 
   15387         Reviewed by rjw.
   15388 
   15389         * Carbon.subproj/CarbonWindowAdapter.m:
   15390         (-[CarbonWindowAdapter sendSuperEvent:]): call [NSInputContext processInputKeyBindings:inEvent] just as NSApp does
   15391         * Carbon.subproj/HIWebView.m:
   15392         (HIWebViewEventHandler): [NSApp setWindowsNeedUpdate:YES] must be called before events so that ActivateTSMDocument is called to set an active document. Without an active document, TSM will use a default document which uses a bottom-line input window which we don't want.
   15393 
   15394 2004-05-11  Chris Blumenberg  <cblu (a] apple.com>
   15395 
   15396         Fixed:
   15397         <rdar://problem/3616537>: (API: Make WebResource, WebArchive and related API's public)
   15398         <rdar://problem/3616471>: (API: provide way to get from WebFrame to DOMDocument and vice versa)
   15399 
   15400         Reviewed by rjw.
   15401 
   15402         * DOM.subproj/WebDOMOperations.h:
   15403         * DOM.subproj/WebDOMOperations.m:
   15404         (-[DOMHTMLFrameElement contentFrame]): new
   15405         (-[DOMHTMLIFrameElement contentFrame]): new
   15406         (-[DOMHTMLObjectElement contentFrame]): new
   15407         * DOM.subproj/WebDOMOperationsPrivate.h:
   15408         * Misc.subproj/WebNSImageExtras.m:
   15409         (-[NSImage _web_saveAndOpen]): fixed leak
   15410         * WebKit.pbproj/project.pbxproj:
   15411         * WebView.subproj/WebDataSource.h:
   15412         * WebView.subproj/WebDataSource.m:
   15413         (-[WebDataSource _addSubresources:]): made private
   15414         (-[WebDataSource _archiveWithMarkupString:nodes:]): handle object tags with frame content
   15415         (-[WebDataSource _archiveWithCurrentState:]): renamed from _archive, now takes flag
   15416         (-[WebDataSource _replaceSelectionWithArchive:]): call renamed _addSubresources
   15417         (-[WebDataSource webArchive]): new
   15418         (-[WebDataSource mainResource]): new
   15419         (-[WebDataSource subresources]): made public
   15420         (-[WebDataSource subresourceForURL:]): made public
   15421         (-[WebDataSource addSubresource:]): made public
   15422         * WebView.subproj/WebDataSourcePrivate.h:
   15423         * WebView.subproj/WebDocumentPrivate.h:
   15424         * WebView.subproj/WebFrame.h:
   15425         * WebView.subproj/WebFrame.m:
   15426         (-[WebFrame _loadRequest:subresources:subframeArchives:]): call renamed _addSubresources
   15427         (-[WebFrame DOMDocument]): new
   15428         (-[WebFrame frameElement]): new
   15429         (-[WebFrame loadArchive:]): made public
   15430         * WebView.subproj/WebFramePrivate.h:
   15431         * WebView.subproj/WebHTMLRepresentation.m:
   15432         (-[WebHTMLRepresentation loadArchive]): call renamed _addSubresources
   15433         * WebView.subproj/WebImageRepresentation.m:
   15434         (-[WebImageRepresentation archive]): call webArchive on WebDataSource
   15435 
   15436 2004-05-10  Maciej Stachowiak  <mjs (a] apple.com>
   15437 
   15438         Reviewed by Darin.
   15439 
   15440         - avoid redecoding animated images that are only used once for
   15441         ~2.5% iBench speedup (WebCore part of fix)
   15442 
   15443         * WebCoreSupport.subproj/WebImageRenderer.h:
   15444         * WebCoreSupport.subproj/WebImageRenderer.m:
   15445         (-[WebImageRenderer increaseUseCount]):
   15446         (-[WebImageRenderer decreaseUseCount]):
   15447         (-[WebImageRenderer retainOrCopyIfNeeded]):
   15448 
   15449 2004-05-10  Maciej Stachowiak  <mjs (a] apple.com>
   15450 
   15451         Fix build.
   15452 
   15453         * WebView.subproj/WebFrame.m:
   15454 
   15455 2004-05-09  Maciej Stachowiak  <mjs (a] apple.com>
   15456 
   15457         Reviewed by Ken.
   15458 
   15459         - avoid messing with undo manager needlessly for ~1% HTML iBench speedup
   15460 
   15461         * WebCoreSupport.subproj/WebBridge.h:
   15462         * WebCoreSupport.subproj/WebBridge.m:
   15463         (-[WebBridge registerCommandForUndo:]): mark undo/redo item flag
   15464         (-[WebBridge registerCommandForRedo:]): ditto
   15465         (-[WebBridge clearUndoRedoOperations]): check flag before removing items,
   15466         and clear it after removing them
   15467 
   15468 2004-05-08  Maciej Stachowiak  <mjs (a] apple.com>
   15469 
   15470         Reviewed by Darin.
   15471 
   15472         - -[WebFrame childFrames] is so hot that a special internal
   15473         version which avoids the copy and autorelease results in a .75%
   15474         performance improvement on HTML iBench.
   15475 
   15476         * WebView.subproj/WebFramePrivate.h: Prototype new method.
   15477         * WebView.subproj/WebFrame.m:
   15478         (-[WebFrame _internalChildFrames]): New method, just returns
   15479         internal value instead of copying.
   15480 
   15481         (-[WebFrame _descendantFrameNamed:]): Use it
   15482         (-[WebFrame _textSizeMultiplierChanged]): likewise
   15483         (-[WebFrame _viewWillMoveToHostWindow:]): likewise
   15484         (-[WebFrame _viewDidMoveToHostWindow]): likewise
   15485         (-[WebFrame _saveDocumentAndScrollState]): likewise
   15486         (-[WebFrame _numPendingOrLoadingRequests:]): likewise
   15487         (-[WebFrame _checkLoadComplete]): Refactored this and it's two
   15488         helpers a little so we could get away with using
   15489         _internalChildFrames.
   15490         (-[WebFrame _checkLoadCompleteForThisFrame]): Renamed from
   15491         _isLoadComplete
   15492         (-[WebFrame _recursiveCheckLoadComplete]): renamed from (class
   15493         method) _recursiveCheckCompleteFromFrame:
   15494         * WebView.subproj/WebDataSource.m:
   15495         (-[WebDataSource _defersCallbacksChanged]): Use it
   15496         (-[WebDataSource isLoading]): likewise
   15497         * WebView.subproj/WebView.m:
   15498         (-[WebView _frameForDataSource:fromFrame:]): likewise
   15499         (-[WebView _frameForView:fromFrame:]): likewise
   15500 
   15501 2004-05-10  Chris Blumenberg  <cblu (a] apple.com>
   15502 
   15503         Forgot to commit this copied header.
   15504 
   15505         * DOM.subproj/DOMExtensions.h:
   15506 
   15507 === Safari-139 ===
   15508 
   15509 2004-05-06  Chris Blumenberg  <cblu (a] apple.com>
   15510 
   15511         * DOM.subproj/WebDOMOperations.h: improved a header doc comment
   15512 
   15513 2004-05-05  Chris Blumenberg  <cblu (a] apple.com>
   15514 
   15515         - DOM Extensions API tweaks
   15516 
   15517         Reviewed by kocienda.
   15518 
   15519         * DOM.subproj/DOMExtensions.h: copied from WebCore
   15520         * DOM.subproj/WebDOMOperations.h: added header doc comments
   15521         * DOM.subproj/WebDOMOperations.m:
   15522         (-[DOMNode _URLsFromSelectors:]): use renamed URLWithAttributeString
   15523         (-[DOMDocument URLWithAttributeString:]): renamed
   15524         (-[DOMHTMLTableElement _web_background]): new private method
   15525         (-[DOMHTMLTableElement _subresourceURLs]): use new private method
   15526         (-[DOMHTMLTableCellElement _web_background]): new private method
   15527         (-[DOMHTMLTableCellElement _subresourceURLs]): use new private method
   15528 
   15529 2004-05-04  Ken Kocienda  <kocienda (a] apple.com>
   15530 
   15531         Reviewed by Hyatt
   15532 
   15533         * DOM.subproj/DOMTraversal.h: File coppied from WebCore
   15534 
   15535 2004-05-02  Darin Adler  <darin (a] apple.com>
   15536 
   15537         Reviewed by Ken.
   15538 
   15539         - fixed <rdar://problem/3640419>: "_webkit_stringByReplacingValidPercentEscapes does not handle %00 properly"
   15540 
   15541         * Misc.subproj/WebNSURLExtras.m: (-[NSString _webkit_stringByReplacingValidPercentEscapes]):
   15542         Use the function in NSURL instead of implementing our own here.
   15543 
   15544 2004-04-30  John Sullivan  <sullivan (a] apple.com>
   15545 
   15546         * WebView.subproj/WebView.m:
   15547         fixed deployment build breakage
   15548         
   15549 2004-04-30  John Sullivan  <sullivan (a] apple.com>
   15550 
   15551         - more work on getting the font panel to work with editable HTML.
   15552         The font panel in Blot now correctly reflects the first selected font when the
   15553         selection is at least one character long.
   15554 
   15555         Reviewed by Ken.
   15556 
   15557         * WebView.subproj/WebView.m:
   15558         removed unfinished plumbing to support reflecting selected attributes (e.g. text color,
   15559         underline) in font panel, since this doesn't work in Mail or TextEdit either.
   15560         (_fontFromStyle):
   15561         removed assertion for now
   15562         (-[WebView _updateFontPanel]):
   15563         now uses new bridge method to get the NSFont from the node, instead of trying
   15564         to create an NSFont from a DOMCSSStyleDeclaration
   15565 
   15566 2004-04-29  John Sullivan  <sullivan (a] apple.com>
   15567 
   15568         - more work on getting the font panel to work with editable HTML
   15569 
   15570         Reviewed by Ken.
   15571 
   15572         * WebView.subproj/WebView.m:
   15573         (-[WebView computedStyleForElement:pseudoElement:]):
   15574         convert nil pseudoElement to empty string because lower level chokes on nil
   15575         (_fontFromStyle):
   15576         I tried to implement this, but was thwarted by missing API, so I added a
   15577         bunch of FIXMEs instead
   15578         (_stylesRepresentSameFont):
   15579         new function, not yet implementable
   15580         (_stylesRepresentSameAttributes):
   15581         new function, not yet implementable
   15582         (-[WebView _updateFontPanel]):
   15583         added code to get first and last element in selection, and to use
   15584         NodeIterator to walk through the entire selection to see if more than one
   15585         font or set of attributes is in use. However, createNodeIterator is declared
   15586         in DOMTraversal.h but not actually defined anywhere, so I had to prevent this
   15587         code from actually being called.
   15588 
   15589 2004-04-28  Chris Blumenberg  <cblu (a] apple.com>
   15590 
   15591         - Made WebArchive and WebResource conform to NSCoding and NSCopying.
   15592 
   15593         Reviewed by rjw.
   15594 
   15595         * DOM.subproj/WebDOMOperations.h: added header doc comment for WebArchive methods
   15596         * WebView.subproj/WebArchive.h:
   15597         * WebView.subproj/WebArchive.m:
   15598         (-[WebArchive initWithCoder:]): new
   15599         (-[WebArchive encodeWithCoder:]): new
   15600         (-[WebArchive copyWithZone:]): new
   15601         * WebView.subproj/WebResource.h:
   15602         * WebView.subproj/WebResource.m:
   15603         (-[WebResource init]): new
   15604         (-[WebResource initWithData:URL:MIMEType:textEncodingName:frameName:]): call [self init]
   15605         (-[WebResource initWithCoder:]): new
   15606         (-[WebResource encodeWithCoder:]): new
   15607         (-[WebResource copyWithZone:]): new
   15608 
   15609 2004-04-28  John Sullivan  <sullivan (a] apple.com>
   15610 
   15611         A little bit more progress in wiring up the font panel.
   15612 
   15613         Reviewed by Ken.
   15614 
   15615         * WebView.subproj/WebViewInternal.h:
   15616         put _updateFontPanel here. Also moved _isLoading here, since it was
   15617         already in a category named WebInternal
   15618 
   15619         * WebView.subproj/WebView.m:
   15620         (-[WebView _isLoading]):
   15621         moved into WebInternal category implementation
   15622         (_textAttributesFromStyle):
   15623         changed from method to function
   15624         (_fontFromStyle):
   15625         added, guts not filled in yet
   15626         (-[WebView _updateFontPanel]):
   15627         now calls these two functions (but results are always nil)
   15628         (-[WebView setSelectedDOMRange:affinity:]):
   15629         remove call to _updateFontPanel here since it's now called in
   15630         the proper bottleneck
   15631 
   15632         * WebCoreSupport.subproj/WebBridge.m:
   15633         (-[WebBridge postDidChangeNotification]):
   15634         call -[WebView _updateFontPanel] in addition to sending notification
   15635         (-[WebBridge postDidChangeSelectionNotification]):
   15636         ditto
   15637 
   15638 2004-04-28  John Sullivan  <sullivan (a] apple.com>
   15639 
   15640         - fixed these bugs:
   15641         <rdar://problem/3636570>: "API: [WebPreferences tabsToLinks] should be public API"        
   15642         <rdar://problem/3610597>: "API: could turn "stealth browsing" preference into API"
   15643 
   15644         Reviewed by Darin.
   15645         
   15646         I just moved the declarations and implementations from one place to another.
   15647         (No clients in WebKit needed their #imports updated.) This confused cvs diff quite a bit.
   15648 
   15649         * WebView.subproj/WebPreferences.h:
   15650         * WebView.subproj/WebPreferences.m:
   15651         (-[WebPreferences setTabsToLinks:]):
   15652         (-[WebPreferences tabsToLinks]):
   15653         (-[WebPreferences setPrivateBrowsingEnabled:]):
   15654         (-[WebPreferences privateBrowsingEnabled]):
   15655         (-[WebPreferences _pageCacheSize]):
   15656         (-[WebPreferences _objectCacheSize]):
   15657         (-[WebPreferences _backForwardCacheExpirationInterval]):
   15658         * WebView.subproj/WebPreferencesPrivate.h:
   15659 
   15660 2004-04-27  David Hyatt  <hyatt (a] apple.com>
   15661 
   15662         Cut the time spent on an operation inside widthForNextCharacter from 17% of the function time down to less than 
   15663         5% merely by adding a check for non-zero letter-spacing (thus avoiding double precision math in the 
   15664         common case where we just add 0 between letters).
   15665         Reviewed by rjw
   15666 
   15667         * WebCoreSupport.subproj/WebTextRenderer.m:
   15668         (widthForNextCharacter):
   15669 
   15670 2004-04-28  John Sullivan  <sullivan (a] apple.com>
   15671 
   15672         Initial plumbing to get the font panel to be updated from an editable
   15673         WebView.
   15674 
   15675         Reviewed by Ken.
   15676 
   15677         * WebView.subproj/WebView.m:
   15678         (-[WebView _textAttributesFromStyle:]):
   15679         new dummy method, will need implementation
   15680         (-[WebView _updateFontPanel]):
   15681         new method, sets the font shown in the font panel from the current
   15682         selection. Lots of placeholder stuff.
   15683         (-[WebView setSelectedDOMRange:affinity:]):
   15684         call _updateFontPanel here for now.
   15685 
   15686 2004-04-28  Ken Kocienda  <kocienda (a] apple.com>
   15687 
   15688         Reviewed by Darin
   15689 
   15690         * WebCoreSupport.subproj/WebBridge.m:
   15691         (-[WebBridge postDidChangeNotification]): Posts Cocoa notification when the document changes
   15692         due to editing.
   15693         (-[WebBridge postDidChangeSelectionNotification]): Posts Cocoa notification when the document selection
   15694         changes.
   15695         * WebKit.exp: Export editing notification string constants.
   15696         * WebView.subproj/WebView.m: Define editing notification string constants.
   15697         (-[WebView computedStyleForElement:pseudoElement:]): Add implementation.
   15698         (-[WebView setEditingDelegate:]): Do work to set up delegate to receive notification callbacks.
   15699         (-[WebView DOMDocument]): Simplify to just call the bridge DOMDocument. No need to jump through hoops here.
   15700         (-[WebView insertNewline:]): Consult delegate before taking action.
   15701         (-[WebView deleteBackward:]): Ditto.
   15702         (-[WebView insertText:]): Ditto.
   15703 
   15704 2004-04-27  John Sullivan  <sullivan (a] apple.com>
   15705 
   15706         Fixed broken development build.
   15707 
   15708         * WebView.subproj/WebFrame.m:
   15709         (-[WebFrame _transitionToLayoutAcceptable]):
   15710         updated bad variable name used only in LOG statement to match
   15711         recent change.
   15712 
   15713 2004-04-27  Richard Williamson   <rjw (a] apple.com>
   15714 
   15715         Fixes for:
   15716 
   15717         <rdar://problem/3279301>: API: WebKitErrorCannotFindPlugin and WebKitErrorCannotLoadPlugin should use PlugIn
   15718         <rdar://problem/3278513>: API: Need API to control the size of WebHistory
   15719         <rdar://problem/3564519>: API: please add a way to set the media type for a WebView
   15720         <rdar://problem/3565642>: API: allow a way to extend the MIME types that a WebView will display
   15721         <rdar://problem/3577693>: API: add ability to subclass WebView but still use it with Carbon
   15722         
   15723         Reviewed by Chris.
   15724 
   15725         * Carbon.subproj/HIWebView.h:
   15726         * Carbon.subproj/HIWebView.m:
   15727         (HIWebViewCreate):
   15728         (HIWebViewCreateWithClass):
   15729         (HIWebViewConstructor):
   15730         * History.subproj/WebHistory.h:
   15731         * History.subproj/WebHistory.m:
   15732         (-[WebHistoryPrivate setHistoryAgeInDaysLimit:]):
   15733         (-[WebHistoryPrivate historyAgeInDaysLimit]):
   15734         (-[WebHistoryPrivate setHistoryItemLimit:]):
   15735         (-[WebHistoryPrivate historyItemLimit]):
   15736         (-[WebHistoryPrivate _ageLimitDate]):
   15737         (-[WebHistoryPrivate arrayRepresentation]):
   15738         (-[WebHistory setHistoryItemLimit:]):
   15739         (-[WebHistory historyItemLimit]):
   15740         (-[WebHistory setHistoryAgeInDaysLimit:]):
   15741         (-[WebHistory historyAgeInDaysLimit]):
   15742         * History.subproj/WebHistoryPrivate.h:
   15743         * Misc.subproj/WebKitErrors.h:
   15744         * Misc.subproj/WebKitErrors.m:
   15745         (registerErrors):
   15746         * Plugins.subproj/WebNetscapePluginDocumentView.m:
   15747         (-[WebNetscapePluginDocumentView setDataSource:]):
   15748         * WebCoreSupport.subproj/WebBridge.m:
   15749         (-[WebBridge isViewSelected:]):
   15750         (-[WebBridge overrideMediaType]):
   15751         * WebView.subproj/WebView.h:
   15752         * WebView.subproj/WebView.m:
   15753         (-[WebViewPrivate dealloc]):
   15754         (+[WebView MIMETypesShownAsHTML]):
   15755         (+[WebView setMIMETypesShownAsHTML:]):
   15756         (-[WebView customUserAgent]):
   15757         (-[WebView setMediaStyle:]):
   15758         (-[WebView mediaStyle]):
   15759         * WebView.subproj/WebViewPrivate.h:
   15760 
   15761 2004-04-27  David Hyatt  <hyatt (a] apple.com>
   15762 
   15763         Eliminate the preferences for timed/resource layouts.  Accessing them is now taking 0.5% on the cvs-base
   15764         test, so we're just going to hardcode the values instead.
   15765         Reviewed by mjs
   15766 
   15767         * WebView.subproj/WebFrame.m:
   15768         (-[WebFrame _transitionToLayoutAcceptable]):
   15769         (-[WebFrame _isLoadComplete]):
   15770         * WebView.subproj/WebPreferences.m:
   15771         (+[WebPreferences initialize]):
   15772         (-[WebPreferences _objectCacheSize]):
   15773         * WebView.subproj/WebPreferencesPrivate.h:
   15774         * WebView.subproj/WebView.m:
   15775         (-[WebView _mainReceivedBytesSoFar:fromDataSource:complete:]):
   15776 
   15777 2004-04-27  Ken Kocienda  <kocienda (a] apple.com>
   15778 
   15779         Reviewed by Hyatt
   15780         
   15781         Make selections draw in a more Cocoa-like way, where
   15782         fully-selected lines draw out to the ends of lines, and
   15783         spaces between lines are drawn with the selection color as well.
   15784 
   15785         * Misc.subproj/WebKitNSStringExtras.m: Use new WebCoreTextGeometry struct. No change in functionality.
   15786         * WebCoreSupport.subproj/WebTextRenderer.m:
   15787         (-[WebTextRenderer drawRun:style:geometry:]): Use new WebCoreTextGeometry struct. No change in functionality.
   15788         (-[WebTextRenderer drawHighlightForRun:style:geometry:]): Ditto.
   15789         (-[WebTextRenderer _CG_drawHighlightForRun:style:geometry:]): Many changes to add the new selection drawing behavior.
   15790         (-[WebTextRenderer _CG_drawRun:style:geometry:]):  Use new WebCoreTextGeometry struct. No change in functionality.
   15791         (-[WebTextRenderer _ATSU_drawHighlightForRun:style:geometry:]): Many changes to add the new selection drawing behavior.
   15792         (-[WebTextRenderer _ATSU_drawRun:style:geometry:]):  Use new WebCoreTextGeometry struct. No change in functionality.
   15793 
   15794 2004-04-26  Richard Williamson   <rjw (a] apple.com>
   15795 
   15796         Added support for specifying composite operation on an
   15797         image element, i.e.:
   15798 
   15799         <img composite="source-over" src="triangle.png">
   15800         <img style="position:relative; left:-200px;" composite="destination-in" src="circle.png">
   15801 
   15802         This feature was requested by the dashboard guys.  They can use it to apply
   15803         transparency masks to widgies.
   15804 
   15805 
   15806         Reviewed by Ken.
   15807 
   15808         * WebCoreSupport.subproj/WebImageRenderer.h:
   15809         * WebCoreSupport.subproj/WebImageRenderer.m:
   15810         (-[WebImageRenderer initWithMIMEType:]):
   15811         (-[WebImageRenderer initWithData:MIMEType:]):
   15812         (-[WebImageRenderer initWithContentsOfFile:]):
   15813         (-[WebImageRenderer copyWithZone:]):
   15814         (-[WebImageRenderer drawClippedToValidInRect:fromRect:]):
   15815         (-[WebImageRenderer drawImageInRect:fromRect:]):
   15816         (-[WebImageRenderer drawImageInRect:fromRect:compositeOperator:]):
   15817 
   15818 2004-04-26  Chris Blumenberg  <cblu (a] apple.com>
   15819 
   15820         More header doc changes after John's review.
   15821         * WebView.subproj/WebDataSourcePrivate.h:
   15822         * WebView.subproj/WebResource.h:
   15823 
   15824 2004-04-26  Chris Blumenberg  <cblu (a] apple.com>
   15825 
   15826         * WebView.subproj/WebDataSourcePrivate.h: added some header doc comments
   15827         * WebView.subproj/WebFramePrivate.h: fixed header doc typo
   15828 
   15829 2004-04-24  Darin Adler  <darin (a] apple.com>
   15830 
   15831         Reviewed by Dave.
   15832 
   15833         * Misc.subproj/WebNSURLExtras.m: (hexDigit): Use capitalized hex, not lowercase, for consistency
   15834         with similar functions in WebCore and what other web browsers do.
   15835 
   15836 2004-04-23  Darin Adler  <darin (a] apple.com>
   15837 
   15838         Reviewed by Maciej.
   15839 
   15840         - fixed <rdar://problem/3627362>: "bad access with libgmalloc in -[_WebCoreHistoryProvider containsItemForURLUnicode:length:]"
   15841 
   15842         * History.subproj/WebHistory.m:
   15843         (-[_WebCoreHistoryProvider containsItemForURLUnicode:length:]): Add range checks so we
   15844         don't overrun the buffer while looking for slashes.
   15845 
   15846 2004-04-23  Chris Blumenberg  <cblu (a] apple.com>
   15847 
   15848         Reviewed by John
   15849 
   15850         Added header doc comments to proposed API's.
   15851 
   15852         * WebView.subproj/WebArchive.h:
   15853         * WebView.subproj/WebFramePrivate.h:
   15854         * WebView.subproj/WebResource.h:
   15855 
   15856 === Safari-138 ===
   15857 
   15858 2004-04-23  Ken Kocienda  <kocienda (a] apple.com>
   15859 
   15860         Reviewed by John
   15861 
   15862         Added some plumbing for applying styles.
   15863 
   15864         * DOM.subproj/DOMExtensions.h: Copied from WebCore.
   15865         * WebView.subproj/WebView.m:
   15866         (-[WebView DOMDocument]): Added new helper.
   15867         (-[WebView styleDeclarationWithText:]): Added new helper.
   15868         * WebView.subproj/WebViewPrivate.h: Declare above methods.
   15869 
   15870 2004-04-22  Richard Williamson   <rjw (a] apple.com>
   15871 
   15872         Updates to plugin binding APIs.
   15873         Updates to Java plugin APIs.
   15874         Transparency fix for Dashboard.
   15875         Reviewed by John and Greg Bolsinga.
   15876 
   15877         * Plugins.subproj/WebPluginJava.h: Added.
   15878         New API for Java plugin.        
   15879 
   15880         * Plugins.subproj/npfunctions.h:
   15881         * Plugins.subproj/npruntime.h:
   15882         (_NPString::):
   15883         (_NPString::_NPVariant::):
   15884         * Plugins.subproj/npsap.h: Added.
   15885         New API for plugin bindings.        
   15886 
   15887         * WebView.subproj/WebHTMLView.m:
   15888         (-[WebHTMLView drawRect:]):
   15889         Update for Dashboard.  View must fill with transparency when not
   15890         drawing background.        
   15891 
   15892         * copy-webcore-files-to-webkit:
   15893 
   15894 2004-04-22  Ken Kocienda  <kocienda (a] apple.com>
   15895 
   15896         Reviewed by Hyatt
   15897 
   15898         More work to bring code up to date with the latest API proposal. Note that
   15899         all of the replaceXXX methods below now operate on the current selection, so
   15900         the method implementations have been simplifed accordingly.
   15901 
   15902         * WebView.subproj/WebDataSource.m:
   15903         (-[WebDataSource _replaceSelectionWithArchive:]): New name for _replaceSelectionWithWebArchive.
   15904         * WebView.subproj/WebDataSourcePrivate.h: Ditto.
   15905         * WebView.subproj/WebDefaultEditingDelegate.m:
   15906         (-[WebDefaultEditingDelegate webViewShouldBeginEditing:inDOMRange:]): Added inDOMRange: parameter.
   15907         (-[WebDefaultEditingDelegate webViewShouldEndEditing:inDOMRange:]): Ditto.
   15908         (-[WebDefaultEditingDelegate webView shouldChangeSelectedDOMRange:toDOMRange:proposedRange affinity:stillSelecting:]):
   15909         Missed adding affinity in last patch.
   15910         * WebView.subproj/WebHTMLView.m:
   15911         (-[WebHTMLView _pasteFromPasteboard:]): Call old method with new name: _replaceSelectionWithArchive
   15912         * WebView.subproj/WebView.m:
   15913         (-[WebView replaceSelectionWithNode:]): New version of insertNode:replacingDOMRange:
   15914         (-[WebView replaceSelectionWithText:]): New version of insertText:replacingDOMRange:
   15915         (-[WebView replaceSelectionWithMarkupString:]): New version of insertMarkupString:replacingDOMRange:
   15916         (-[WebView replaceSelectionWithArchive:]): New version of insertWebArchive:replacingDOMRange:
   15917         (-[WebView deleteSelection]): New version of deleteDOMRange:
   15918         (-[WebView applyStyle:]): New version of applyStyle:toElementsInDOMRange:
   15919         * WebView.subproj/WebViewPrivate.h:
   15920 
   15921 2004-04-22  Ken Kocienda  <kocienda (a] apple.com>
   15922 
   15923         Reviewed by John
   15924 
   15925         Adds the notion of selection affinity to the editing API, bringing it up to
   15926         date with the latest proposal.
   15927 
   15928         * WebView.subproj/WebView.m:
   15929         (-[WebView _alterCurrentSelection:direction:granularity:]): Pass selection affinity
   15930         to the delegate. We can just pass the current one since this does not change with arrow keys.
   15931         (-[WebView setSelectedDOMRange:affinity:]): Set the affinity on the selection.
   15932         (-[WebView selectionAffinity]): New accessor.
   15933         (-[WebView insertNode:replacingDOMRange:]): Change to pass selection affinity to call
   15934         to set selection. This is just to get the code to compile for now, since this method
   15935         will soon be removed in place of a similar one from the latest proposal that always
   15936         works on the current selection.
   15937         (-[WebView insertText:replacingDOMRange:]): Ditto.
   15938         (-[WebView insertMarkupString:replacingDOMRange:]): Ditto.
   15939         (-[WebView insertWebArchive:replacingDOMRange:]): Ditto.
   15940         (-[WebView deleteDOMRange:]): Ditto.
   15941         (-[WebView applyStyle:toElementsInDOMRange:]): Ditto.
   15942         * WebView.subproj/WebViewPrivate.h: Add selection affinity to API declarations as needed.
   15943 
   15944 2004-04-22  Ken Kocienda  <kocienda (a] apple.com>
   15945 
   15946         Reviewed by Darin
   15947 
   15948         Work around this bug:
   15949         <rdar://problem/3630640>: "Calling interpretKeyEvents: in a custom text view can fail to process keys right after app startup"
   15950 
   15951         * WebView.subproj/WebView.m:
   15952         (-[WebView _editingKeyDown:]): The issue is with a message to nil in AppKit
   15953         key binding manager code. Add call to [NSKeyBindingManager sharedKeyBindingManager] to make
   15954         sure the not-supposed-to-be-nil object is created before calling interpretKeyEvents:.
   15955 
   15956 2004-04-22  Ken Kocienda  <kocienda (a] apple.com>
   15957 
   15958         Reviewed by Hyatt
   15959 
   15960         Added calls to ensure caret visibility after the editing action is done.
   15961 
   15962         * WebView.subproj/WebView.m:
   15963         (-[WebView _alterCurrentSelection:direction:granularity:]):
   15964         (-[WebView insertNewline:]):
   15965         (-[WebView deleteBackward:]):
   15966         (-[WebView insertText:]):
   15967 
   15968 2004-04-20  Chris Blumenberg  <cblu (a] apple.com>
   15969 
   15970         Fixed: <rdar://problem/3605209>: "HITLIST: REGRESSION (131-132): iframes/frames no longer dump on layout tests"
   15971 
   15972         Reviewed by hyatt.
   15973 
   15974         * WebView.subproj/WebHTMLRepresentation.m:
   15975         (-[WebHTMLRepresentation finishedLoadingWithDataSource:]): the encoding was not being set in the about:blank case. Call receivedData:textEncodingName: as we did in the past to set it.
   15976 
   15977 2004-04-20  Ken Kocienda  <kocienda (a] apple.com>
   15978 
   15979         Reviewed by Hyatt
   15980 
   15981          Added implementations for these methods.
   15982 
   15983         * WebView.subproj/WebView.m:
   15984         (-[WebView moveUpAndModifySelection:]):
   15985         (-[WebView moveWordLeft:]):
   15986         (-[WebView moveWordLeftAndModifySelection:]):
   15987         (-[WebView moveWordRight:]):
   15988         (-[WebView moveWordRightAndModifySelection:]):
   15989 
   15990 2004-04-20  John Sullivan  <sullivan (a] apple.com>
   15991 
   15992         - fixed <rdar://problem/3622393>: When in stealth mode, visited webpage 
   15993         contents should not be cached to disk
   15994 
   15995         Reviewed by Ken.
   15996 
   15997         * WebView.subproj/WebBaseResourceHandleDelegate.m:
   15998         (-[WebBaseResourceHandleDelegate willCacheResponse:]):
   15999         if will cache to disk and in stealth mode, replace cache response with
   16000         an identical one that won't cache to disk.
   16001 
   16002 2004-04-19  Ken Kocienda  <kocienda (a] apple.com>
   16003 
   16004         Reviewed by Hyatt
   16005 
   16006         * WebView.subproj/WebView.m:
   16007         (-[WebView moveDown:]): Added implementation.
   16008         (-[WebView moveUp:]): Added implementation.
   16009 
   16010 2004-04-19  Chris Blumenberg  <cblu (a] apple.com>
   16011 
   16012         Added support for pasting frames via WebArchives.
   16013 
   16014         Reviewed by kocienda.
   16015 
   16016         * WebView.subproj/WebDataSource.m:
   16017         (-[WebDataSource _addSubframeArchives:]): renamed, now allows subframe archives to be added at anytime
   16018         (-[WebDataSource _popSubframeArchiveWithName:]): renamed, now deletes the returned subframe to consume less memory
   16019         (-[WebDataSource _replaceSelectionWithWebArchive:]): added support for subframes
   16020         * WebView.subproj/WebDataSourcePrivate.h:
   16021         * WebView.subproj/WebFrame.m:
   16022         (-[WebFrame _loadRequest:subresources:subframeArchives:]): call renamed methods
   16023         (-[WebFrame _loadURL:intoChild:]): ditto
   16024         * WebView.subproj/WebHTMLRepresentation.m:
   16025         (-[WebHTMLRepresentation loadArchive]): ditto
   16026 
   16027 === Safari-137 ===
   16028 
   16029 2004-04-16  Richard Williamson   <rjw (a] apple.com>
   16030 
   16031         Added an SPI to allow ObjC instances to be easily bound to 
   16032         JS.  This is needed by the dashboard guys for their prototyping.
   16033         Eventually they will use new API.
   16034 
   16035         Reviewed by Chris.
   16036 
   16037         * WebView.subproj/WebView.m:
   16038         (-[WebView _bindObject:withName:toFrame:]):
   16039         * WebView.subproj/WebViewPrivate.h:
   16040 
   16041 2004-04-16  Chris Blumenberg  <cblu (a] apple.com>
   16042 
   16043         Fixed: <rdar://problem/3587599>: Mail Page, Web Archives don't preserve subframes
   16044         Moved code that assembled subresource URLs from DOM nodes from WebCore to WebKit.
   16045 
   16046         Reviewed by rjw.
   16047 
   16048         * DOM.subproj/DOMExtensions.h: copied from WebCore
   16049         * DOM.subproj/WebDOMOperations.h:
   16050         * DOM.subproj/WebDOMOperations.m:
   16051         (-[DOMNode webArchive]): call renamed methods
   16052         (-[DOMNode markupString]): ditto
   16053         (-[DOMNode _URLsFromSelectors:]): new, returns array of URLs given selectors
   16054         (-[DOMNode _subresourceURLs]): new, base class does nothing, subclasses call _URLsFromSelectors with URL selectors
   16055         (-[DOMDocument webFrame]): new
   16056         (-[DOMRange webArchive]): call renamed methods
   16057         (-[DOMRange markupString]): ditto
   16058         (-[DOMHTMLBodyElement _subresourceURLs]): new
   16059         (-[DOMHTMLInputElement _subresourceURLs]): new
   16060         (-[DOMHTMLLinkElement _subresourceURLs]): new
   16061         (-[DOMHTMLScriptElement _subresourceURLs]): new
   16062         (-[DOMHTMLImageElement _subresourceURLs]): new
   16063         (-[DOMHTMLEmbedElement _subresourceURLs]): new
   16064         (-[DOMHTMLObjectElement _subresourceURLs]): new
   16065         (-[DOMHTMLParamElement _subresourceURLs]): new
   16066         (-[DOMHTMLTableElement _subresourceURLs]): new
   16067         (-[DOMHTMLTableCellElement _subresourceURLs]): new
   16068         * WebKit.pbproj/project.pbxproj:
   16069         * WebView.subproj/WebArchive.h:
   16070         * WebView.subproj/WebArchive.m:
   16071         (-[WebArchivePrivate dealloc]): release new subframeArchives ivar
   16072         (-[WebArchive initWithMainResource:subresources:subframeArchives:]): take subframeArchives
   16073         (-[WebArchive _initWithPropertyList:]): new, recursively creates WebArchives
   16074         (-[WebArchive initWithData:]): call _initWithPropertyList
   16075         (-[WebArchive subframeArchives]): new
   16076         (-[WebArchive _propertyListRepresentation]): new, recursively creates property lists of WebArchives
   16077         (-[WebArchive data]): call _propertyListRepresentation
   16078         * WebView.subproj/WebBaseResourceHandleDelegate.m:
   16079         (-[WebBaseResourceHandleDelegate saveResource]): call renamed methods
   16080         * WebView.subproj/WebDataSource.m:
   16081         (-[WebDataSourcePrivate dealloc]): release new pendingSubframeArchives ivar
   16082         (-[WebDataSource _archiveWithMarkupString:nodes:]): renamed and reimplemented, handles subframes
   16083         (-[WebDataSource _archive]): new
   16084         (-[WebDataSource _setPendingSubframeArchives:]): new
   16085         (-[WebDataSource _archiveForFrameName:]): new
   16086         * WebView.subproj/WebDataSourcePrivate.h:
   16087         * WebView.subproj/WebFrame.m:
   16088         (-[WebFrame loadArchive:]): handle subframes
   16089         (-[WebFrame _loadRequest:subresources:subframeArchives:]): ditto
   16090         (-[WebFrame _loadURL:intoChild:]): use the subframe archive if we have it
   16091         (-[WebFrame loadRequest:]): call renamed methods
   16092         * WebView.subproj/WebFramePrivate.h:
   16093         * WebView.subproj/WebHTMLRepresentation.m:
   16094         (-[WebHTMLRepresentation loadWebArchive]): call renamed methods and handle subframes
   16095         * WebView.subproj/WebHTMLView.m:
   16096         (-[WebHTMLView _selectedArchive:]): call renamed methods
   16097         (-[WebHTMLView _pasteFromPasteboard:]): call renamed methods
   16098         * WebView.subproj/WebHTMLViewPrivate.h:
   16099         * WebView.subproj/WebImageRepresentation.h:
   16100         * WebView.subproj/WebImageRepresentation.m: instead of storing some items from the data source, just store the data source
   16101         (-[WebImageRepresentation dealloc]): removed use of deleted ivars
   16102         (-[WebImageRepresentation URL]): use dataSource instead of ivar
   16103         (-[WebImageRepresentation doneLoading]): use new boolean ivar
   16104         (-[WebImageRepresentation setDataSource:]): store the data source
   16105         (-[WebImageRepresentation receivedData:withDataSource:]): use dataSource instead of ivar
   16106         (-[WebImageRepresentation receivedError:withDataSource:]): ditto
   16107         (-[WebImageRepresentation finishedLoadingWithDataSource:]): ditto
   16108         (-[WebImageRepresentation title]): ditto
   16109         (-[WebImageRepresentation data]): ditto
   16110         (-[WebImageRepresentation filename]): ditto
   16111         (-[WebImageRepresentation archive]): ditto
   16112         * WebView.subproj/WebResource.h:
   16113         * WebView.subproj/WebResource.m:
   16114         (-[WebResourcePrivate dealloc]): release new frame name ivar
   16115         (-[WebResource initWithData:URL:MIMEType:textEncodingName:frameName:]): take a frame name
   16116         (-[WebResource frameName]): new
   16117         (-[WebResource _initWithPropertyList:]): handle frame name
   16118         (-[WebResource _initWithCachedResponse:originalURL:]): call renamed methods
   16119         (-[WebResource _propertyListRepresentation]):
   16120         * WebView.subproj/WebResourcePrivate.h: handle frame name
   16121 
   16122 2004-04-15  David Hyatt  <hyatt (a] apple.com>
   16123 
   16124         Make sure isOpaque returns NO when the WebHTMLVIew doesn't draw its background.
   16125         Reviewed by darin
   16126 
   16127         * WebView.subproj/WebFrameView.m:
   16128         (-[WebFrameView isOpaque]):
   16129         * WebView.subproj/WebHTMLView.m:
   16130         (-[WebHTMLView isOpaque]):
   16131 
   16132 2004-04-15  John Sullivan  <sullivan (a] apple.com>
   16133 
   16134         * WebView.subproj/WebPreferencesPrivate.h:
   16135         added comments
   16136 
   16137 2004-04-14  Richard Williamson   <rjw (a] apple.com>
   16138 
   16139         Updated fix for 3576315.  Don't hardcode 22 as the titlebar
   16140         height.  (Note, other places in CarbonWindowFrame DO hardcode
   16141         window geometry information, yuck!).
   16142 
   16143         Reviewed by Hyatt.
   16144 
   16145         * Carbon.subproj/CarbonWindowFrame.m:
   16146 
   16147 2004-04-14  John Sullivan  <sullivan (a] apple.com>
   16148 
   16149         - changed stealth mode preference name from "historyIsFrozen"
   16150         to "privateBrowsingEnabled"
   16151 
   16152         Reviewed by Darin.
   16153 
   16154         * WebView.subproj/WebFrame.m:
   16155         (-[WebFrame _transitionToCommitted:]):
   16156         updated for method name change
   16157         
   16158         * WebView.subproj/WebPreferences.m:
   16159         changed preference key name
   16160         (+[WebPreferences initialize]):
   16161         updated for preference key name change
   16162         (-[WebPreferences setPrivateBrowsingEnabled:]):
   16163         changed name from setHistoryIsFrozen:
   16164         (-[WebPreferences privateBrowsingEnabled]):
   16165         changed name from historyIsFrozen:
   16166         
   16167         * WebView.subproj/WebPreferencesPrivate.h:
   16168         changed declared method names
   16169 
   16170         * English.lproj/StringsNotToBeLocalized.txt:
   16171         updated for this and other recent changes
   16172 
   16173 2004-04-13  Chris Blumenberg  <cblu (a] apple.com>
   16174 
   16175         - Added WebElementDOMNodeKey as a potential API so that clients can get the node from an element dictionary.
   16176         - Removed WebElementIsEditableKey. This functionality is available via [DOMNode isContentEditable].
   16177 
   16178         Reviewed by rjw.
   16179 
   16180         * DOM.subproj/WebDOMOperations.h:
   16181         * DOM.subproj/WebDOMOperations.m:
   16182         (-[DOMDocument URLWithRelativeString:]): new potential API
   16183         * WebView.subproj/WebDefaultContextMenuDelegate.m:
   16184         (-[WebDefaultUIDelegate webView:contextMenuItemsForElement:defaultMenuItems:]): indenting tweak
   16185         (-[WebDefaultUIDelegate copyImageToClipboard:]): use WebElementDOMNodeKey
   16186         * WebView.subproj/WebHTMLView.m:
   16187         (-[WebHTMLView _handleMouseDragged:]): use WebElementDOMNodeKey
   16188         (-[WebHTMLView _dragOperationForDraggingInfo:]): use isContentEditable
   16189         * WebView.subproj/WebView.h:
   16190         * WebView.subproj/WebView.m:
   16191         * WebView.subproj/WebViewPrivate.h:
   16192 
   16193 2004-04-13  Chris Blumenberg  <cblu (a] apple.com>
   16194 
   16195         Fixed deployment build failure.
   16196 
   16197         Reviewed by john.
   16198 
   16199         * WebView.subproj/WebHTMLView.m:
   16200         (-[WebHTMLView _handleMouseDragged:]): removed use of fileWrapper variable
   16201 
   16202 2004-04-12  Chris Blumenberg  <cblu (a] apple.com>
   16203 
   16204         Factored out WebArchive to DOM code so that it could be used by both [WebHTMLView _pasteFromPasteboard:] and [WebView insertWebArchive:replacingDOMRange:].
   16205 
   16206         Reviewed by kocienda.
   16207 
   16208         * WebView.subproj/WebDataSource.m:
   16209         (-[WebDataSource _replaceSelectionWithMarkupString:baseURL:]): moved from WebHTMLView
   16210         (-[WebDataSource _replaceSelectionWithImageResource:]): ditto
   16211         (-[WebDataSource _replaceSelectionWithWebArchive:]): ditto
   16212         * WebView.subproj/WebDataSourcePrivate.h:
   16213         * WebView.subproj/WebHTMLView.m:
   16214         (-[WebHTMLView _replaceSelectionWithMarkupString:]): renamed
   16215         (-[WebHTMLView _pasteFromPasteboard:]): call renamed methods
   16216         * WebView.subproj/WebView.m:
   16217         (-[WebView insertMarkupString:replacingDOMRange:]): call renamed methods
   16218         (-[WebView insertWebArchive:replacingDOMRange:]): have data source handle the archive instead of the bridge
   16219 
   16220 2004-04-12  Ken Kocienda  <kocienda (a] apple.com>
   16221 
   16222         Reviewed by Dave
   16223         
   16224         Added execCommand support for cut/copy/paste.
   16225 
   16226         * WebCoreSupport.subproj/WebBridge.m:
   16227         (-[WebBridge issueCutCommand]): Glue for calling from WebCore to do a cut in Cocoa.
   16228         (-[WebBridge issueCopyCommand]): Same as above, but for copy.
   16229         (-[WebBridge issuePasteCommand]): Same as above, but for paste.
   16230         * WebView.subproj/WebHTMLView.m:
   16231         (-[WebHTMLView copy:]): Move this to private implementation category so the bridge can see it.
   16232         (-[WebHTMLView cut:]): Ditto.
   16233         (-[WebHTMLView paste:]): Ditto.
   16234         * WebView.subproj/WebHTMLViewPrivate.h: Move copy;, cut:, and paste: to private implementation 
   16235         category so the bridge can see it.
   16236         * WebView.subproj/WebView.m:
   16237         (-[WebView copy:]): Implemented by calling WebHTMLView to do the work.
   16238         (-[WebView cut:]): Ditto.
   16239         (-[WebView paste:]): Ditto.
   16240         * WebView.subproj/WebViewPrivate.h: Added all the NSReponder methods we plan to implement as
   16241         part of the WebKit editing API.
   16242 
   16243 2004-04-09  Ken Kocienda  <kocienda (a] apple.com>
   16244 
   16245         Reviewed by Darin
   16246 
   16247         Stubbed in the entire WebKit editing API, improving some
   16248         methods already present in minor ways, and adding those 
   16249         methods not yet present.
   16250 
   16251         * WebCoreSupport.subproj/WebBridge.m:
   16252         (-[WebBridge editingKeyDown:]):
   16253         * WebView.subproj/WebDefaultEditingDelegate.m:
   16254         (-[WebDefaultEditingDelegate webView:shouldChangeSelectedDOMRange:toDOMRange:stillSelecting:]):
   16255         * WebView.subproj/WebHTMLView.m:
   16256         (-[WebHTMLView _pasteMarkupString:]):
   16257         * WebView.subproj/WebView.m:
   16258         (-[WebView _alterCurrentSelection:direction:granularity:]):
   16259         (-[WebView _currentSelectionIsEditable]):
   16260         (-[WebView computedStyleForElement:pseudoElement:]):
   16261         (-[WebView _editingKeyDown:]):
   16262         (-[WebView setEditable:]):
   16263         (-[WebView isEditable]):
   16264         (-[WebView setTypingStyle:]):
   16265         (-[WebView typingStyle]):
   16266         (-[WebView setSmartInsertDeleteEnabled:]):
   16267         (-[WebView smartInsertDeleteEnabled]):
   16268         (-[WebView setContinuousSpellCheckingEnabled:]):
   16269         (-[WebView isContinuousSpellCheckingEnabled]):
   16270         (-[WebView spellCheckerDocumentTag]):
   16271         (-[WebView undoManager]):
   16272         (-[WebView insertNode:replacingDOMRange:]):
   16273         (-[WebView insertText:replacingDOMRange:]):
   16274         (-[WebView insertMarkupString:replacingDOMRange:]):
   16275         (-[WebView insertWebArchive:replacingDOMRange:]):
   16276         (-[WebView deleteDOMRange:]):
   16277         (-[WebView applyStyle:toElementsInDOMRange:]):
   16278         (-[WebView centerSelectionInVisibleArea:]):
   16279         (-[WebView moveBackward:]):
   16280         (-[WebView moveBackwardAndModifySelection:]):
   16281         (-[WebView moveDown:]):
   16282         (-[WebView moveDownAndModifySelection:]):
   16283         (-[WebView moveForward:]):
   16284         (-[WebView moveForwardAndModifySelection:]):
   16285         (-[WebView moveLeft:]):
   16286         (-[WebView moveLeftAndModifySelection:]):
   16287         (-[WebView moveRight:]):
   16288         (-[WebView moveRightAndModifySelection:]):
   16289         (-[WebView moveToBeginningOfDocument:]):
   16290         (-[WebView moveToBeginningOfLine:]):
   16291         (-[WebView moveToBeginningOfParagraph:]):
   16292         (-[WebView moveToEndOfDocument:]):
   16293         (-[WebView moveToEndOfLine:]):
   16294         (-[WebView moveToEndOfParagraph:]):
   16295         (-[WebView moveUp:]):
   16296         (-[WebView moveUpAndModifySelection:]):
   16297         (-[WebView moveWordBackward:]):
   16298         (-[WebView moveWordBackwardAndModifySelection:]):
   16299         (-[WebView moveWordForward:]):
   16300         (-[WebView moveWordForwardAndModifySelection:]):
   16301         (-[WebView moveWordLeft:]):
   16302         (-[WebView moveWordLeftAndModifySelection:]):
   16303         (-[WebView moveWordRight:]):
   16304         (-[WebView moveWordRightAndModifySelection:]):
   16305         (-[WebView pageDown:]):
   16306         (-[WebView pageUp:]):
   16307         (-[WebView scrollLineDown:]):
   16308         (-[WebView scrollLineUp:]):
   16309         (-[WebView scrollPageDown:]):
   16310         (-[WebView scrollPageUp:]):
   16311         (-[WebView selectAll:]):
   16312         (-[WebView selectParagraph:]):
   16313         (-[WebView selectLine:]):
   16314         (-[WebView selectWord:]):
   16315         (-[WebView copy:]):
   16316         (-[WebView cut:]):
   16317         (-[WebView paste:]):
   16318         (-[WebView copyFont:]):
   16319         (-[WebView pasteFont:]):
   16320         (-[WebView delete:]):
   16321         (-[WebView pasteAsPlainText:]):
   16322         (-[WebView pasteAsRichText:]):
   16323         (-[WebView changeFont:]):
   16324         (-[WebView changeAttributes:]):
   16325         (-[WebView changeDocumentBackgroundColor:]):
   16326         (-[WebView changeColor:]):
   16327         (-[WebView alignCenter:]):
   16328         (-[WebView alignJustified:]):
   16329         (-[WebView alignLeft:]):
   16330         (-[WebView alignRight:]):
   16331         (-[WebView indent:]):
   16332         (-[WebView insertTab:]):
   16333         (-[WebView insertBacktab:]):
   16334         (-[WebView insertNewline:]):
   16335         (-[WebView insertParagraphSeparator:]):
   16336         (-[WebView changeCaseOfLetter:]):
   16337         (-[WebView uppercaseWord:]):
   16338         (-[WebView lowercaseWord:]):
   16339         (-[WebView capitalizeWord:]):
   16340         (-[WebView deleteForward:]):
   16341         (-[WebView deleteBackward:]):
   16342         (-[WebView deleteBackwardByDecomposingPreviousCharacter:]):
   16343         (-[WebView deleteWordForward:]):
   16344         (-[WebView deleteWordBackward:]):
   16345         (-[WebView deleteToBeginningOfLine:]):
   16346         (-[WebView deleteToEndOfLine:]):
   16347         (-[WebView deleteToBeginningOfParagraph:]):
   16348         (-[WebView deleteToEndOfParagraph:]):
   16349         (-[WebView complete:]):
   16350         (-[WebView checkSpelling:]):
   16351         (-[WebView showGuessPanel:]):
   16352         (-[WebView performFindPanelAction:]):
   16353         (-[WebView startSpeaking:]):
   16354         (-[WebView stopSpeaking:]):
   16355         (-[WebView insertText:]):
   16356         * WebView.subproj/WebViewPrivate.h:
   16357 
   16358 2004-04-09  Darin Adler  <darin (a] apple.com>
   16359 
   16360         Reviewed by Ken.
   16361 
   16362         - added "transparent mode"
   16363 
   16364         * WebView.subproj/WebFrameInternal.h: Added. Contains _updateDrawsBackground.
   16365         * WebView.subproj/WebFrame.m:
   16366         (-[WebFrame _makeDocumentView]): Call _updateDrawsBackground to tell the newly created
   16367         KHTMLView whether to draw a background or not.
   16368         (-[WebFrame _setState:]): Don't tell the scroll view to start drawing background if the
   16369         WebView is not supposed to draw a background.
   16370         (-[WebFrame _updateDrawsBackground]): Call setDrawsBackground: on the bridge, and do the
   16371         same for all subframes.
   16372 
   16373         * WebView.subproj/WebFrameView.m: (-[WebFrameView setFrameSize:]): Only call setDrawsBackground:YES
   16374         on the scroll view if the WebView has drawsBackground set to YES.
   16375 
   16376         * WebView.subproj/WebViewPrivate.h: Added new proposed API, setDrawsBackground and drawsBackground.
   16377         Also added drawsBackground boolean to private structure.
   16378         * WebView.subproj/WebView.m:
   16379         (-[WebView _commonInitializationWithFrameName:groupName:]): Set drawsBackground to YES by default.
   16380         (-[WebView setDrawsBackground:]): Added. Sets boolean and calls _updateDrawsBackground to update
   16381         the flag for each frame.
   16382         (-[WebView drawsBackground]): Added. Returns value of boolean.
   16383         (-[WebView _bridgeForCurrentSelection]): Tweaked comment for no good reason.
   16384 
   16385         * WebView.subproj/WebViewInternal.h: Added, but empty for the moment.
   16386         * WebView.subproj/WebFramePrivate.h: Tweaked a bit.
   16387 
   16388 2004-04-08  Chris Blumenberg  <cblu (a] apple.com>
   16389 
   16390         Fixed:
   16391         <rdar://problem/3616873>: support for pasting and drag and dropping of URLS to editable WebViews
   16392         <rdar://problem/3546417>: support for pasting and drag and dropping of images to editable WebViews
   16393 
   16394         Reviewed by rjw.
   16395 
   16396         * DOM.subproj/WebDOMOperations.h:
   16397         * DOM.subproj/WebDOMOperations.m:
   16398         (-[DOMNode webArchive]): renamed from "archive" because "archive" collides with DOMHTMLObjectElement's method
   16399         (-[DOMRange webArchive]): ditto
   16400         * Misc.subproj/WebNSPasteboardExtras.h:
   16401         * Misc.subproj/WebNSPasteboardExtras.m:
   16402         (-[NSPasteboard _web_writeImage:URL:title:archive:]): take just an archive instead of an HTML string and file wrapper
   16403         * Misc.subproj/WebNSViewExtras.h:
   16404         * Misc.subproj/WebNSViewExtras.m:
   16405         (-[NSView _web_dragImage:archive:rect:URL:title:event:]): take just an archive instead of an HTML string and file wrapper
   16406         * WebView.subproj/WebDataProtocol.h:
   16407         * WebView.subproj/WebDataProtocol.m:
   16408         (+[NSURL _web_uniqueWebDataURL]): new
   16409         (+[NSURL _web_uniqueWebDataURLWithRelativeString:]): new
   16410         * WebView.subproj/WebDefaultContextMenuDelegate.m:
   16411         (-[WebDefaultUIDelegate copyImageToClipboard:]): call renamed _web_writeImage
   16412         * WebView.subproj/WebFrame.m:
   16413         (-[WebFrame _webDataRequestForData:MIMEType:textEncodingName:baseURL:unreachableURL:]): use _web_uniqueWebDataURL for creating a URL
   16414         * WebView.subproj/WebHTMLView.m:
   16415         (-[WebHTMLView _pasteImageResource:]): new
   16416         (-[WebHTMLView _pasteFromPasteboard:]): renamed, now handles images and URLs
   16417         (-[WebHTMLView _handleMouseDragged:]): call renamed _web_dragImage
   16418         (-[WebHTMLView paste:]): call renamed _pasteFromPasteboard
   16419         (-[WebHTMLView concludeDragOperation:]): call renamed _pasteFromPasteboard
   16420         * WebView.subproj/WebHTMLViewPrivate.h:
   16421         * WebView.subproj/WebImageRepresentation.h:
   16422         * WebView.subproj/WebImageRepresentation.m:
   16423         (-[WebImageRepresentation archive]): new
   16424         * WebView.subproj/WebImageView.m:
   16425         (-[WebImageView writeImageToPasteboard:]): call renamed _web_writeImage
   16426         (-[WebImageView mouseDragged:]): call renamed _web_dragImage
   16427 
   16428 === Safari-136 ===
   16429 
   16430 2004-04-08  Chris Blumenberg  <cblu (a] apple.com>
   16431 
   16432         Fixed: <rdar://problem/3548274>: API: DOM API for WebKit clients
   16433 
   16434         Reviewed by kocienda.
   16435 
   16436         * DOM.subproj/DOM.h: copied from WebCore
   16437         * WebKit.pbproj/project.pbxproj: made our DOM headers public!
   16438 
   16439 2004-04-08  Chris Blumenberg  <cblu (a] apple.com>
   16440 
   16441         Moved WebArchive to its own file.
   16442 
   16443         Reviewed by kocienda.
   16444 
   16445         * WebKit.pbproj/project.pbxproj:
   16446         * WebView.subproj/WebArchive.h: Added.
   16447         * WebView.subproj/WebArchive.m: Added.
   16448         (-[WebArchive data]): renamed from dataRepresentation
   16449         * WebView.subproj/WebDataSource.m:
   16450         * WebView.subproj/WebFrame.m:
   16451         * WebView.subproj/WebHTMLRepresentation.m:
   16452         * WebView.subproj/WebHTMLView.m:
   16453         (-[WebHTMLView _writeSelectionToPasteboard:]): call renamed [WebArchive data]
   16454         * WebView.subproj/WebResource.h:
   16455         * WebView.subproj/WebResource.m:
   16456 
   16457 2004-04-07  Chris Blumenberg  <cblu (a] apple.com>
   16458 
   16459         Created WebDOMOperations which are WebKit-specific categories on DOM objects.
   16460 
   16461         Reviewed by rjw.
   16462 
   16463         * DOM.subproj/DOMExtensions.h:
   16464         * DOM.subproj/WebDOMOperations.h: Added.
   16465         * DOM.subproj/WebDOMOperations.m: Added.
   16466         (-[DOMNode _bridge]): new
   16467         (-[DOMNode archive]): new
   16468         (-[DOMNode markupString]): new
   16469         (-[DOMRange _bridge]): new
   16470         (-[DOMRange archive]): new
   16471         (-[DOMRange markupString]): new
   16472         (-[DOMHTMLImageElement image]):
   16473         * WebCoreSupport.subproj/WebBridge.h:
   16474         * WebCoreSupport.subproj/WebBridge.m:
   16475         (-[WebBridge webFrame]): new
   16476         * WebKit.pbproj/project.pbxproj:
   16477         * WebView.subproj/WebDataSource.m:
   16478         (-[WebDataSource _archiveWithMarkupString:subresourceURLStrings:]): moved from WebHTMLRepresentation
   16479         * WebView.subproj/WebDataSourcePrivate.h:
   16480         * WebView.subproj/WebDefaultContextMenuDelegate.m:
   16481         (-[WebDefaultUIDelegate copyImageToClipboard:]): call markupString on the node
   16482         * WebView.subproj/WebDocumentPrivate.h:
   16483         * WebView.subproj/WebFrame.m:
   16484         (+[WebFrame frameForDOMDocument:]): new
   16485         (-[WebFrame loadArchive:]): renamed
   16486         * WebView.subproj/WebFramePrivate.h:
   16487         * WebView.subproj/WebHTMLRepresentation.h:
   16488         * WebView.subproj/WebHTMLRepresentation.m:
   16489         * WebView.subproj/WebHTMLRepresentationPrivate.h:
   16490         * WebView.subproj/WebHTMLView.m:
   16491         (-[WebHTMLView _selectedArchive:]): renamed
   16492         (-[WebHTMLView _handleMouseDragged:]): called renamed methods
   16493 
   16494 2004-04-07  Darin Adler  <darin (a] apple.com>
   16495 
   16496         Reviewed by Chris.
   16497 
   16498         * DOM.subproj/DOMCSS.h: Updated from WebCore.
   16499 
   16500 2004-04-07  Ken Kocienda  <kocienda (a] apple.com>
   16501 
   16502         Reviewed by Darin and Dave (many weeks ago....I am so ashamed for not landing)
   16503 
   16504         * WebCoreSupport.subproj/WebBridge.m:
   16505         (-[WebBridge expiresTimeForResponse:]): Now adds in the difference between
   16506         the Mac OS X epoch and the "standard" unix epoch when passing back a time
   16507         that WebCore will use for its cache expiration determinations. 
   16508 
   16509 2004-04-07  Richard Williamson   <rjw (a] apple.com>
   16510 
   16511         Fix for 3604388.  The runtime version check (_CFExecutableLinkedOnOrAfter) used by many of
   16512         our frameworks doesn't work for CFM apps.  So, conditional panther bugs fixes aren't
   16513         being pickup by CFM apps that use WebKit, specifically Contribute.  This particular radar
   16514         describes a problem that was conditionally fixed in the AppKit for panther.  The work-around
   16515         is to force NSBitmapImageRep to execute to conditional code.
   16516 
   16517         Reviewed by Maciej.
   16518 
   16519         * Carbon.subproj/CarbonUtils.m:
   16520         (WebInitForCarbon):
   16521 
   16522 2004-04-06  Richard Williamson   <rjw (a] apple.com>
   16523 
   16524         Fixed 3510805.  Only release pool in timer if the current nesting level of the
   16525         pool matches the nesting level when the pool was created.
   16526 
   16527         Reviewed by Chris.
   16528 
   16529         * Carbon.subproj/CarbonUtils.m:
   16530         (getNumPools):
   16531         (WebInitForCarbon):
   16532         (PoolCleaner):
   16533 
   16534 2004-04-06  Chris Blumenberg  <cblu (a] apple.com>
   16535 
   16536         Fixed: <rdar://problem/3613974>: remove "to Clipboard" from context menus because it is redundant
   16537 
   16538         Reviewed by john.
   16539 
   16540         * English.lproj/Localizable.strings:
   16541         * WebView.subproj/WebDefaultContextMenuDelegate.m:
   16542         (-[WebDefaultUIDelegate menuItemWithTag:]):
   16543 
   16544 2004-04-06  Ken Kocienda  <kocienda (a] apple.com>
   16545 
   16546         Reviewed by Dave
   16547 
   16548         * WebCoreSupport.subproj/WebBridge.m:
   16549         (-[WebBridge issueUndoCommand]): New method. Forwards call to the undo manager. Added
   16550         to support undo called via Javascript execCommand.
   16551         (-[WebBridge issueRedoCommand]): Ditto.
   16552 
   16553 2004-04-05  Chris Blumenberg  <cblu (a] apple.com>
   16554 
   16555         Fixed: <rdar://problem/3612580>: SPI: WebPlugin selection
   16556 
   16557         Reviewed by kocienda.
   16558 
   16559         * Plugins.subproj/WebPlugin.h: extended SPI for selection
   16560         * Plugins.subproj/WebPluginContainer.h: ditto
   16561         * Plugins.subproj/WebPluginController.m:
   16562         (-[WebPluginController selectionColor]): new, calls [WebCoreBridge selectionColor]
   16563         * WebCoreSupport.subproj/WebBridge.m:
   16564         (-[WebBridge setIsSelected:forView:]): new, calls [WebPlugin setIsSelected:]
   16565         (-[WebBridge isViewSelected:]): new, calls [WebPlugin isSelected]
   16566 
   16567 2004-04-02  Chris Blumenberg  <cblu (a] apple.com>
   16568 
   16569         Forgot to add the WebKit copy of DOMExtensions.h.
   16570 
   16571         * DOM.subproj/DOMExtensions.h: Added.
   16572 
   16573 2004-04-02  John Sullivan  <sullivan (a] apple.com>
   16574 
   16575         Reviewed by Dave.
   16576         
   16577         * WebView.subproj/WebPreferences.m:
   16578         (-[WebPreferences historyIsFrozen]):
   16579         take out OMIT_TIGER_FEATURES ifdeffing, since if we turn this into API
   16580         then we'll probably want it to work in Panther also. To protect Safari users,
   16581         Safari now explicitly sets historyIsFrozen to NO when starting up in Panther.
   16582 
   16583         * English.lproj/StringsNotToBeLocalized.txt:
   16584         updated for recent changes
   16585 
   16586 2004-04-02  Chris Blumenberg  <cblu (a] apple.com>
   16587 
   16588         Moved the DOM extensions to their own headers
   16589 
   16590         Reviewed by kocienda.
   16591 
   16592         * DOM.subproj/DOM.h: changed from WebCore
   16593         * DOM.subproj/DOMHTML.h: ditto
   16594         * WebKit.pbproj/project.pbxproj: added DOMExtensions.h
   16595         * copy-webcore-files-to-webkit: copy DOMExtensions.h
   16596 
   16597 === Safari-135 ===
   16598 
   16599 2004-04-01  Richard Williamson   <rjw (a] apple.com>
   16600 
   16601         Fixed 3609493.  Don't remove the plugin's view until after
   16602         sending pluginDestroy.  This change was requested by Greg
   16603         and is needed in the Lavender update.
   16604 
   16605         Reviewed by Greg Bolsinga.
   16606 
   16607         * Plugins.subproj/WebPluginController.m:
   16608         (-[WebPluginController destroyAllPlugins]):
   16609         * Plugins.subproj/npruntime.h:
   16610 
   16611 2004-03-31  John Sullivan  <sullivan (a] apple.com>
   16612 
   16613         - fixed <rdar://problem/3577917>: API: mechanism for displaying error 
   16614         page for failed page load
   16615         
   16616         This was not commented on for a week in macosx-api-reviewers, so it
   16617         has the silent rubber stamp of approval.
   16618         
   16619         Note that it isn't guarded by "Tiger only" availability macros because
   16620         we (probably) want to use it in Panther for Safari. Maybe what we should
   16621         do is guard the API with "Tiger only" macros but add an SPI version
   16622         that Safari uses?
   16623 
   16624         Reviewed by Dave.
   16625 
   16626         * WebView.subproj/WebDataSource.h:
   16627         moved unreachableURL to here
   16628         * WebView.subproj/WebDataSource.m:
   16629         (-[WebDataSource unreachableURL]):
   16630         moved this from private category to main section
   16631         
   16632         * WebView.subproj/WebDataSourcePrivate.h:
   16633         removed unreachableURL from here
   16634         
   16635         * WebView.subproj/WebFrame.h:
   16636         moved loadAlternateHTMLString... to here
   16637         * WebView.subproj/WebFrame.m:
   16638         (-[WebFrame loadAlternateHTMLString:baseURL:forUnreachableURL:]):
   16639         moved this from private category to main section
   16640         
   16641         * WebView.subproj/WebFramePrivate.h:
   16642         removed unreachableURL from here
   16643 
   16644 2004-03-31  Richard Williamson   <rjw (a] apple.com>
   16645 
   16646         Changed to reflect NP_runtime.h to npruntime.h.
   16647 
   16648         * copy-webcore-files-to-webkit:
   16649 
   16650 2004-03-31  John Sullivan  <sullivan (a] apple.com>
   16651 
   16652         Reviewed by Darin.
   16653 
   16654         * WebView.subproj/WebPreferences.m:
   16655         (-[WebPreferences historyIsFrozen]):
   16656         always return NO on Panther and older, so you can't get into a state
   16657         where the WebKit pref is invisibly set and affecting Safari.
   16658 
   16659 2004-03-31  Darin Adler  <darin (a] apple.com>
   16660 
   16661         * WebView.subproj/WebHTMLView.m: Whitespace tweaks.
   16662 
   16663 2004-03-30  Chris Blumenberg  <cblu (a] apple.com>
   16664 
   16665         Fixed: <rdar://problem/3604391>: Plug-in context menus (Flash) don't work in Carbon WebKit applications (e.g., CarbonWeb)
   16666 
   16667         Reviewed by rjw.
   16668 
   16669         * Carbon.subproj/HIWebView.m:
   16670         (ContextMenuClick): instead of calling menuForEvent (which is not implemented on our plug-in view) call rightMouseDown and let AppKit handle the rest
   16671 
   16672 2004-03-29  John Sullivan  <sullivan (a] apple.com>
   16673 
   16674         - some support for "Stealth Browsing"; add a preference that
   16675         controls whether a history item is added when a page is visited.
   16676         This is called "historyIsFrozen" for now, but I wouldn't be
   16677         surprised to see this name change.
   16678 
   16679         Reviewed by Dave.
   16680 
   16681         * WebView.subproj/WebPreferencesPrivate.h:
   16682         new historyIsFrozen, setHistoryIsFrozen: methods
   16683         
   16684         * WebView.subproj/WebPreferences.m:
   16685         new WebKitHistoryIsFrozenPreferenceKey
   16686         (+[WebPreferences initialize]):
   16687         set initial value of WebKitHistoryIsFrozenPreferenceKey
   16688         (-[WebPreferences setHistoryIsFrozen:]):
   16689         set value of WebKitHistoryIsFrozenPreferenceKey
   16690         (-[WebPreferences historyIsFrozen]):
   16691         read value of WebKitHistoryIsFrozenPreferenceKey
   16692 
   16693         * WebView.subproj/WebFrame.m:
   16694         (-[WebFrame _transitionToCommitted:]):
   16695         don't add item to history if history is frozen
   16696 
   16697 2004-03-29  Darin Adler  <darin (a] apple.com>
   16698 
   16699         Reviewed by John.
   16700 
   16701         - fixed <rdar://problem/3559178>: navigator.language always returns "en"
   16702 
   16703         * WebCoreSupport.subproj/WebViewFactory.m: (-[WebViewFactory defaultLanguageCode]):
   16704         Call +[NSUserDefaults _web_preferredLanguageCode] rather than returning "en".
   16705 
   16706         * English.lproj/StringsNotToBeLocalized.txt: Updated for recent changes.
   16707 
   16708 2004-03-26  John Sullivan  <sullivan (a] apple.com>
   16709 
   16710         - fixed <rdar://problem/3576334>: Printing "empty" page gives print error, 
   16711         leaves browser window UI broken
   16712 
   16713         Reviewed by Dave.
   16714 
   16715         * WebView.subproj/WebHTMLView.m:
   16716         (-[WebHTMLView knowsPageRange:]):
   16717         AppKit printing mechanism can't handle the case where you tell it there is
   16718         nothing at all to print, so when we hit that case we give it a degenerate
   16719         1-pixel rect to print. This prints a blank page (with correctly-placed
   16720         header & footer if so configured), which matches other browsers' behavior for
   16721         this page.
   16722 
   16723         * Plugins.subproj/npruntime.h:
   16724         cvs keeps thinking I've removed a blank line from this auto-copied file.
   16725         Richard said to just check it in to see if it stops doing this.
   16726         
   16727 === Safari-134 ===
   16728 
   16729 2004-03-26  John Sullivan  <sullivan (a] apple.com>
   16730 
   16731         - fixed the following bugs:
   16732         
   16733         <rdar://problem/3601630>: command-modified keypresses that would activate links are ignored by WebKit
   16734         <rdar://problem/3601604>: WebActionModifierFlagsKey not set correctly for modified keypresses that activate links
   16735         <rdar://problem/3544946>: cmd-return should open a link in a new tab
   16736 
   16737         Reviewed by Darin.
   16738 
   16739         * WebView.subproj/WebFrame.m:
   16740         (-[WebFrame _actionInformationForNavigationType:event:originalURL:]):
   16741         Pass modifier flags always, not just for mouse events. This fixes 3601604.
   16742         
   16743         * WebView.subproj/WebHTMLView.m:
   16744         (-[WebHTMLView performKeyEquivalent:]):
   16745         Give the bridge a chance to intercept command-modified keypresses. This fixes 3601630.
   16746         
   16747         Together these two changes fix 3544946.
   16748 
   16749 2004-03-25  David Hyatt  <hyatt (a] apple.com>
   16750 
   16751         Implement the rest of the search field.
   16752 
   16753         Implement onscroll at the document level.
   16754         Reviewed by darin
   16755 
   16756         * English.lproj/Localizable.strings:
   16757         * WebCoreSupport.subproj/WebBridge.m:
   16758         * WebCoreSupport.subproj/WebViewFactory.m:
   16759         (-[NSMenu addItemWithTitle:action:tag:]):
   16760         (-[WebViewFactory submitButtonDefaultLabel]):
   16761         (-[WebViewFactory cellMenuForSearchField]):
   16762         * WebView.subproj/WebHTMLView.m:
   16763         (-[WebHTMLView _frameOrBoundsChanged]):
   16764         (-[WebHTMLView viewDidMoveToWindow]):
   16765         * WebView.subproj/WebHTMLViewPrivate.h:
   16766 
   16767 2004-03-25  Richard Williamson   <rjw (a] apple.com>
   16768 
   16769         Netscape plugin API header cleanup.
   16770 
   16771         Replaced our hacked up version of npapi.h with the
   16772         "official SDK"  npapi.h.  Moved our changes to the new
   16773         npfunctions.h.  npfunctions.h really replaces what was defined in
   16774         the Netscape npupp.h header.  However, rather than use the "official SDK"
   16775         npupp.h I think the cleaner npfunctions.h is better. npupp.h actually
   16776         has a bunch of Mac classic specific stuff that is no longer needed.
   16777 
   16778         Copied npruntime.h to WebKit using Ken's copy-o-matic mechanism.
   16779 
   16780         Made npapi.h, npruntime.h, and npfunctions.h SPI.  With a bit
   16781         more consideration they will become API.  They will also eventually be made
   16782         available for other platforms/vendors are mozilla.org.
   16783 
   16784         Reviewed by Ken.
   16785 
   16786         * Plugins.subproj/WebBaseNetscapePluginStream.h:
   16787         * Plugins.subproj/WebBaseNetscapePluginStream.m:
   16788         (-[WebBaseNetscapePluginStream dealloc]):
   16789         (-[WebBaseNetscapePluginStream startStreamWithURL:expectedContentLength:lastModifiedDate:MIMEType:]):
   16790         * Plugins.subproj/WebBaseNetscapePluginView.h:
   16791         * Plugins.subproj/WebNetscapePluginPackage.h:
   16792         * Plugins.subproj/WebNetscapePluginPackage.m:
   16793         (-[WebNetscapePluginPackage load]):
   16794         * Plugins.subproj/npapi.h:
   16795         * Plugins.subproj/npruntime.h: Added.
   16796         * WebKit.pbproj/project.pbxproj:
   16797         * copy-webcore-files-to-webkit:
   16798 
   16799 2004-03-24  Darin Adler  <darin (a] apple.com>
   16800 
   16801         Reviewed by John.
   16802 
   16803         - fixed <rdar://problem/3566805>: REGRESSION: When the subject of mailto is 2 byte Safari failed to send mail address and subject to Mail.app
   16804 
   16805         * Misc.subproj/WebNSURLExtras.m: (applyHostNameFunctionToMailToURLString): Update to handle hostnames
   16806         that end just before a '?' since a '?' ends the entire part of the URL that can contain hostnames.
   16807         Also change the logic so that the '?' will successfully end the search.
   16808 
   16809 2004-03-24  Ken Kocienda  <kocienda (a] apple.com>
   16810 
   16811         Reviewed by me
   16812 
   16813         * DOM.subproj/DOMHTML.h: Checking in copied over version of
   16814         modified file.
   16815 
   16816 2004-03-23  David Hyatt  <hyatt (a] apple.com>
   16817 
   16818         Fix for 3513627, HTML mail prints upside down occasionally.  Change printing so that it never resizes the
   16819         WebHTMLView when formatting for printing.  When computing page rects, instead of using the view's bounds,
   16820         use the root layer's width instead.
   16821         Reviewed by darin
   16822 
   16823         * WebView.subproj/WebHTMLView.m:
   16824         (-[WebHTMLView knowsPageRange:]):
   16825 
   16826 === Safari-133 ===
   16827 
   16828 2004-03-17  David Hyatt  <hyatt (a] apple.com>
   16829 
   16830         Expose ageLimitDate so that the autocomplete code can access it.
   16831         Reviewed by john
   16832 
   16833         * History.subproj/WebHistory.m:
   16834         (-[WebHistory ageLimitDate]):
   16835         * History.subproj/WebHistoryPrivate.h:
   16836 
   16837 2004-03-17  Richard Williamson   <rjw (a] apple.com>
   16838 
   16839         Fixed 3591667.  Plugin view is added to view hierarchy before calling init.
   16840 
   16841         Reviewed by Ken.
   16842 
   16843         * WebView.subproj/WebHTMLView.m:
   16844         (-[WebHTMLView addSubview:]):
   16845 
   16846 2004-03-16  Darin Adler  <darin (a] apple.com>
   16847 
   16848         * DOM.subproj/DOMHTML.h: Updated from WebCore.
   16849         * DOM.subproj/DOMRange.h: Ditto.
   16850 
   16851 2004-03-16  Darin Adler  <darin (a] apple.com>
   16852 
   16853         Reviewed by Ken.
   16854 
   16855         - update for new DOM namespacing and header organization
   16856 
   16857         * DOM.subproj/DOM.h: Changed to include the other DOM headers.
   16858         * DOM.subproj/DOMCSS.h: Added.
   16859         * DOM.subproj/DOMCore.h: Added.
   16860         * DOM.subproj/DOMEvents.h: Added.
   16861         * DOM.subproj/DOMHTML.h: Added.
   16862         * DOM.subproj/DOMRange.h: Added.
   16863         * DOM.subproj/DOMStylesheets.h: Added.
   16864         * DOM.subproj/DOMTraversal.h: Added.
   16865         * DOM.subproj/DOMViews.h: Added.        
   16866         * WebKit.pbproj/project.pbxproj: Added new files.
   16867 
   16868         * WebView.subproj/WebDefaultEditingDelegate.m:
   16869         (-[WebDefaultEditingDelegate webView:shouldApplyStyle:toElementsInDOMRange:]):
   16870         (-[WebDefaultEditingDelegate webView:shouldChangeTypingStyle:toStyle:]):
   16871         Change class names from CSS to DOMCSS.
   16872         * WebView.subproj/WebViewPrivate.h: Ditto.
   16873 
   16874         * copy-webcore-files-to-webkit: Add new files.
   16875 
   16876 2004-03-15  Ken Kocienda  <kocienda (a] apple.com>
   16877 
   16878         Reviewed by John
   16879 
   16880         Fix for this bug:
   16881         
   16882         <rdar://problem/3588717>: REGRESSION (125-131u): Tabbing to links and tabbing in bookmarks view no longer works
   16883 
   16884         WebView can't lay claim to -keyDown: just for editing events, as
   16885         this gets in the way of tab processing. The solution is to give
   16886         WebView a private method for processing editing key events fed to
   16887         it from over the bridge, and leave -keyDown: unimplemented. 
   16888 
   16889         * WebCoreSupport.subproj/WebBridge.m:
   16890         (-[WebBridge editingKeyDown:]): Changed from -keyDown: to keep 
   16891         terminology consistent with renamed WebView -editingKeyDown: method.
   16892         * WebView.subproj/WebView.m:
   16893         (-[WebView editingKeyDown:]): Give WebView a method to handle
   16894         editing key events in a way that does not interfere with other key down
   16895         events it processes.
   16896         * WebView.subproj/WebViewPrivate.h: Declare -editingKeyDown: method.
   16897 
   16898 === Safari-132 ===
   16899 
   16900 2004-03-15  Darin Adler  <darin (a] apple.com>
   16901 
   16902         * English.lproj/StringsNotToBeLocalized.txt: Updated for recent changes.
   16903 
   16904 2004-03-12  Darin Adler  <darin (a] apple.com>
   16905 
   16906         Reviewed by Ken.
   16907 
   16908         - fixed <rdar://problem/3433887>: copied &nbsp; characters remain non-breaking spaces; other browsers give normal spaces
   16909 
   16910         * WebView.subproj/WebHTMLView.m: (-[WebHTMLView _writeSelectionToPasteboard:]):
   16911         Convert non-breaking spaces to the normal kind in the plain text part of the pasteboard.
   16912 
   16913 2004-03-12  Ken Kocienda  <kocienda (a] apple.com>
   16914 
   16915         Reviewed by Chris
   16916 
   16917         * WebView.subproj/WebView.m:
   16918         (-[WebView _alterCurrentSelection:direction:granularity:]): Changed name from
   16919         _alterSelection:direction:granularity: to give a little extra clarity. Also, the
   16920         body calls through to renamed rangeByAlteringCurrentSelection:direction:granularity:
   16921         in WebCore.
   16922         (-[WebView moveRight:]): Now calls renamed _alterCurrentSelection:direction:granularity:.
   16923         (-[WebView moveRightAndModifySelection:]): Ditto.
   16924         (-[WebView moveLeft:]): Ditto.
   16925         (-[WebView moveLeftAndModifySelection:]): Ditto.
   16926 
   16927 2004-03-11  Richard Williamson   <rjw (a] apple.com>
   16928 
   16929         Workaround for 3585644.  Force the window number of the
   16930         mouse moved event to be correct.
   16931 
   16932         Reviewed by Chris.
   16933 
   16934         * Carbon.subproj/CarbonWindowFrame.m:
   16935         * Carbon.subproj/HIWebView.m:
   16936         (MouseMoved):
   16937         (MouseDragged):
   16938 
   16939 2004-03-11  Ken Kocienda  <kocienda (a] apple.com>
   16940 
   16941         Reviewed by Dave
   16942 
   16943         Various changes to begin implementing the draft API proposal. 
   16944 
   16945         * DOM.subproj/DOM.h: Checking in generated file.
   16946         * WebCoreSupport.subproj/WebBridge.m:
   16947         (-[WebBridge registerCommandForUndo:]): Now takes an id, a wrapped
   16948         WebCore EditCommand implementation object.
   16949         (-[WebBridge registerCommandForRedo:]): Ditto.
   16950         (-[WebBridge clearUndoRedoOperations]): Use the web view's undo manager.
   16951         (-[WebBridge keyDown:]): Pass keyDown events through to the web view.
   16952         * WebKit.pbproj/project.pbxproj:
   16953         * WebView.subproj/WebDefaultEditingDelegate.h: Added.
   16954         * WebView.subproj/WebDefaultEditingDelegate.m: Added. Stubbed in default
   16955         implementations declared in the draft editing API.
   16956         * WebView.subproj/WebFrame.m:
   16957         (-[WebFramePrivate dealloc]): WebFrame no longer has an undo manager.
   16958         * WebView.subproj/WebFramePrivate.h: Ditto.
   16959         * WebView.subproj/WebHTMLView.m:
   16960         (-[WebHTMLView _selectedWebArchive:]): selectedRange method 
   16961         is now selectedDOMRange.
   16962         * WebView.subproj/WebView.m:
   16963         (-[WebViewPrivate dealloc]): Dealloc new editingDelegateForwarder.
   16964         (-[WebView _editingDelegateForwarder]): Added. 
   16965         (-[WebView keyDown:]): Added. 
   16966         (-[WebView _bridgeForCurrentSelection]): Added. 
   16967         (-[WebView setSelectedDOMRange:]): Added. 
   16968         (-[WebView selectedDOMRange]): Added. 
   16969         (-[WebView insertText:]): Added. 
   16970         (-[WebView _alterSelection:direction:granularity:]): Added. 
   16971         (-[WebView selectWord:]): Added. 
   16972         (-[WebView moveRight:]): Added. 
   16973         (-[WebView moveRightAndModifySelection:]): Added. 
   16974         (-[WebView moveLeft:]): Added. 
   16975         (-[WebView moveLeftAndModifySelection:]): Added. 
   16976         (-[WebView deleteBackward:]): Added. 
   16977         (-[WebView insertNewline:]): Added. 
   16978         (-[WebView insertParagraphSeparator:]): Added. 
   16979         (-[WebView setEditingDelegate:]): Added. 
   16980         (-[WebView editingDelegate]): Added. 
   16981         (-[WebView undoManager]): Added. 
   16982         (-[WebView insertText:replacingDOMRange:]): Added. 
   16983         * WebView.subproj/WebViewPrivate.h: Added a collection of editing API 
   16984         declarations that will be public some day, but are still under review.
   16985 
   16986 2004-03-11  John Sullivan  <sullivan (a] apple.com>
   16987 
   16988         - fixed <rdar://problem/3585056>: Assertion failure if error page is loaded from 
   16989         webView:unableToImplementPolicyWithError:
   16990         - also added HeaderDoc comments to could-be-API-soon methods and fixed a
   16991         conceptual problem with said methods
   16992 
   16993         Reviewed by Darin.
   16994 
   16995         * WebView.subproj/WebDataSourcePrivate.h:
   16996         added HeaderDoc comment for -unreachableURL
   16997         
   16998         * WebView.subproj/WebFramePrivate.h:
   16999         added HeaderDoc comment for -loadAlternateHTMLString:baseURL:forUnreachableURL:;
   17000         also added boolean delegateIsHandlingUnimplementablePolicy ivar to WebFramePrivate
   17001         * WebView.subproj/WebFrame.m:
   17002         (-[WebFrame _shouldReloadToHandleUnreachableURLFromRequest:]):
   17003         treat delegateIsHandlingUnimplementablePolicy like delegateIsDecidingNavigationPolicy.
   17004         Safari serves up error pages during the latter but clients are equally or more likely
   17005         to do so during the former.
   17006         (-[WebFrame _handleUnimplementablePolicyWithErrorCode:forURL:]):
   17007         set delegateIsHandlingUnimplementablePolicy during delegate callback
   17008         (-[WebFrame _continueLoadRequestAfterNavigationPolicy:formState:]):
   17009         tweaked assertion so it doesn't erroneously fire for clients that call
   17010         loadAlternateHTML:baseURL:forUnreachableURL: while processing
   17011         webView:unableToImplementPolicyWithError:
   17012 
   17013 2004-03-11  Chris Blumenberg  <cblu (a] apple.com>
   17014 
   17015         Made WebArchive a class instead of a data object. This allows clients to easily get the main resource and subresources from a WebArchive.
   17016 
   17017         Reviewed by kocienda.
   17018 
   17019         * WebKit.exp:
   17020         * WebView.subproj/WebDocumentPrivate.h:
   17021         * WebView.subproj/WebFrame.m:
   17022         (-[WebFrame loadWebArchive:]):
   17023         * WebView.subproj/WebFramePrivate.h:
   17024         * WebView.subproj/WebHTMLRepresentation.m:
   17025         (-[WebHTMLRepresentation loadWebArchive]):
   17026         (-[WebHTMLRepresentation _webArchiveWithMarkupString:subresourceURLStrings:]):
   17027         (-[WebHTMLRepresentation webArchiveFromNode:]):
   17028         (-[WebHTMLRepresentation webArchiveFromRange:]):
   17029         * WebView.subproj/WebHTMLRepresentationPrivate.h:
   17030         * WebView.subproj/WebHTMLView.m:
   17031         (-[WebHTMLView _selectedWebArchive:]):
   17032         (-[WebHTMLView _writeSelectionToPasteboard:]):
   17033         (-[WebHTMLView _pasteMarkupFromPasteboard:]):
   17034         * WebView.subproj/WebResource.h:
   17035         * WebView.subproj/WebResource.m:
   17036         (-[WebArchivePrivate dealloc]):
   17037         (-[WebResource _response]):
   17038         (-[WebArchive init]):
   17039         (-[WebArchive initWithMainResource:subresources:]):
   17040         (-[WebArchive initWithData:]):
   17041         (-[WebArchive dealloc]):
   17042         (-[WebArchive mainResource]):
   17043         (-[WebArchive subresources]):
   17044         (-[WebArchive dataRepresentation]):
   17045         * WebView.subproj/WebResourcePrivate.h:
   17046 
   17047 2004-03-10  Chris Blumenberg  <cblu (a] apple.com>
   17048 
   17049         Made dragging of web archives work.
   17050 
   17051         Reviewed by rjw.
   17052 
   17053         * English.lproj/StringsNotToBeLocalized.txt: updated
   17054         * WebView.subproj/WebMainResourceClient.m:
   17055         (-[WebMainResourceClient connection:didReceiveResponse:]): added a FIXME about working around old Foundations that don't know about web archive files
   17056         * WebView.subproj/WebView.m:
   17057         (+[WebView canShowFile:]): tweak
   17058         (+[WebView suggestedFileExtensionForMIMEType:]): tweak
   17059         (+[WebView _MIMETypeForFile:]): handle web archive files since Foundation may be too old to know about them
   17060 
   17061 2004-03-09  Chris Blumenberg  <cblu (a] apple.com>
   17062 
   17063         Made web archives use NSPropertyListBinaryFormat_v1_0 instead of NSPropertyListXMLFormat_v1_0 because NSPropertyListBinaryFormat_v1_0 is 3-5 times faster to serialize and parse.
   17064 
   17065         Reviewed by rjw.
   17066 
   17067         * WebView.subproj/WebResource.m:
   17068         (+[WebResource _parseWebArchive:mainResource:subresources:]): add timing code
   17069         (+[WebResource _webArchiveWithMainResource:subresources:]): add timing code, use NSPropertyListBinaryFormat_v1_0
   17070 
   17071 2004-03-09  Chris Blumenberg  <cblu (a] apple.com>
   17072 
   17073         Fixed: <rdar://problem/3577508>: API: web archive related API's
   17074         Implemented WebKit side of: <rdar://problem/3144033>: ability to save web sites (images and all)
   17075 
   17076         Reviewed by rjw.
   17077 
   17078         * WebCoreSupport.subproj/WebBridge.h:
   17079         * WebCoreSupport.subproj/WebBridge.m:
   17080         (-[WebBridge receivedData:textEncodingName:]): renamed to take a textEncodingName instead of data source. The data source argument is only needed for the textEncodingName.
   17081         * WebKit.exp:
   17082         * WebView.subproj/WebDataSource.m:
   17083         (-[WebDataSource _subresourcesDictionary]): new
   17084         (+[WebDataSource _repTypesAllowImageTypeOmission:]): include "application/x-webarchive"
   17085         * WebView.subproj/WebDataSourcePrivate.h:
   17086         * WebView.subproj/WebDocumentInternal.h:
   17087         * WebView.subproj/WebDocumentPrivate.h:
   17088         * WebView.subproj/WebFrame.m:
   17089         (-[WebFrame loadWebArchive:]): renamed, code factored out to [WebResource _parseWebArchive:mainResource:subresources:]
   17090         * WebView.subproj/WebFramePrivate.h:
   17091         * WebView.subproj/WebFrameView.m:
   17092         (+[WebFrameView _viewTypesAllowImageTypeOmission:]): include "application/x-webarchive"
   17093         * WebView.subproj/WebHTMLRepresentation.h:
   17094         * WebView.subproj/WebHTMLRepresentation.m:
   17095         (-[WebHTMLRepresentationPrivate dealloc]):
   17096         (-[WebHTMLRepresentation _isDisplayingWebArchive]): new
   17097         (-[WebHTMLRepresentation receivedData:withDataSource:]): don't feed data to WebCore if we're displaying a web archive since web archive can't be progressively loaded
   17098         (-[WebHTMLRepresentation loadWebArchive]): new, feeds web archive data to WebCore
   17099         (-[WebHTMLRepresentation finishedLoadingWithDataSource:]): call loadWebArchive if necessary
   17100         (-[WebHTMLRepresentation documentSource]): if displaying a web archive, return the HTML source from within the archive
   17101         (-[WebHTMLRepresentation _webArchiveWithMarkupString:subresourceURLStrings:]): new
   17102         (-[WebHTMLRepresentation markupStringFromNode:]): implementation of new API
   17103         (-[WebHTMLRepresentation markupStringFromRange:]): ditto
   17104         (-[WebHTMLRepresentation webArchiveFromNode:]): ditto
   17105         (-[WebHTMLRepresentation webArchiveFromRange:]): ditto
   17106         * WebView.subproj/WebHTMLRepresentationPrivate.h:
   17107         * WebView.subproj/WebHTMLView.m:
   17108         (+[WebHTMLView _selectionPasteboardTypes]): use renamed WebArchivePboardType
   17109         (-[WebHTMLView _selectedWebArchive:]): renamed, call renamed methods
   17110         (-[WebHTMLView _writeSelectionToPasteboard:]): call renamed methods
   17111         (-[WebHTMLView _haveSelection]): indentation tweak
   17112         (-[WebHTMLView _canDelete]): ditto
   17113         (-[WebHTMLView _canPaste]): ditto
   17114         (-[WebHTMLView _pasteMarkupFromPasteboard:]): renamed, call [WebResource _webArchiveWithMainResource:subresources:]
   17115         (-[WebHTMLView initWithFrame:]): use renamed WebArchivePboardType
   17116         (-[WebHTMLView paste:]): call renamed _pasteMarkupFromPasteboard
   17117         (-[WebHTMLView concludeDragOperation:]): call renamed _pasteMarkupFromPasteboard
   17118         * WebView.subproj/WebHTMLViewPrivate.h:
   17119         * WebView.subproj/WebMainResourceClient.m:
   17120         (-[WebMainResourceClient connection:didReceiveResponse:]): modify the MIME type for web archives since Foundation is not yet web archive aware. This is ifdef'd pre-Tiger code.
   17121         * WebView.subproj/WebResource.h:
   17122         * WebView.subproj/WebResource.m:
   17123         (+[WebResource _parseWebArchive:mainResource:subresources:]): new
   17124         (+[WebResource _webArchiveWithMainResource:subresources:]): new
   17125         * WebView.subproj/WebResourcePrivate.h:
   17126 
   17127 2004-03-09  John Sullivan  <sullivan (a] apple.com>
   17128 
   17129         - fixed the following bugs:
   17130         <rdar://problem/3579715>: Going to an error page in back/forward list doesn't work 
   17131         correctly in some cases
   17132         <rdar://problem/3581031>: REGRESSION (130+): World Leak of WebFrame after trying 
   17133         to load page with unknown scheme
   17134 
   17135         Reviewed by Darin.
   17136 
   17137         * WebView.subproj/WebDataSourcePrivate.h:
   17138         renamed __setRequest -> __adoptRequest
   17139         * WebView.subproj/WebDataSource.m:
   17140         (-[WebDataSource _URLForHistory]): 
   17141         updated comment
   17142         (-[WebDataSource __adoptRequest:]):
   17143         Renamed from __setRequest; now takes an NSMutableURLRequest and uses it as-is.
   17144         (-[WebDataSource _setRequest:]):
   17145         now saves a mutable copy, instead of relying on the caller to do so. The
   17146         (only) caller wasn't doing so in all cases, leading to trouble in River City.
   17147         Also, special-case unreachable URL handling to allow alternate content to 
   17148         replace a URL in a redirect-like way without sending a redirect callback.
   17149         
   17150         * WebView.subproj/WebFrame.m:
   17151         (-[WebFrame loadAlternateHTMLString:baseURL:forUnreachableURL:]):
   17152         renamed after discussion with Richard (was loadPlaceholderHTMLString:baseURL:unreachableURL:)
   17153         (-[WebFrame _shouldReloadToHandleUnreachableURLFromRequest:]):
   17154         new helper method, returns YES only if we receive a load request for alternate
   17155         content from a delegate for an unreachable URL while we are going back or forward.
   17156         That's a lot of prepositions!
   17157         (-[WebFrame _loadRequest:subresources:]):
   17158         if _shouldReloadToHandleUnreachableURLFromRequest: returns YES, change load type
   17159         to WebFrameLoadTypeReload so b/f list is preserved appropriately.
   17160         (-[WebFrame _transitionToCommitted:]):
   17161         Update currentItem in the unreachableURL case.
   17162         (-[WebFrame _isLoadComplete]):
   17163         Don't reset b/f list before calling provisionalLoadDidFail delegate; instead, determine 
   17164         where to reset b/f list beforehand, and then actually reset list afterwards only if we 
   17165         didn't start an alternate content load in the delegate. Also, set new boolean ivar so we
   17166         know when we're processing a provisionalLoadDidFail delegate callback.
   17167         (-[WebFrame _loadItem:withLoadType:]):
   17168         don't make extra copy before calling __adoptRequest; just pass it the one we made here.
   17169         (-[WebFrame _checkNavigationPolicyForRequest:dataSource:formState:andCall:withSelector:]):
   17170         If we're loading alternate content for an unreachableURL, don't ask the decision listener,
   17171         just do it. (This avoids problem with nested calls to checking the navigation policy that
   17172         led to a WebFrame leak, and is conceptually the right thing to do also.) Also added some
   17173         asserts that helped me track down the WebFrame leak. Set new boolean ivar so we know
   17174         when we're processing a navigation policy delegate decision.
   17175         (-[WebFrame _currentBackForwardListItemToResetTo]):
   17176         new method, replaces _resetBackForwardListToCurrent. Does the same test as the
   17177         latter but returns a boolean rather than actually resetting.
   17178         (-[WebFrame _continueLoadRequestAfterNavigationPolicy:formState:]):
   17179         save dataSource in a local var before calling stopLoading, and use it for
   17180         _setProvisionalDataSource, because otherwise stopLoading was clobbering the dataSource
   17181         for an unreachable URL handling case.
   17182         
   17183         * WebView.subproj/WebFramePrivate.h:
   17184         two new boolean ivars
   17185         
   17186         * WebView.subproj/WebView.m:
   17187         (+[WebView _canHandleRequest:]):
   17188         return YES when we're loading alternate content for an unreachable URL
   17189 
   17190 === Safari-131 ===
   17191 
   17192 2004-03-08  Ken Kocienda  <kocienda (a] apple.com>
   17193 
   17194         Reviewed by Darin
   17195 
   17196         * WebKit.pbproj/project.pbxproj: Added CFBundleName to Info.plist
   17197 
   17198 2004-03-05  Chris Blumenberg  <cblu (a] apple.com>
   17199 
   17200         Fixed: <rdar://problem/3560132>: REGRESSION: Safari crashed in -[NSPasteboard setData:forType:] dragging a map out of Mapquest.com
   17201 
   17202         Reviewed by john.
   17203 
   17204         * Misc.subproj/WebNSPasteboardExtras.m:
   17205         (-[NSPasteboard _web_writeImage:URL:title:fileWrapper:HTMLString:]): declare the pboard types by calling _web_writeURL:::: before calling setData::
   17206 
   17207 2004-03-05  John Sullivan  <sullivan (a] apple.com>
   17208 
   17209         First cut at WebKit support for showing error pages for unreachable URLs.
   17210         This doesn't work quite right with the back/forward list yet, but is
   17211         good enough for demos.
   17212 
   17213         Reviewed by Darin.
   17214 
   17215         * WebView.subproj/WebBaseResourceHandleDelegate.m:
   17216         (-[WebBaseResourceHandleDelegate didReceiveResponse:]):
   17217         use new _webDataRequextExternalURL to share code
   17218         
   17219         * WebView.subproj/WebDataProtocol.h:
   17220         Three new methods (all internal to WebKit):
   17221         -[NSURLRequest _webDataRequestUnreachableURL], -[NSURLRequest _webDataRequestExternalURL],
   17222         -[NSURLRequest _webDataRequestSetUnreachableURL]
   17223         * WebView.subproj/WebDataProtocol.m:
   17224         new unreachableURL field of WebDataRequestParameters
   17225         (-[WebDataRequestParameters copyWithZone:]):
   17226         copy new field
   17227         (-[WebDataRequestParameters dealloc]):
   17228         release new field
   17229         (-[NSURLRequest _webDataRequestUnreachableURL]):
   17230         read new field
   17231         (-[NSURLRequest _webDataRequestExternalURL]):
   17232         new method, returns baseURL or "about:blank" for webdata protocol requests. This
   17233         was done in multiple places previously.
   17234         (-[NSURLRequest _webDataRequestExternalRequest]):
   17235         now calls _webDataRequestExternalURL to share code
   17236         (-[NSMutableURLRequest _webDataRequestSetUnreachableURL:]):
   17237         write new field
   17238         
   17239         * WebView.subproj/WebDataSource.m:
   17240         (-[WebDataSource unreachableURL]):
   17241         new method, might become API; returns the unreachable URL, if any, for which this datasource
   17242         holds placeholder content
   17243         (-[WebDataSource _URLForHistory]):
   17244         new method, returns the URL to be stored in History for this dataSource. This returns nil
   17245         for run-of-the-mill WebDataProtocol URLs (replacing code elsewhere that checked for this
   17246         case) but returns the unreachableURL for the case where this datasource holds placeholder
   17247         content.
   17248         (-[WebDataSource _setTitle:]):
   17249         now calls _URLForHistory
   17250         
   17251         * WebView.subproj/WebDataSourcePrivate.h:
   17252         added unreachableURL in the should-become-API section, and _URLForHistory elsewhere
   17253         
   17254         * WebView.subproj/WebFrame.m:
   17255         (-[WebFrame loadPlaceholderHTMLString:baseURL:unreachableURL:]):
   17256         new should-become-API method for displaying an error page for an unreachable URL
   17257         (-[WebFrame loadPropertyList:]):
   17258         updated to pass nil for unreachableURL
   17259         (-[WebFrame _webDataRequestForData:MIMEType:textEncodingName:baseURL:unreachableURL:]):
   17260         added unreachableURL parameter, which gets set on the data request
   17261         (-[WebFrame _addBackForwardItemClippedAtTarget:]):
   17262         use _URLForHistory instead of just checking for WebDataProtocol
   17263         (-[WebFrame _createItem:]):
   17264         use unreachableURL if there is one
   17265         (-[WebFrame _transitionToCommitted:]):
   17266         use _URLForHistory instead of just checking for WebDataProtocol
   17267         (-[WebFrame _isLoadComplete]):
   17268         check whether a new load has started in the delegate callback and if so, don't
   17269         reset the loading state here
   17270         (-[WebFrame _loadData:MIMEType:textEncodingName:baseURL:unreachableURL:]):
   17271         added unreachableURL parameter, which gets passed through
   17272         (-[WebFrame loadData:MIMEType:textEncodingName:baseURL:]):
   17273         send nil unreachableURL parameter
   17274         (-[WebFrame _loadHTMLString:baseURL:unreachableURL:]):
   17275         new bottleneck method for loadHTMLString:baseURL: and loadPlaceholderHTMLString:baseURL:unreachableURL:;
   17276         this is the guts of loadHTMLString:baseURL: with the new unreachableURL parameter passed through
   17277         (-[WebFrame loadHTMLString:baseURL:]):
   17278         now calls new bottleneck method
   17279         
   17280         * WebView.subproj/WebFramePrivate.h:
   17281         added loadPlaceholderString:baseURL:unreachableURL: to should-be-API section; added unreachableURL
   17282         parameter to _webDataRequestForData:MIMEType:textEncodingName:baseURL:
   17283 
   17284 2004-03-04  Chris Blumenberg  <cblu (a] apple.com>
   17285 
   17286         - Made image dragging and copying always work without needing to re-download by using the data source's WebResource of the image instead of relying on the Foundation cache.
   17287         - Fixed a "drag to self" problem I introduced in my last check-in. You could drag a URL from a WebHTMLView and drop it on its own WebView which we shouldn't allow.
   17288 
   17289         Reviewed by rjw.
   17290 
   17291         * ChangeLog:
   17292         * WebCoreSupport.subproj/WebBridge.m:
   17293         (-[WebBridge fileWrapperForURL:]): call _fileWrapperForURL on WebDataSource
   17294         * WebView.subproj/WebDataSource.m:
   17295         (-[WebDataSource _fileWrapperForURL:]): moved from WebView, creates a wrapper from a WebResource
   17296         * WebView.subproj/WebDataSourcePrivate.h:
   17297         * WebView.subproj/WebDefaultContextMenuDelegate.m:
   17298         (-[WebDefaultUIDelegate copyImageToClipboard:]): call [WebDataSource _fileWrapperForURL:]
   17299         * WebView.subproj/WebHTMLView.m:
   17300         (-[WebHTMLView _handleMouseDragged:]): call [WebDataSource _fileWrapperForURL:]
   17301         (-[WebHTMLView namesOfPromisedFilesDroppedAtDestination:]): call [WebDataSource _fileWrapperForURL:]
   17302         (-[WebHTMLView _dragOperationForDraggingInfo:]): new, factored out from draggingUpdated:
   17303         (-[WebHTMLView draggingEntered:]): call _dragOperationForDraggingInfo:, if NSDragOperationNone, forward to WebView to it can handle the drag
   17304         (-[WebHTMLView draggingUpdated:]): ditto
   17305         (-[WebHTMLView concludeDragOperation:]): ditto
   17306         * WebView.subproj/WebResource.m:
   17307         (-[WebResource _fileWrapperRepresentation]): new
   17308         * WebView.subproj/WebResourcePrivate.h:
   17309         * WebView.subproj/WebView.m:
   17310         (-[WebViewPrivate dealloc]): release draggedTypes, a new ivar that keeps track of drag types that we're currently registered for
   17311         (-[WebView _setDraggedTypes:]): new
   17312         (-[WebView unregisterDraggedTypes]): new, calls _setDraggedTypes then super
   17313         (-[WebView registerForDraggedTypes:]): ditto 
   17314         (-[WebView _dragOperationForDraggingInfo:]): new, compares the types on the pasteboard against the types we are currently registered for. Normally the AppKit handles this for us, but since these messages can be forwarded from WebHTMLView, we need to do this comparison ourselves. 
   17315         (-[WebView draggingEntered:]): calls _dragOperationForDraggingInfo:
   17316         (-[WebView draggingUpdated:]): ditto
   17317         (-[WebView concludeDragOperation:]): ditto
   17318         * WebView.subproj/WebViewPrivate.h: define new draggedTypes ivar
   17319 
   17320 2004-03-03  Chris Blumenberg  <cblu (a] apple.com>
   17321 
   17322         Fixed a typo.
   17323 
   17324         * WebView.subproj/WebHTMLView.m:
   17325         (-[WebHTMLView concludeDragOperation:]):
   17326 
   17327 2004-03-03  Chris Blumenberg  <cblu (a] apple.com>
   17328 
   17329         Fixed: <rdar://problem/3576070>: REGRESSION: web view won't accept drag of webloc file
   17330 
   17331         Reviewed by rjw.
   17332 
   17333         * WebView.subproj/WebHTMLView.m:
   17334         (-[WebHTMLView draggingUpdated:]): if we're not handling the drag, forward this message to the WebView since it may want to handle it
   17335         (-[WebHTMLView concludeDragOperation:]): if we're not handling the drag, forward this message to the WebView since it may want to handle it
   17336 
   17337 2004-03-03  Darin Adler  <darin (a] apple.com>
   17338 
   17339         Reviewed by Vicki.
   17340 
   17341         * English.lproj/InfoPlist.strings: Removed. No need to localize the version and
   17342         copyright string, and that's all that was in here.
   17343         * WebKit.pbproj/project.pbxproj: Removed InfoPlist.strings from build.
   17344 
   17345 2004-03-03  Ken Kocienda  <kocienda (a] apple.com>
   17346 
   17347         Reviewed by Chris
   17348 
   17349         * copy-webcore-files-to-webkit: Fixed up this script so that
   17350         it does not fail if it is running "non-locally", like for
   17351         B&I. The idiom is to check these files into WebKit after
   17352         copying them from WebCore, hence this script is merely
   17353         a convenience to keep the files in sync.
   17354 
   17355 2004-03-02  Ken Kocienda  <kocienda (a] apple.com>
   17356 
   17357         Reviewed by me
   17358 
   17359         * DOM.subproj/DOM.h: Checked in header copied over
   17360         from WebCore.
   17361 
   17362 2004-03-02  Richard Williamson   <rjw (a] apple.com>
   17363 
   17364         Added WebJavaScriptObject API.  The location of this file may
   17365         change.
   17366 
   17367         Reviewed by Chris.
   17368 
   17369         * Plugins.subproj/NP_objc.h: Added.
   17370         * WebKit.pbproj/project.pbxproj:
   17371 
   17372 2004-03-02  Chris Blumenberg  <cblu (a] apple.com>
   17373 
   17374         Fixed: <rdar://problem/3575598>: REGRESSION: Safari crashes at IS&T website
   17375 
   17376         Reviewed by darin.
   17377 
   17378         * WebView.subproj/WebDataSource.m:
   17379         (-[WebDataSourcePrivate dealloc]): don't stop the icon loader here because that can cause an infinite loop
   17380         (-[WebDataSource _stopLoadingInternal]): always stop the icon loader here instead of just when the data source is loading as well.
   17381 
   17382 === Safari-130 ===
   17383 
   17384 2004-03-02  Ken Kocienda  <kocienda (a] apple.com>
   17385 
   17386         Reviewed by me
   17387 
   17388         * DOM.subproj/DOM.h: Rollout last night's checkin.
   17389         The tree was closed.
   17390 
   17391 2004-03-01  Chris Blumenberg  <cblu (a] apple.com>
   17392 
   17393         Fixed: <rdar://problem/3574979>: REGRESSION (129-TOT): crash loading macromedia.com
   17394 
   17395         deliverResource was being called after it had already been called in setDefersCallbacks:.
   17396 
   17397         Reviewed by rjw.
   17398 
   17399         * WebView.subproj/WebBaseResourceHandleDelegate.h:
   17400         * WebView.subproj/WebBaseResourceHandleDelegate.m:
   17401         (-[WebBaseResourceHandleDelegate deliverResource]): set deliveredResource to YES
   17402         (-[WebBaseResourceHandleDelegate deliverResourceAfterDelay]): new, calls deliverResource after a delay
   17403         (-[WebBaseResourceHandleDelegate loadWithRequest:]): call deliverResourceAfterDelay
   17404         (-[WebBaseResourceHandleDelegate setDefersCallbacks:]): call deliverResourceAfterDelay
   17405 
   17406 2004-03-01  Ken Kocienda  <kocienda (a] apple.com>
   17407 
   17408         Reviewed by me
   17409 
   17410         * DOM.subproj/DOM.h: Checked in header copied over
   17411         from WebCore.
   17412 
   17413 2004-03-01  Ken Kocienda  <kocienda (a] apple.com>
   17414 
   17415         Reviewed by me
   17416 
   17417         * DOM.subproj/DOM.h: Oh, it's like the Keystone Cops this afternoon...
   17418         Backed out an unintended change to thsi file.
   17419 
   17420 2004-03-01  Ken Kocienda  <kocienda (a] apple.com>
   17421 
   17422         Reviewed by me
   17423 
   17424         * copy-webcore-files-to-webkit: Dumb typing error on my part in making
   17425         my previous quick fix. This quick fix works. 
   17426 
   17427 2004-03-01  Chris Blumenberg  <cblu (a] apple.com>
   17428 
   17429         Updated the WebKit project file to 1.1 because a previous check-in reverted to 1.01.
   17430 
   17431         * WebKit.pbproj/project.pbxproj:
   17432 
   17433 2004-03-01  Ken Kocienda  <kocienda (a] apple.com>
   17434 
   17435         Reviewed by me
   17436 
   17437         * copy-webcore-files-to-webkit: Made this file buildit-compliant
   17438 
   17439 2004-03-01  Chris Blumenberg  <cblu (a] apple.com>
   17440 
   17441         Found a bug in my last check-in. If a load that originates from a WebResource is cancelled before the data from the WebResource is delivered, callbacks are sent anyway. 
   17442 
   17443         Reviewed by rjw.
   17444 
   17445         * WebView.subproj/WebBaseResourceHandleDelegate.m:
   17446         (-[WebBaseResourceHandleDelegate cancelWithError:]): cancel the perform request for deliverResource
   17447 
   17448 2004-03-01  Chris Blumenberg  <cblu (a] apple.com>
   17449 
   17450         Reviewed by darin.
   17451 
   17452         * Misc.subproj/WebIconLoader.m:
   17453         (-[WebIconLoader didFinishLoading]): rejigger handle code to avoid Deployment failure
   17454         * WebKit.pbproj/project.pbxproj:
   17455 
   17456 2004-03-01  Chris Blumenberg  <cblu (a] apple.com>
   17457 
   17458         - Made WebResource loading not use Foundation at all. This allows "Mail Page" and paste to more directly load subresources without any indirection involving NSURLConnection and the Foundation cache.
   17459         - Made WebIconLoader a subclass of WebBaseResourceHandleDelegate. This makes favicons appear in the activity window among other things.
   17460 
   17461         Reviewed by kocienda.
   17462 
   17463         * Misc.subproj/WebIconLoader.h:
   17464         * Misc.subproj/WebIconLoader.m: removed connection and data ivars since WebBaseResourceHandleDelegate holds these 
   17465         (-[WebIconLoaderPrivate dealloc]): removed calls to deleted ivars
   17466         (-[WebIconLoader URL]): call renamed request ivar
   17467         (-[WebIconLoader startLoading]): call loadWithRequest
   17468         (-[WebIconLoader stopLoading]): call cancel
   17469         (-[WebIconLoader didFinishLoading]):
   17470         * Plugins.subproj/WebNetscapePluginStream.m:
   17471         (-[WebNetscapePluginConnectionDelegate didReceiveResponse:]): renamed to be connection-less since callbacks may came from a WebResource and not an NSURLConnection
   17472         (-[WebNetscapePluginConnectionDelegate didReceiveData:lengthReceived:]): ditto
   17473         (-[WebNetscapePluginConnectionDelegate didFinishLoading]): ditto
   17474         (-[WebNetscapePluginConnectionDelegate didFailWithError:]): ditto
   17475         * WebCoreSupport.subproj/WebSubresourceClient.m:
   17476         (-[WebSubresourceClient didReceiveResponse:]): ditto
   17477         (-[WebSubresourceClient didReceiveData:lengthReceived:]): ditto
   17478         (-[WebSubresourceClient didFinishLoading]): ditto
   17479         (-[WebSubresourceClient didFailWithError:]): ditto
   17480         * WebKit.pbproj/project.pbxproj:
   17481         * WebView.subproj/WebBaseResourceHandleDelegate.h:
   17482         * WebView.subproj/WebBaseResourceHandleDelegate.m:
   17483         (-[WebBaseResourceHandleDelegate loadWithRequest:]): instead of storing the resource in the Foundation cache in order to later load it from the cache, deliver the callbacks ourselves after a delay
   17484         (-[WebBaseResourceHandleDelegate setDefersCallbacks:]): call deliverResource if callbacks are turned back on
   17485         (-[WebBaseResourceHandleDelegate deliverResource]): new, calls didReceiveResponse:, didReceiveData:lengthReceived:, and didFinishLoading
   17486         (-[WebBaseResourceHandleDelegate willSendRequest:redirectResponse:]): renamed to be connection-less since callbacks may came from a WebResource and not an NSURLConnection
   17487         (-[WebBaseResourceHandleDelegate didReceiveAuthenticationChallenge:]): ditto
   17488         (-[WebBaseResourceHandleDelegate didCancelAuthenticationChallenge:]): ditto
   17489         (-[WebBaseResourceHandleDelegate didReceiveResponse:]): ditto
   17490         (-[WebBaseResourceHandleDelegate didReceiveData:lengthReceived:]): ditto
   17491         (-[WebBaseResourceHandleDelegate didFinishLoading]): ditto
   17492         (-[WebBaseResourceHandleDelegate didFailWithError:]): ditto
   17493         (-[WebBaseResourceHandleDelegate willCacheResponse:]): ditto
   17494         (-[WebBaseResourceHandleDelegate connection:willSendRequest:redirectResponse:]): calls connection-less version of this method
   17495         (-[WebBaseResourceHandleDelegate connection:didReceiveAuthenticationChallenge:]): ditto
   17496         (-[WebBaseResourceHandleDelegate connection:didCancelAuthenticationChallenge:]): ditto
   17497         (-[WebBaseResourceHandleDelegate connection:didReceiveResponse:]): ditto
   17498         (-[WebBaseResourceHandleDelegate connection:didReceiveData:lengthReceived:]): ditto
   17499         (-[WebBaseResourceHandleDelegate connectionDidFinishLoading:]): ditto
   17500         (-[WebBaseResourceHandleDelegate connection:didFailWithError:]): ditto
   17501         (-[WebBaseResourceHandleDelegate connection:willCacheResponse:]): ditto
   17502         (-[WebBaseResourceHandleDelegate cancelWithError:]): call renamed _completeProgressForConnectionDelegate on WebView
   17503         (-[WebBaseResourceHandleDelegate cancelledError]): tweak
   17504         * WebView.subproj/WebDataSource.m:
   17505         (-[WebDataSource _loadIcon]): set the data source on the icon loader so it can callback
   17506         * WebView.subproj/WebResource.m:
   17507         (-[WebResource _response]): new, factored out from _cachedResponseRepresentation
   17508         (-[WebResource _cachedResponseRepresentation]): call _response
   17509         * WebView.subproj/WebResourcePrivate.h:
   17510         * WebView.subproj/WebView.m:
   17511         (-[WebView _incrementProgressForConnectionDelegate:response:]): renamed to be connection-less
   17512         (-[WebView _incrementProgressForConnectionDelegate:data:]): ditto
   17513         (-[WebView _completeProgressForConnectionDelegate:]): ditto
   17514         * WebView.subproj/WebViewPrivate.h:
   17515 
   17516 2004-03-01  Ken Kocienda  <kocienda (a] apple.com>
   17517 
   17518         Reviewed by Darin
   17519         
   17520         Changed all Objective-C DOM classes from protocols to classes. 
   17521 
   17522         * DOM.subproj/DOM-compat.h:
   17523         * DOM.subproj/DOM.h:
   17524         * WebCoreSupport.subproj/WebBridge.m:
   17525         (-[WebBridge loadURL:referrer:reload:onLoadEvent:target:triggeringEvent:form:formValues:]):
   17526         (-[WebBridge postWithURL:referrer:target:data:contentType:triggeringEvent:form:formValues:]):
   17527         * WebView.subproj/WebFormDelegate.h:
   17528         * WebView.subproj/WebFormDelegate.m:
   17529         (-[WebFormDelegate frame:sourceFrame:willSubmitForm:withValues:submissionListener:]):
   17530         * WebView.subproj/WebFrame.m:
   17531         (-[WebFrame _loadURL:referrer:loadType:target:triggeringEvent:form:formValues:]):
   17532         (-[WebFrame _postWithURL:referrer:target:data:contentType:triggeringEvent:form:formValues:]):
   17533         (-[WebFormState initWithForm:values:sourceFrame:]):
   17534         (-[WebFormState form]):
   17535         * WebView.subproj/WebFramePrivate.h:
   17536         * WebView.subproj/WebHTMLRepresentation.h:
   17537         * WebView.subproj/WebHTMLRepresentation.m:
   17538         (-[WebHTMLRepresentation DOMDocument]):
   17539         (-[WebHTMLRepresentation setSelectionFrom:startOffset:to:endOffset:]):
   17540         (-[WebHTMLRepresentation attributedStringFrom:startOffset:to:endOffset:]):
   17541         (-[WebHTMLRepresentation elementWithName:inForm:]):
   17542         (-[WebHTMLRepresentation elementForView:]):
   17543         (-[WebHTMLRepresentation elementDoesAutoComplete:]):
   17544         (-[WebHTMLRepresentation elementIsPassword:]):
   17545         (-[WebHTMLRepresentation formForElement:]):
   17546         (-[WebHTMLRepresentation controlsInForm:]):
   17547         (-[WebHTMLRepresentation searchForLabels:beforeElement:]):
   17548         (-[WebHTMLRepresentation matchLabels:againstElement:]):
   17549 
   17550 2004-02-27  John Sullivan  <sullivan (a] apple.com>
   17551 
   17552         - WebKit changes to allow performance improvements to bookmarks 
   17553 
   17554         Reviewed by Darin.
   17555 
   17556         * History.subproj/WebHistoryItemPrivate.h:
   17557         added notificationsSuppressed/setNotificationsSuppressed, and setURLString
   17558         * History.subproj/WebHistoryItem.m:
   17559         (-[WebHistoryItem setNotificationsSuppressed:]):
   17560         setter for new flag. When this flag is set, making changes to the WebHistoryItem
   17561         will not cause WebHistoryChanged notifications to be sent. This is a big speedup
   17562         for reading bookmarks from disk, since currently each WebBookmarkLeaf object
   17563         keeps around a WebHistoryItem object that isn't really part of history and thus
   17564         doesn't need to send notifications about history changing.
   17565         (-[WebHistoryItem notificationsSuppressed]):
   17566         getter for new flag
   17567         (-[WebHistoryItem setURLString:]):
   17568         new method, extracted from guts of setURL:; this allows callers (though
   17569         currently only callers at Apple) that have a URL string in hand to set
   17570         it directly on the WebHistoryItem rather than converting to a URL and
   17571         back, both relatively slow operations. Also, doesn't sent a notification
   17572         if notifications are suppressed.
   17573         (-[WebHistoryItem setURL:]):
   17574         now calls extracted method
   17575         (-[WebHistoryItem setAlternateTitle:]):
   17576         doesn't send notification if notifications are suppressed
   17577         (-[WebHistoryItem setOriginalURLString:]):
   17578         ditto
   17579         (-[WebHistoryItem setTitle:]):
   17580         ditto
   17581         (-[WebHistoryItem _setLastVisitedTimeInterval:]):
   17582         ditto
   17583 
   17584 2004-02-26  Chris Blumenberg  <cblu (a] apple.com>
   17585 
   17586         WebKit side of:
   17587         <rdar://problem/3056566>: mail a link to this page
   17588         <rdar://problem/2961206>: implement ability to e-mail entire page
   17589 
   17590         Reviewed by john.
   17591 
   17592         * English.lproj/StringsNotToBeLocalized.txt:
   17593         * Misc.subproj/WebIconDatabase.m:
   17594         (-[WebIconDatabase _createFileDatabase]): tweaks
   17595         (-[WebIconDatabase _loadIconDictionaries]): fixed an assertion failure I found in Blot. Keep the original list of icon URLs as a separate list when doing the initial clean-up so we don't over release any icons.
   17596         (-[WebIconDatabase _updateFileDatabase]): tweaks
   17597         (-[WebIconDatabase _setIcon:forIconURL:]): tweaks
   17598         (-[WebIconDatabase _releaseIconForIconURLString:]): tweaks
   17599         (-[WebIconDatabase _retainOriginalIconsOnDisk]): use the original list of icons on disk instead of the current list
   17600         (-[WebIconDatabase _releaseOriginalIconsOnDisk]): use the original list of icons on disk instead of the current list
   17601         * Misc.subproj/WebIconDatabasePrivate.h:
   17602         * WebKit.exp:
   17603         * WebKit.pbproj/project.pbxproj:
   17604         * WebView.subproj/WebDataSource.m:
   17605         (-[WebDataSource _propertyListWithData:subresourceURLStrings:]): new, code moved from [WebHTMLView _selectedPropertyList:], creates property list rep of data and subresources
   17606         (-[WebDataSource propertyList]): does the above with all the data source data, this is what "Mail Page" uses
   17607         * WebView.subproj/WebDataSourcePrivate.h:
   17608         * WebView.subproj/WebFrame.m:
   17609         (-[WebFrame loadPropertyList:]): renamed from loadHTMLPropertyList because the property list may contain non-HTML data
   17610         * WebView.subproj/WebFramePrivate.h:
   17611         * WebView.subproj/WebHTMLView.m:
   17612         (-[WebHTMLView _selectedPropertyList:]): renamed, code moved to [WebDataSource _propertyListWithData:subresourceURLStrings:]
   17613         (-[WebHTMLView _writeSelectionToPasteboard:]): call renamed _selectedPropertyList
   17614 
   17615 2004-02-26  Ken Kocienda  <kocienda (a] apple.com>
   17616 
   17617         Reviewed by Chris
   17618 
   17619         Updated usage of DOM SPI to use new names and conventions. 
   17620 
   17621         Unless indicated otherwise, the changes were to update protocol names for, which
   17622         changed from using a "WebDOM" prefix to a "DOM" prefix, and changing now need 
   17623         only include the DOM.h header from WebKit to get everything.
   17624 
   17625         * DOM.subproj/DOM-compat.h: Added. This header contains some compatibility declarations
   17626         to work with older clients of our DOM SPI. Though this file is checked into WebKit, 
   17627         it really lives and should be updated in WebCore. It is copied into WebKit by the build 
   17628         system as needed.
   17629         * DOM.subproj/DOM.h: Added. This file includes the new "guts" of the DOM SPI. As above,
   17630         this file is checked into WebKit, it really lives and should be updated in WebCore.
   17631         It is copied into WebKit by the build system as needed.
   17632         * DOM.subproj/WebDOMDocument.h: Removed declarations. Now just includes DOM.h and DOM-compat.h
   17633         * DOM.subproj/WebDOMDocument.m: Removed.
   17634         * DOM.subproj/WebDOMElement.h: Removed declarations. Now just includes DOM.h and DOM-compat.h
   17635         * DOM.subproj/WebDOMElement.m: Removed.
   17636         * DOM.subproj/WebDOMNode.h: Removed declarations. Now just includes DOM.h and DOM-compat.h
   17637         * DOM.subproj/WebDOMNode.m: Removed.
   17638         * WebCoreSupport.subproj/WebBridge.m:
   17639         (-[WebBridge loadURL:referrer:reload:onLoadEvent:target:triggeringEvent:form:formValues:])
   17640         (-[WebBridge postWithURL:referrer:target:data:contentType:triggeringEvent:form:formValues:])
   17641         * WebKit.pbproj/project.pbxproj:
   17642         * WebView.subproj/WebDefaultContextMenuDelegate.m:
   17643         * WebView.subproj/WebFormDelegate.h:
   17644         * WebView.subproj/WebFormDelegate.m:
   17645         (-[WebFormDelegate frame:sourceFrame:willSubmitForm:withValues:submissionListener:])
   17646         * WebView.subproj/WebFrame.h: Unrelated change. Removed -undoManager accessor from public header. Moved to private header.
   17647         * WebView.subproj/WebFrame.m: 
   17648         (-[WebFrame _loadURL:referrer:loadType:target:triggeringEvent:form:formValues:])
   17649         (-[WebFrame _postWithURL:referrer:target:data:contentType:triggeringEvent:form:formValues:])
   17650         (-[WebFrame undoManager]): Moved -undoManager accessor to private category implementation.
   17651         (-[WebFormState initWithForm:values:sourceFrame:])
   17652         (-[WebFormState form])
   17653         (-[WebFrame childFrames])
   17654         * WebView.subproj/WebFramePrivate.h: Moved in -undoManager accessor.
   17655         * WebView.subproj/WebHTMLRepresentation.h:
   17656         * WebView.subproj/WebHTMLRepresentation.m:
   17657         (-[WebHTMLRepresentation DOMDocument])
   17658         (-[WebHTMLRepresentation setSelectionFrom:startOffset:to:endOffset:])
   17659         (-[WebHTMLRepresentation attributedStringFrom:startOffset:to:endOffset:])
   17660         (-[WebHTMLRepresentation elementWithName:inForm:])
   17661         (-[WebHTMLRepresentation elementForView:])
   17662         (-[WebHTMLRepresentation elementDoesAutoComplete:])
   17663         (-[WebHTMLRepresentation elementIsPassword:])
   17664         (-[WebHTMLRepresentation formForElement:])
   17665         (-[WebHTMLRepresentation controlsInForm:])
   17666         (-[WebHTMLRepresentation searchForLabels:beforeElement:])
   17667         (-[WebHTMLRepresentation matchLabels:againstElement:])
   17668         * WebView.subproj/WebHTMLView.m:
   17669         * copy-webcore-files-to-webkit: Added. Copies DOM.h and DOM-compat.h from WebCore when they
   17670         have been updated there.
   17671 
   17672 2004-02-25  John Sullivan  <sullivan (a] apple.com>
   17673 
   17674         WebKit part of fix for <rdar://problem/3546370>: add a way to tab to menus, 
   17675         checkmarks, and buttons without turning on Full Keyboard Acceess
   17676 
   17677         Reviewed by Ken.
   17678 
   17679         * WebCoreSupport.subproj/WebBridge.m:
   17680         (-[WebBridge _retrieveKeyboardUIModeFromPreferences:]):
   17681         turn on WebCoreKeyboardAccessFull bit whenever we turn on
   17682         WebCoreKeyboardAccessTabsToLinks bit
   17683 
   17684 2004-02-24  Chris Blumenberg  <cblu (a] apple.com>
   17685 
   17686         I forgot to add these files in my last check-in.
   17687 
   17688         * WebView.subproj/WebResource.h: Added.
   17689         * WebView.subproj/WebResource.m: Added.
   17690         (-[WebResourcePrivate dealloc]):
   17691         (-[WebResource initWithData:URL:MIMEType:textEncodingName:]):
   17692         (-[WebResource dealloc]):
   17693         (-[WebResource data]):
   17694         (-[WebResource URL]):
   17695         (-[WebResource MIMEType]):
   17696         (-[WebResource textEncodingName]):
   17697         (+[WebResource _resourcesFromPropertyLists:]):
   17698         (+[WebResource _propertyListsFromResources:]):
   17699         (-[WebResource _initWithPropertyList:]):
   17700         (-[WebResource _initWithCachedResponse:originalURL:]):
   17701         (-[WebResource _propertyListRepresentation]):
   17702         (-[WebResource _cachedResponseRepresentation]):
   17703         * WebView.subproj/WebResourcePrivate.h: Added.
   17704 
   17705 2004-02-24  Chris Blumenberg  <cblu (a] apple.com>
   17706 
   17707         Fixed: <rdar://problem/3565476>: design/implement new pasteboard type for HTML that includes subresources
   17708 
   17709         Reviewed by rjw.
   17710 
   17711         * Plugins.subproj/WebNetscapePluginStream.m:
   17712         (-[WebNetscapePluginConnectionDelegate initWithStream:view:]): don't manage buffer, WebBaseResourceHandleDelegate does this now
   17713         (-[WebNetscapePluginConnectionDelegate releaseResources]): ditto
   17714         (-[WebNetscapePluginConnectionDelegate connection:didReceiveData:lengthReceived:]): ditto
   17715         (-[WebNetscapePluginConnectionDelegate connectionDidFinishLoading:]): ditto
   17716         * WebKit.exp:
   17717         * WebKit.pbproj/project.pbxproj:
   17718         * WebView.subproj/WebBaseResourceHandleDelegate.h:
   17719         * WebView.subproj/WebBaseResourceHandleDelegate.m:
   17720         (-[WebBaseResourceHandleDelegate releaseResources]): release resourceData and resource
   17721         (-[WebBaseResourceHandleDelegate loadWithRequest:]): check the dataSource for a resource, load that if we have one
   17722         (-[WebBaseResourceHandleDelegate addData:]): new, adds data to resourceData
   17723         (-[WebBaseResourceHandleDelegate saveResource]): new, saves data as a resource on the dataSource
   17724         (-[WebBaseResourceHandleDelegate saveResourceWithCachedResponse:]): new, replaces the resource on the dataSource to save memory
   17725         (-[WebBaseResourceHandleDelegate resourceData]): new
   17726         (-[WebBaseResourceHandleDelegate connection:didReceiveData:lengthReceived:]): call addData:
   17727         (-[WebBaseResourceHandleDelegate connectionDidFinishLoading:]): call saveResource
   17728         (-[WebBaseResourceHandleDelegate connection:willCacheResponse:]): new, calls saveResourceWithCachedResponse:
   17729         * WebView.subproj/WebDataSource.m:
   17730         (-[WebDataSourcePrivate dealloc]): release subresources
   17731         (-[WebDataSource subresources]): new, returns the subresources of the data source
   17732         (-[WebDataSource subresourceForURL:]): new, returns a resource for a URL
   17733         (-[WebDataSource addSubresource:]): new
   17734         (-[WebDataSource addSubresources:]): new
   17735         (-[WebDataSource _receivedData:]): added an assert
   17736         (-[WebDataSource _setData:]): replaces the data of the data source
   17737         (-[WebDataSource initWithRequest:]): create subresources
   17738         * WebView.subproj/WebDataSourcePrivate.h:
   17739         * WebView.subproj/WebFrame.m:
   17740         (-[WebFrame loadHTMLPropertyList:]): new, loads a frame from an HTML plist
   17741         (-[WebFrame _webDataRequestForData:MIMEType:textEncodingName:baseURL:]): new, factored out from loadData:MIMEType:textEncodingName:baseURL:
   17742         (-[WebFrame _loadRequest:subresources:]): new, factored out from loadRequest:, handles subresources
   17743         (-[WebFrame loadRequest:]): now just calls _loadRequest:subresources:
   17744         * WebView.subproj/WebFramePrivate.h:
   17745         * WebView.subproj/WebHTMLView.m:
   17746         (-[WebHTMLView _dataSource]): new internal convenience
   17747         (+[WebHTMLView _selectionPasteboardTypes]): renamed from _pasteboardTypes to be more precise
   17748         (-[WebHTMLView _selectedHTMLPropertyList:]): new, constructs an HTML plist from the selection
   17749         (-[WebHTMLView _writeSelectionToPasteboard:]): calls _selectedHTMLPropertyList to support WebHTMLPboardType
   17750         (-[WebHTMLView _pasteHTMLFromPasteboard:]): added support for pasting WebHTMLPboardType
   17751         (+[WebHTMLView initialize]): call renamed _selectionPasteboardTypes 
   17752         (-[WebHTMLView initWithFrame:]): allow WebHTMLPboardType to be dragged in
   17753         (-[WebHTMLView validRequestorForSendType:returnType:]): call renamed _selectionPasteboardTypes 
   17754         * WebView.subproj/WebHTMLViewPrivate.h:
   17755         * WebView.subproj/WebMainResourceClient.m:
   17756         (-[WebMainResourceClient addData:]): override since the main resource does it's own buffering
   17757         (-[WebMainResourceClient saveResource]): override to do nothing since the main resource is not saved as a subresource
   17758         (-[WebMainResourceClient saveResourceWithCachedResponse:]): override, calls _setData on the data source to 
   17759         (-[WebMainResourceClient connection:didReceiveData:lengthReceived:]):
   17760         * WebView.subproj/WebResource.h: Added.
   17761         * WebView.subproj/WebResource.m: Added. New class the represents the data, URL, MIME type and textEncodingName of a resource.
   17762         (-[WebResourcePrivate dealloc]):
   17763         (-[WebResource initWithData:URL:MIMEType:textEncodingName:]):
   17764         (-[WebResource dealloc]):
   17765         (-[WebResource data]):
   17766         (-[WebResource URL]):
   17767         (-[WebResource MIMEType]):
   17768         (-[WebResource textEncodingName]):
   17769         (-[WebResource description]):
   17770         (+[WebResource _resourcesFromPropertyLists:]):
   17771         (+[WebResource _propertyListsFromResources:]):
   17772         (-[WebResource _initWithPropertyList:]):
   17773         (-[WebResource _propertyListRepresentation]):
   17774         (-[WebResource _initWithCachedResponse:originalURL:]):
   17775         (-[WebResource _cachedResponseRepresentation]):
   17776         * WebView.subproj/WebResourcePrivate.h: Added.
   17777         * WebView.subproj/WebView.m:
   17778 
   17779 === Safari-129 ===
   17780 
   17781 2004-02-20  Darin Adler <darin (a] apple.com>
   17782 
   17783         Reviewed by mjs.
   17784 
   17785         - fix build breakage caused by removal of kWindowNoBufferingAttribute.  
   17786 
   17787         * Carbon.subproj/CarbonWindowAdapter.m:
   17788         (-[CarbonWindowAdapter initWithCarbonWindowRef:takingOwnership:disableOrdering:carbon:]):
   17789         always used a retained backing store type
   17790 
   17791 2004-02-20  Chris Blumenberg  <cblu (a] apple.com>
   17792 
   17793         Fixed: <rdar://problem/3563402>: when copying HTML, relative URLs should be made absolute
   17794 
   17795         Reviewed by dave.
   17796 
   17797         * WebView.subproj/WebHTMLRepresentation.h:
   17798         * WebView.subproj/WebHTMLRepresentation.m:
   17799         (-[WebHTMLRepresentation HTMLString]): renamed from reconstructed source to be more analogous with other data get methods
   17800         * WebView.subproj/WebHTMLView.m:
   17801         (-[WebHTMLView _writeSelectionToPasteboard:]): call renamed selectedHTML on the bridge
   17802 
   17803 2004-02-19  John Sullivan  <sullivan (a] apple.com>
   17804 
   17805         - WebKit part of fix for <rdar://problem/3292380>: Cycle Tabs keyboard shortcut 
   17806         (cmd-shift-arrows) conflicts with text editing
   17807 
   17808         Reviewed by Chris.
   17809 
   17810         * WebView.subproj/WebFrameView.m:
   17811         (-[WebFrameView keyDown:]):
   17812         If shift key is down along with an arrow key, call super rather than eating
   17813         event since we don't handle any shifted events here.
   17814 
   17815 2004-02-15  Darin Adler  <darin (a] apple.com>
   17816 
   17817         Reviewed by John and Don.
   17818 
   17819         - discovered that jaguar.com doesn't need spoofing any more, so removed
   17820           the spoofing machinery entirely; if we ever have to bring it back we
   17821           can, but I doubt we will
   17822 
   17823         * WebView.subproj/WebView.m: Removed include of WebUserAgentSpoofTable.c.
   17824         (-[WebViewPrivate dealloc]): Release the new single userAgent rather than
   17825         the array and userAgentOverride we used to.
   17826         (-[WebView _preferencesChangedNotification:]): Release the single user agent,
   17827         rather than the entire cache. Also only do it when the user agent is not
   17828         overridden.
   17829         (-[WebView setApplicationNameForUserAgent:]): Ditto.
   17830         (-[WebView setCustomUserAgent:]): Set the new userAgentOverridden boolean,
   17831         and also set userAgent itself.
   17832         (-[WebView customUserAgent]): Return userAgent, but only if userAgentOverridden
   17833         is true.
   17834         (-[WebView userAgentForURL:]): Simplify, now that there's no automatic spoofing
   17835         to do. Made even simpler by the fact that custom and computed user agents both
   17836         share the same field now.
   17837 
   17838         * WebView.subproj/WebViewPrivate.h: Got rid of UserAgentStringType, turned the
   17839         userAgent field into a single item instead of an array, and replaced the
   17840         userAgentOverride field with a boolean userAgentOverridden field.
   17841 
   17842         * Makefile.am: Removed the rule to build WebUserAgentSpoofTable.c.
   17843         * WebView.subproj/WebUserAgentSpoofTable.c: Removed.
   17844         * WebView.subproj/WebUserAgentSpoofTable.gperf: Removed.
   17845 
   17846 2004-02-15  Darin Adler  <darin (a] apple.com>
   17847 
   17848         Reviewed by Dave.
   17849 
   17850         * WebKit.pbproj/project.pbxproj: Tweak build styles a bit, fixing OptimizedWithSymbols,
   17851         and removing redundant settings of things that match defaults in other build styles.
   17852 
   17853 2004-02-12  Maciej Stachowiak  <mjs (a] apple.com>
   17854 
   17855         Reviewed by John.
   17856 
   17857         - redo visited link history checking for a 2% speed improvement
   17858 
   17859         * History.subproj/WebHistory.m:
   17860         (-[_WebCoreHistoryProvider containsItemForURLString:]): Removed.
   17861         (-[_WebCoreHistoryProvider containsItemForURLLatin1:length:]): Implemented.
   17862         For https and http URLs with empty path, add a slash. Make a CFString
   17863         using the passed-in latin1 buffer without copying.
   17864         (-[_WebCoreHistoryProvider containsItemForURLUnicode:length:]): Ditto
   17865         for unicode.
   17866         (matchLetter): New static helper function.
   17867         (matchUnicodeLetter): Ditto.
   17868 
   17869 === Safari-128 ===
   17870 
   17871 2004-02-10  Ken Kocienda  <kocienda (a] apple.com>
   17872 
   17873         Reviewed by Hyatt
   17874 
   17875         * WebCoreSupport.subproj/WebBridge.m:
   17876         (-[WebBridge registerCommandForUndo]): Some cleanup. Cookie for events no longer needed.
   17877         (-[WebBridge registerCommandForRedo]): Ditto.
   17878         (-[WebBridge clearUndoRedoOperations]): Tells the Cocoa undo manager to clear
   17879         steps targeted at the bridge.
   17880         * WebView.subproj/WebFrame.h: Declare undo manager accessor.
   17881         * WebView.subproj/WebFrame.m:
   17882         (-[WebFramePrivate dealloc]): Release undo manager
   17883         (-[WebFrame undoManager]): Allocate and return an undo manager. This helps
   17884         undo in a browser to be per tab.
   17885         * WebView.subproj/WebFramePrivate.h: Declare undo manager ivar.
   17886 
   17887 2004-02-08  Darin Adler  <darin (a] apple.com>
   17888 
   17889         Reviewed by Dave.
   17890 
   17891         - fixed things seen in the profile, for a total speedup of 4% on cvs-base
   17892         - fixed some layout regressions from my last speedup due to text measurement inconsistencies by adding
   17893           a flag to control whether word rounding is done or not
   17894         - fixed text measurement to be used with AppKit to match AppKit again, as it did at some point in the past
   17895 
   17896         * WebCoreSupport.subproj/WebTextRenderer.h: Remove some unused fields, and added a field to say whether we
   17897         treat this font as fixed pitch.
   17898         * WebCoreSupport.subproj/WebTextRenderer.m:
   17899         (getUncachedWidth): Remove space width hack from this level. There was already a width hack up at the higher
   17900         level for space itself, so there's not a significant speed benefit, and the higher level can make a more
   17901         intelligent choice based on the current rounding setting since it's not cached.
   17902         (-[WebTextRenderer _computeWidthForSpace]): Don't store so many widths; just the adjusted width we will
   17903         actually use.
   17904         (widthForNextCharacter): Use two different rules for when to adjust space widths, based on whether this is
   17905         a fixed pitch font or not. Also, don't do any adjusting of space widths if applyWordRounding is false.
   17906 
   17907         * Misc.subproj/WebKitNSStringExtras.m:
   17908         (-[NSString _web_drawAtPoint:font:textColor:]): Turn off rounding, so we get the kind of spacing AppKit would normally give.
   17909         (-[NSString _web_widthWithFont:]): Ditto.
   17910         * Misc.subproj/WebStringTruncator.m: (stringWidth): Ditto.
   17911 
   17912 2004-02-08  Darin Adler  <darin (a] apple.com>
   17913 
   17914         - fixed things seen in the profile, for a total speedup of 3.7% on cvs-base
   17915 
   17916         * Misc.subproj/WebNSURLExtras.m: (-[NSURL _web_userVisibleString]): Check for "xn--" as we
   17917         walk the string instead of in a separate call to strcasestr. Faster this way.
   17918 
   17919 2004-02-07  Darin Adler  <darin (a] apple.com>
   17920 
   17921         * WebKit.pbproj/project.pbxproj: Get rid of the DEPLOYMENT_LOCATION and DEPLOYMENT_POSTPROCESSING
   17922         flags that were in the Deployment build style. These were causing the need to chmod all the time
   17923         after building WebCore successfully, and were doing us no good.
   17924 
   17925 2004-02-06  Darin Adler  <darin (a] apple.com>
   17926 
   17927         * Resources/missing_image.tiff: Compressed with compress-tiffs; saved 15890 bytes.
   17928 
   17929 === Safari-127 ===
   17930 
   17931 2004-02-05  Ken Kocienda  <kocienda (a] apple.com>
   17932 
   17933         Reviewed by Hyatt
   17934 
   17935         Added so that editing can hook into Cocoa undo architecture. 
   17936 
   17937         * WebCoreSupport.subproj/WebBridge.m:
   17938         (-[WebBridge registerCommandForUndo:]):
   17939 
   17940 2004-02-04  David Hyatt  <hyatt (a] apple.com>
   17941 
   17942         Fix deployment build bustage.
   17943         * Plugins.subproj/WebBaseNetscapePluginView.m:
   17944         (ConsoleConnectionChangeNotifyProc):
   17945 
   17946 2004-02-04  Chris Blumenberg  <cblu (a] apple.com>
   17947 
   17948         Fixed: <rdar://problem/3546028>: Safari should not give plug-ins any time, thus use 0% CPU, when not in the currently active session
   17949 
   17950 
   17951         Reviewed by john.
   17952 
   17953         * Plugins.subproj/WebBaseNetscapePluginView.m:
   17954         (+[WebBaseNetscapePluginView initialize]): observe CG changes
   17955         (-[WebBaseNetscapePluginView addWindowObservers]): observe user switch notifications
   17956         (-[WebBaseNetscapePluginView removeWindowObservers]): stop observing user switch notifications
   17957         (-[WebBaseNetscapePluginView viewHasMoved:]): tweak
   17958         (-[WebBaseNetscapePluginView windowWillClose:]): tweak 
   17959         (-[WebBaseNetscapePluginView windowBecameKey:]): tweak
   17960         (-[WebBaseNetscapePluginView windowResignedKey:]): tweak
   17961         (-[WebBaseNetscapePluginView windowDidMiniaturize:]): tweak
   17962         (-[WebBaseNetscapePluginView windowDidDeminiaturize:]): tweak
   17963         (-[WebBaseNetscapePluginView loginWindowDidSwitchFromUser:]): new, stop null events
   17964         (-[WebBaseNetscapePluginView loginWindowDidSwitchToUser:]): new, restart null events
   17965         (ConsoleConnectionChangeNotifyProc): new, post user switch notifications
   17966 
   17967 2004-02-02  John Sullivan  <sullivan (a] apple.com>
   17968 
   17969         Reviewed by Darin.
   17970 
   17971         * Misc.subproj/WebNSURLExtras.h:
   17972         * Misc.subproj/WebNSURLExtras.m:
   17973         (-[NSURL _web_URLWithLowercasedScheme]):
   17974         new method, returns a URL whose scheme has been tolower'ed
   17975 
   17976         * English.lproj/StringsNotToBeLocalized.txt:
   17977         Updated for recent changes.
   17978 
   17979 2004-02-02  Chris Blumenberg  <cblu (a] apple.com>
   17980 
   17981         Fixed: <rdar://problem/3546924>: REGRESSION: dragging text or images over a WebView is jerky
   17982 
   17983         Reviewed by mjs.
   17984 
   17985         * DOM.subproj/WebDOMNode.h: added HTMLString to the protocol
   17986         * WebView.subproj/WebDefaultContextMenuDelegate.m:
   17987         (-[WebDefaultUIDelegate copyImageToClipboard:]): get the HTML representation via the DOM node
   17988         * WebView.subproj/WebHTMLView.m:
   17989         (-[WebHTMLView _handleMouseDragged:]): get the HTML representation via the DOM node
   17990         * WebView.subproj/WebView.h: removed the HTML string element key constant
   17991         * WebView.subproj/WebView.m: removed the HTML string element key constant
   17992 
   17993 2004-02-02  Chris Blumenberg  <cblu (a] apple.com>
   17994 
   17995         Fixed: <rdar://problem/3546426>: when copying images via context menus, only some data is added to the pasteboard
   17996 
   17997         Reviewed by john.
   17998 
   17999         * Misc.subproj/WebNSPasteboardExtras.h:
   18000         * Misc.subproj/WebNSPasteboardExtras.m:
   18001         (-[NSPasteboard _web_writeImage:URL:title:fileWrapper:HTMLString:]): new, writes and image, URL and other optional arguments to the pasteboard
   18002         * Misc.subproj/WebNSViewExtras.m:
   18003         (-[NSView _web_dragImage:fileWrapper:rect:URL:title:HTMLString:event:]): factored code out to _web_writeImage, call _web_writeImage
   18004         * WebView.subproj/WebDefaultContextMenuDelegate.m:
   18005         (-[WebDefaultUIDelegate copyImageToClipboard:]): call _web_writeImage
   18006         * WebView.subproj/WebImageView.m:
   18007         (-[WebImageView writeImageToPasteboard:]): call _web_writeImage
   18008 
   18009 2004-02-02  Darin Adler  <darin (a] apple.com>
   18010 
   18011         - fixed build failure on Merlot
   18012 
   18013         * Misc.subproj/WebNSPasteboardExtras.m: Import just CoreTranslationFlavorTypeNames.h rather than all of
   18014         ApplicationServicesPriv.h; should compile faster and avoid build failure.
   18015 
   18016 2004-02-02  Chris Blumenberg  <cblu (a] apple.com>
   18017 
   18018         Fixed: <rdar://problem/3546379>: support for editing via drag & drop
   18019 
   18020         Reviewed by kocienda.
   18021 
   18022         * Misc.subproj/WebNSViewExtras.h:
   18023         * Misc.subproj/WebNSViewExtras.m:
   18024         (-[NSView _web_dragImage:fileWrapper:rect:URL:title:HTMLString:event:]): added a HTMLString argument so that we retain all attributes when dragging images
   18025         * WebView.subproj/WebHTMLView.m:
   18026         (-[WebHTMLView _canDelete]): call renamed isSelectionEditable
   18027         (-[WebHTMLView _canPaste]): call renamed isSelectionEditable
   18028         (-[WebHTMLView _pasteHTMLFromPasteboard:]): new, factored out from paste:
   18029         (-[WebHTMLView _handleMouseDragged:]): removed code that returned early if we were loading, this kind of protection is no longer needed since we now retain the view while dragging, call renamed _web_dragImage
   18030         (-[WebHTMLView initWithFrame:]): register for drop types
   18031         (-[WebHTMLView paste:]): call _pasteHTMLFromPasteboard
   18032         (-[WebHTMLView dragImage:at:offset:event:pasteboard:source:slideBack:]): set new isDragging BOOL to YES
   18033         (-[WebHTMLView draggedImage:endedAt:operation:]): set new isDragging BOOL to NO
   18034         (-[WebHTMLView draggingEntered:]): new
   18035         (-[WebHTMLView draggingUpdated:]): new, handle caret movement during the drag
   18036         (-[WebHTMLView prepareForDragOperation:]): new
   18037         (-[WebHTMLView performDragOperation:]): new
   18038         (-[WebHTMLView concludeDragOperation:]): new, paste in the drag
   18039         * WebView.subproj/WebHTMLViewPrivate.h:
   18040         * WebView.subproj/WebImageView.m:
   18041         (-[WebImageView mouseDragged:]): call renamed _web_dragImage
   18042         * WebView.subproj/WebView.h:
   18043         * WebView.subproj/WebView.m:
   18044 
   18045 === Safari-126 ===
   18046 
   18047 2004-01-30  Chris Blumenberg  <cblu (a] apple.com>
   18048 
   18049         Fixed: <rdar://problem/3536126>: REGRESSION (Merlot): WebKit dragging is in strange location
   18050 
   18051         Reviewed by kocienda.
   18052 
   18053         * WebView.subproj/WebHTMLView.m:
   18054         (-[WebHTMLView _handleMouseDragged:]): use the proper offset when dragging text
   18055 
   18056 2004-01-28  John Sullivan  <sullivan (a] apple.com>
   18057 
   18058         More header/footer work: refactored the header/footer code so it could
   18059         be easily reused by other WebDocument classes; used it from WebImageView
   18060         and WebTextView; removed the page count parameters because it's possible
   18061         (though currently nasty, see 3543078) to determine this in the client.
   18062 
   18063         Reviewed by Dave.
   18064 
   18065         * Misc.subproj/WebNSPrintOperationExtras.h Added.
   18066         * Misc.subproj/WebNSPrintOperationExtras.m Added.
   18067         (-[NSPrintOperation _web_pageSetupScaleFactor]):
   18068         new convenience method.
   18069                 
   18070         * WebView.subproj/WebUIDelegatePrivate.h:
   18071         Removed page index and page count parameters from delegate methods.
   18072         
   18073         * WebView.subproj/WebViewPrivate.h:
   18074         New private category for header/footer printing methods so that different
   18075         WebDocument methods can share almost all of the code.
   18076         
   18077         * WebView.subproj/WebView.m:
   18078         (-[WebView _headerHeight]):
   18079         (-[WebView _footerHeight]):
   18080         (-[WebView _drawHeaderInRect:]):
   18081         (-[WebView _drawFooterInRect:]):
   18082         (-[WebView _adjustPrintingMarginsForHeaderAndFooter]):
   18083         (-[WebView _drawHeaderAndFooter]):
   18084         Moved all of these methods here, formerly in WebHTMLView. Removed the
   18085         page index and page count parameters.
   18086 
   18087         * WebView.subproj/WebHTMLView.m:
   18088         Removed all the header/footer code that's now in WebView.m, and the
   18089         method that's now -[NSPrintOperation _web_pageSetupScaleFactor]
   18090         (-[WebHTMLView _setPrinting:minimumPageWidth:maximumPageWidth:adjustViewSize:]):
   18091         call methods differently that have now been moved
   18092         (-[WebHTMLView _scaleFactorForPrintOperation:]):
   18093         ditto
   18094         (-[WebHTMLView knowsPageRange:]):
   18095         ditto
   18096         (-[WebHTMLView drawPageBorderWithSize:]):
   18097         now just turns around and calls -[WebView _drawHeaderAndFooter]
   18098         
   18099         * WebView.subproj/WebImageView.m:
   18100         (-[WebImageView drawPageBorderWithSize:]):
   18101         new method, just calls -[WebView _drawHeaderAndFooter]
   18102         (-[WebImageView beginDocument]):
   18103         now calls -[WebView _adjustPrintMarginsForHeaderAndFooter], also moved in file.
   18104         (-[WebImageView endDocument]):
   18105         just moved in file.
   18106 
   18107         * WebView.subproj/WebTextView.m:
   18108         (-[WebTextView drawPageBorderWithSize:]):
   18109         new method, just calls -[WebView _drawHeaderAndFooter]        
   18110         (-[WebTextView knowsPageRange:]):
   18111         overridden to call -[WebView _adjustPrintMarginsForHeaderAndFooter]
   18112         
   18113         * WebKit.pbproj/project.pbxproj:
   18114         updated for added files
   18115 
   18116 
   18117 2004-01-28  Chris Blumenberg  <cblu (a] apple.com>
   18118 
   18119         Fixed: <rdar://problem/3197222>: need context menu items for back, forward, refresh.
   18120 
   18121         Reviewed by rjw.
   18122 
   18123         * English.lproj/Localizable.strings:
   18124         * WebView.subproj/WebDefaultContextMenuDelegate.m:
   18125         (-[WebDefaultUIDelegate menuItemWithTag:]): added support for WebMenuItemTagGoBack, WebMenuItemTagGoForward, WebMenuItemTagStop and WebMenuItemTagReload tags
   18126         (-[WebDefaultUIDelegate webView:contextMenuItemsForElement:defaultMenuItems:]): added support for Back, Forward, Stop and Reload
   18127         * WebView.subproj/WebUIDelegate.h: added WebMenuItemTagGoBack, WebMenuItemTagGoForward, WebMenuItemTagStop and WebMenuItemTagReload tags
   18128 
   18129 2004-01-27  John Sullivan  <sullivan (a] apple.com>
   18130 
   18131         WebKit part of fixes for:
   18132         <rdar://problem/3123975>: ER: please list the source URL in the header 
   18133         or footer when printing the contents of a page
   18134         <rdar://problem/3184091>: Safari - Configurable printing header/footer
   18135         <rdar://problem/3306826>: Please allow printing the date (as well as URL) 
   18136         in the header or footer
   18137 
   18138         Reviewed by Dave.
   18139 
   18140         * WebView.subproj/WebHTMLView.m:
   18141         (-[WebHTMLView _headerHeight]):
   18142         new method, gets result from WebView's UI delegate or returns 0
   18143         (-[WebHTMLView _footerHeight]):
   18144         new method, gets result from WebView's UI delegate or returns 0
   18145         (-[WebHTMLView _drawHeaderInRect:]):
   18146         new method, gives WebView's UI delegate a chance to draw header
   18147         (-[WebHTMLView _drawFooterInRect:]):
   18148         new method, gives WebView's UI delegate a chance to draw footer
   18149         (-[WebHTMLView _adjustPrintingMarginsForHeaderAndFooter]):
   18150         new method, adds header and footer heights into page margins so
   18151         AppKit printing code will compute and use the right area
   18152         (-[WebHTMLView _setPrinting:minimumPageWidth:maximumPageWidth:adjustViewSize:]):
   18153         now calls _adjustPrintingMarginsForHeaderAndFooter if starting to print
   18154         (-[WebHTMLView drawPageBorderWithSize:]):
   18155         new method, computes rects for header and footer and calls new drawing methods
   18156         
   18157         * WebView.subproj/WebUIDelegatePrivate.h:
   18158         add header and footer-related delegate methods
   18159 
   18160 2004-01-27  Chris Blumenberg  <cblu (a] apple.com>
   18161 
   18162         Fixed:
   18163         <rdar://problem/3541812>: Implement Paste menu item
   18164         <rdar://problem/3541814>: Implement Delete menu item
   18165         <rdar://problem/3541811>: Implement Cut menu item
   18166 
   18167         Reviewed by dave.
   18168 
   18169         * WebView.subproj/WebHTMLView.m:
   18170         (-[WebHTMLView _haveSelection]): new, renamed from hasSelection, calls haveSelection on the bridge, quicker than generating string rep of selection
   18171         (-[WebHTMLView _canDelete]): new
   18172         (-[WebHTMLView _canPaste]): new
   18173         (-[WebHTMLView takeFindStringFromSelection:]): call renamed _haveSelection
   18174         (-[WebHTMLView cut:]): new
   18175         (-[WebHTMLView delete:]): new
   18176         (-[WebHTMLView paste:]): new
   18177         (-[WebHTMLView validateUserInterfaceItem:]): updated for new methods
   18178         (-[WebHTMLView validRequestorForSendType:returnType:]): call renamed _haveSelection
   18179         * WebView.subproj/WebHTMLViewPrivate.h:
   18180 
   18181 2004-01-27  Chris Blumenberg  <cblu (a] apple.com>
   18182 
   18183         Fixed build breakage.
   18184 
   18185         Reviewed by darin.
   18186 
   18187         * WebKit.pbproj/project.pbxproj: Use full path instead of -L to get at WebKitSecurity.a
   18188 
   18189 2004-01-27  Chris Blumenberg  <cblu (a] apple.com>
   18190 
   18191         Fixed: <rdar://problem/3536624>: Webkit 1.2 links against SecurityNssAsn1.framework
   18192 
   18193         Reviewed by Darin.
   18194 
   18195         * WebCoreSupport.subproj/WebKeyGeneration.h: Set DISABLE_WEB_KEY_GENERATION on Merlot for now.
   18196         Then don't include anything if that's set.
   18197         * WebCoreSupport.subproj/WebKeyGeneration.cpp: Don't compile anything if DISABLE_WEB_KEY_GENERATION
   18198         is set.
   18199         * WebCoreSupport.subproj/WebKeyGenerator.m:
   18200         (-[WebKeyGenerator signedPublicKeyAndChallengeStringWithStrengthIndex:challenge:pageURL:]):
   18201         Always return nil if DISABLE_WEB_KEY_GENERATION is set.
   18202         (-[WebKeyGenerator addCertificatesToKeychainFromData:]): Always return failure if
   18203         DISABLE_WEB_KEY_GENERATION is set.
   18204 
   18205         * WebKit.pbproj/project.pbxproj: Added shell build step to make library with security
   18206         libraries in it. On Merlot, makes empty library. Also added library to link options.
   18207         * WebKitSecurityDummy.c: Added. Used to make empty version of library for build on Merlot.
   18208 
   18209 2004-01-26  Darin Adler  <darin (a] apple.com>
   18210 
   18211         * Makefile.am: Switch from pbxbuild to xcodebuild.
   18212 
   18213 2004-01-26  Darin Adler  <darin (a] apple.com>
   18214 
   18215         Reviewed by John.
   18216 
   18217         - fixed <rdar://problem/3521379>: image dimensions uses lowercase x instead of multiplication sign
   18218 
   18219         * WebView.subproj/WebImageRepresentation.m: (-[WebImageRepresentation title]):
   18220         Change string to use multiplication sign instead of x.
   18221         * English.lproj/Localizable.strings: Updated.
   18222 
   18223 2004-01-23  Ken Kocienda  <kocienda (a] apple.com>
   18224 
   18225         Reviewed by Richard
   18226 
   18227         * WebView.subproj/WebHTMLView.m:
   18228         (-[WebHTMLView updateShowsFirstResponder]): Renamed from updateFocusRing:
   18229         since it is now used to kill caret blink timer.
   18230         (-[WebHTMLView windowDidBecomeKey:]): Now calls new updateShowsFirstResponder
   18231         method.
   18232         (-[WebHTMLView windowDidResignKey:]): Ditto.
   18233 
   18234 2004-01-22  Chris Blumenberg  <cblu (a] apple.com>
   18235 
   18236         Fixed: <rdar://problem/3537542>: support for copying HTML
   18237 
   18238         Reviewed by dave.
   18239 
   18240         * WebView.subproj/WebHTMLRepresentation.h:
   18241         * WebView.subproj/WebHTMLRepresentation.m:
   18242         (-[WebHTMLRepresentation reconstructedSource]): for BLOT's eventual use
   18243         * WebView.subproj/WebHTMLView.m:
   18244         (+[WebHTMLView _pasteboardTypes]): provide NSHTMLPboardType 
   18245         (-[WebHTMLView _writeSelectionToPasteboard:]): add HTML to the pasteboard
   18246 
   18247 2004-01-22  John Sullivan  <sullivan (a] apple.com>
   18248 
   18249         Reviewed by Chris.
   18250 
   18251         * English.lproj/StringsNotToBeLocalized.txt:
   18252         brought this file back up to date
   18253 
   18254 2004-01-22  Darin Adler  <darin (a] apple.com>
   18255 
   18256         - fixed 3536624: Webkit 1.2 links against SecurityNssAsn1.framework
   18257 
   18258         * WebKit.pbproj/project.pbxproj: Remove SecurityNssAsn1.framework from the list we link against.
   18259         It's still included in the list for places to find headers.
   18260 
   18261 === Safari-125 ===
   18262 
   18263 === Safari-124 ===
   18264 
   18265 2004-01-15  Vicki Murley  <vicki (a] apple.com>
   18266 
   18267         Reviewed by Darin.
   18268 
   18269         * WebKit.pbproj/project.pbxproj: Update copyright date to 2004.
   18270         * English.lproj/InfoPlist.strings: Update copyright date to 2004.
   18271 
   18272 === Safari-122 ===
   18273 
   18274 === Safari-121 ===
   18275 
   18276 2004-01-10  Darin Adler  <darin (a] apple.com>
   18277 
   18278         Reviewed by John.
   18279 
   18280         - fixed 3524906: REGRESSION (114-115): page with plug-in content never stops loading (travelking.com.tw)
   18281 
   18282         Put the plug-in streams clients into their own separate set. Now a plug-in client is not considered part
   18283         of "loading", but it does participate in the callback deferral mechanism, which was the real goal of the
   18284         change I made that introduced this regression. Also remove the plug-in client in one case I had missed
   18285         before (cancel).
   18286 
   18287         * WebView.subproj/WebDataSourcePrivate.h: Added a new set of plugInStreamClients.
   18288         * WebView.subproj/WebDataSource.m:
   18289         (-[WebDataSourcePrivate dealloc]): Release the set.
   18290         (-[WebDataSource _addPlugInStreamClient:]): Added. Adds to the set.
   18291         (-[WebDataSource _removePlugInStreamClient:]): Added. Removes from the set.
   18292         (-[WebDataSource _defersCallbacksChanged]): Added code to loop through plugInStreamClients too.
   18293 
   18294         * Plugins.subproj/WebNetscapePluginStream.m:
   18295         (-[WebNetscapePluginStream start]): Use _add/removePlugInStreamClient instead of _add/removeSubresourceClient.
   18296         (-[WebNetscapePluginConnectionDelegate connectionDidFinishLoading:]): Ditto.
   18297         (-[WebNetscapePluginConnectionDelegate connection:didFailWithError:]): Ditto.
   18298         (-[WebNetscapePluginConnectionDelegate cancelWithError:]): Override to call _removePlugInStreamClient and
   18299         then call super.
   18300 
   18301 2004-01-09  Darin Adler  <darin (a] apple.com>
   18302 
   18303         - rolled out most of Dave's change for 3510669 and 3515442; it is not working yet
   18304 
   18305         * WebView.subproj/WebHTMLViewPrivate.h:
   18306         * WebView.subproj/WebHTMLView.m:
   18307 
   18308 2004-01-09  Maciej Stachowiak  <mjs (a] apple.com>
   18309 
   18310         Reviewed by Chris.
   18311 
   18312         <rdar://problem/3514446>: cert downloaded from BofA or MIT is rejected (ACL issue on private key?)
   18313         
   18314         * WebCoreSupport.subproj/WebKeyGeneration.cpp:
   18315         (createPair): Cut & paste hunk of code from Security framework.
   18316         (Safari_SecKeyCreatePair): Ditto.
   18317         (signedPublicKeyAndChallengeString): Instead of creating a normal ACL,
   18318         use our hacked version of the SecKeyCreatePair call that doesn't put in
   18319         any kind of ACL. This works around a SecureTransport bug.
   18320 
   18321 2004-01-09  David Hyatt  <hyatt (a] apple.com>
   18322 
   18323         Fixes for 3510669 and 3515442, blank frame problems caused by WebKit's resizing not scheduling actual
   18324         layouts via WebCore.
   18325         Reviewed by darin
   18326 
   18327         * WebView.subproj/WebHTMLView.m:
   18328         (-[WebHTMLView _web_layoutIfNeededRecursive:testDirtyRect:]):
   18329         (-[WebHTMLView initWithFrame:]):
   18330         (-[WebHTMLView layoutToMinimumPageWidth:maximumPageWidth:adjustingViewSize:]):
   18331         (-[WebHTMLView setNeedsLayout:]):
   18332         * WebView.subproj/WebHTMLViewPrivate.h:
   18333 
   18334 2004-01-09  Darin Adler  <darin (a] apple.com>
   18335 
   18336         Reviewed by Chris.
   18337 
   18338         - fixed 3510805: "PoolCleaner" in Carbon WebKit leads to overrelease and crash using color picker in BBEdit
   18339 
   18340         * Carbon.subproj/CarbonUtils.m: (PoolCleaner): Only do the autorelease
   18341         pool stuff in the default run loop mode. If we're in another run loop
   18342         mode that means we are in some Cocoa code that sets up its own autorelease
   18343         pool; it's important that we don't release ours in that case.
   18344 
   18345 2004-01-08  Maciej Stachowiak  <mjs (a] apple.com>
   18346 
   18347         Reviewed by John.
   18348 
   18349         <rdar://problem/3522298>: Error on MIT's x509 certificate site
   18350 
   18351         * WebCoreSupport.subproj/WebKeyGeneration.cpp:
   18352         (addCertificatesToKeychainFromData): Sign the freshly minted public key
   18353         using RSA/MD5 instead of RSA/SHA-1, because MIT only supports MD5.
   18354 
   18355 2004-01-08  Richard Williamson   <rjw (a] apple.com>
   18356 
   18357         Fixed 3524430.  This was a regression introduced when we added '-' and '?' to the word boundary detection.
   18358 
   18359         Also backed out workaround for 3521759 as it's no longer needed with correct argument passing to ATSUPositionToOffset.
   18360 
   18361         Reviewed by Hyatt.
   18362 
   18363         * WebCoreSupport.subproj/WebTextRenderer.m:
   18364         (-[WebTextRenderer _ATSU_pointToOffset:style:position:reversed:]):
   18365         (widthForNextCharacter):
   18366 
   18367 2004-01-08  Chris Blumenberg  <cblu (a] apple.com>
   18368 
   18369         Fixed: <rdar://problem/3522900>: REGRESSION (100-117): Java plug-in description is garbled when displaying Plug-ins.html
   18370 
   18371         Reviewed by darin.
   18372 
   18373         * Misc.subproj/WebKitNSStringExtras.h:
   18374         * Misc.subproj/WebKitNSStringExtras.m:
   18375         (+[NSString _web_encodingForResource:]): new method, returns the encoding for a resource handle given its file system path
   18376         * Plugins.subproj/WebNetscapePluginPackage.m:
   18377         (-[WebNetscapePluginPackage stringForStringListID:andIndex:]): call _web_encodingForResource when creating the NSString
   18378 
   18379 === Safari-120 ===
   18380 
   18381 2004-01-06  Richard Williamson   <rjw (a] apple.com>
   18382 
   18383         Fixed 3513660.  Make ATSU layout and draw with integer glyph boundaries.  This fix should be removed if/when we convert WebCore to use floats for measuring/positioning (3521781).
   18384 
   18385         Reviewed by John.
   18386 
   18387         * WebCoreSupport.subproj/WebTextRenderer.m:
   18388         (-[WebTextRenderer _createATSUTextLayoutForRun:]):
   18389 
   18390 2004-01-05  Richard Williamson   <rjw (a] apple.com>
   18391 
   18392         Fix for 3514454.  Work-around added for 3521759.
   18393 
   18394         Filed 3521781 to cover deeper problem.
   18395 
   18396         Reviewed by Kocienda.
   18397 
   18398         * WebCoreSupport.subproj/WebTextRenderer.m:
   18399         (-[WebTextRenderer _ATSU_drawHighlightForRun:style:atPoint:]):
   18400         (-[WebTextRenderer _ATSU_pointToOffset:style:position:reversed:]):
   18401 
   18402 2003-12-22  John Sullivan  <sullivan (a] apple.com>
   18403 
   18404         - WebKit part of fix for <rdar://problem/3515706>: 
   18405         REGRESSION (100-118): Web Kit printing does not honor Page Setup scale factor
   18406 
   18407         Reviewed by Darin.
   18408 
   18409         * WebView.subproj/WebHTMLView.m:
   18410         (-[WebHTMLView _userScaleFactorForPrintOperation:]):
   18411         new method, extracts the scale factor provided by the user in
   18412         the Page Setup dialog
   18413         (-[WebHTMLView _scaleFactorForPrintOperation:]):
   18414         take user scale factor into account
   18415         (-[WebHTMLView knowsPageRange:]):
   18416         renamed local var scaleFactor -> totalScaleFactor for clarity;
   18417         take user scale factor into account for print width; now assumes
   18418         computePageRects returns autoreleased result.
   18419 
   18420         * WebKit.pbproj/project.pbxproj:
   18421         Xcode version wars; Darin says these don't affect the build.
   18422 
   18423 2003-12-21  Darin Adler  <darin (a] apple.com>
   18424 
   18425         Reviewed by John.
   18426 
   18427         - fixed a storage leak
   18428 
   18429         * WebView.subproj/WebFrame.m:
   18430         (-[WebFrame _loadURL:referrer:loadType:target:triggeringEvent:form:formValues:]):
   18431         Move the release of the request out of an if statement, since it's always needed.
   18432 
   18433 2003-12-19  Chris Blumenberg  <cblu (a] apple.com>
   18434 
   18435         Fixed: <rdar://problem/3515255>: Standalone image drag makes ocassionally makes 2 copies
   18436 
   18437         Reviewed by john.
   18438 
   18439         * WebKit.pbproj/project.pbxproj: Xcode 1.1 file format change
   18440         * WebView.subproj/WebImageView.h:
   18441         * WebView.subproj/WebImageView.m: copied double-drag protection code from WebHTMLView
   18442         (-[WebImageView mouseDown:]): set ignoringMouseDraggedEvents to NO
   18443         (-[WebImageView mouseDragged:]): if ignoringMouseDraggedEvents, return
   18444         (-[WebImageView draggedImage:endedAt:operation:]): set ignoringMouseDraggedEvents to YES
   18445 
   18446 === Safari-119 ===
   18447 
   18448 2003-12-18  Richard Williamson   <rjw (a] apple.com>
   18449 
   18450         Fixed 3511415.  We have to un-visually order visually ordered text
   18451         before passing to ATSU.
   18452 
   18453         Reviewed by John.
   18454 
   18455         * WebCoreSupport.subproj/WebTextRenderer.m:
   18456         (reverseCharactersInRun):
   18457         (-[WebTextRenderer _ATSU_drawHighlightForRun:style:atPoint:]):
   18458         (-[WebTextRenderer _ATSU_drawRun:style:atPoint:]):
   18459         (-[WebTextRenderer _ATSU_pointToOffset:style:position:reversed:]):
   18460 
   18461 2003-12-17  Richard Williamson   <rjw (a] apple.com>
   18462 
   18463         Fixed 3503011 (really, this time).  Always use integer width for '-' and '?', as we do for spaces, to ensure
   18464         that 'words' (as defined by out rounding hack) start on integer boundaries.
   18465 
   18466         Reviewed by John.
   18467 
   18468         * WebCoreSupport.subproj/WebTextRenderer.m:
   18469         (widthForNextCharacter):
   18470 
   18471 2003-12-17  Chris Blumenberg  <cblu (a] apple.com>
   18472 
   18473         Fixed:
   18474         <rdar://problem/3393758>: REGRESSION (85-100): Flash onKeyUp event non-functional
   18475         <rdar://problem/3479020>: REGRESSION (85-100): Safari sends plug-in key events to wrong instance of plug-in
   18476 
   18477         Reviewed by darin.
   18478 
   18479         * Plugins.subproj/WebBaseNetscapePluginView.h:
   18480         * Plugins.subproj/WebBaseNetscapePluginView.m:
   18481         (-[WebBaseNetscapePluginView sendEvent:]): set suspendKeyUpEvents to NO
   18482         (-[WebBaseNetscapePluginView keyMessageForEvent:]): copied from CVS
   18483         (-[WebBaseNetscapePluginView keyUp:]): if !suspendKeyUpEvents, send the keyUp event
   18484         (-[WebBaseNetscapePluginView keyDown:]): set suspendKeyUpEvents to YES
   18485         (-[WebBaseNetscapePluginView windowBecameKey:]): call SetUserFocusWindow
   18486 
   18487 2003-12-17  Darin Adler  <darin (a] apple.com>
   18488 
   18489         Reviewed by Richard.
   18490 
   18491         - fixed 3513274: REGRESSION: anchor navigation within frames with "Back" is broken at tivofaq.com
   18492 
   18493         * WebView.subproj/WebDataSource.m: (-[WebDataSource _setURL:]):
   18494         Since this method is only used when you do a fragment scroll, we need to update
   18495         the original request as well as the request. This ensure that the fragment gets
   18496         recorded in the history item (which goes in the back/forward history).
   18497 
   18498 === Safari-118 ===
   18499 
   18500 2003-12-17  John Sullivan  <sullivan (a] apple.com>
   18501 
   18502         - fixed <rdar://problem/3512801>: REGRESSION (Safari 100-116): 
   18503         Mike Hay's Magic 8-ball game ignores slow clicks
   18504 
   18505         Reviewed by Darin.
   18506 
   18507         * WebView.subproj/WebHTMLView.m:
   18508         (-[WebHTMLView _handleAutoscrollForMouseDragged:]):
   18509         start the autoscroll timer here, so the timer only runs when KHTML is
   18510         handling the event.
   18511         (-[WebHTMLView mouseDown:]):
   18512         don't start the autoscroll timer here.
   18513 
   18514 2003-12-16  Ken Kocienda  <kocienda (a] apple.com>
   18515 
   18516         * WebCoreSupport.subproj/WebBridge.m: ObjC runtime needs a declaration for new
   18517         _calculatedExpiration SPI in NSURLResponse in Foundation
   18518 
   18519 2003-12-16  Richard Williamson   <rjw (a] apple.com>
   18520 
   18521         Fixed 3512348:  Rewrote _CG_drawHighlightForRun:style:atPoint: to use width
   18522         iterators.  Much faster, better cheaper, etc.
   18523 
   18524         Reviewed by Dave.
   18525 
   18526         * WebCoreSupport.subproj/WebTextRenderer.m:
   18527         (-[WebTextRenderer _CG_drawHighlightForRun:style:atPoint:]):
   18528 
   18529 2003-12-16  Richard Williamson   <rjw (a] apple.com>
   18530 
   18531         Fixed 3503011.  Added '-' and '?' to rounding hack.
   18532 
   18533         Reviewed by John.
   18534 
   18535         * WebCoreSupport.subproj/WebTextRenderer.m:
   18536         (isRoundingHackCharacter):
   18537         (widthForNextCharacter):
   18538 
   18539 2003-12-16  Darin Adler  <darin (a] apple.com>
   18540 
   18541         Reviewed by Richard.
   18542 
   18543         - finished fix to 3109132: can't open movie file via open panel
   18544 
   18545         * WebView.subproj/WebView.m: (+[WebView _supportedFileExtensions]):
   18546         Include all the extensions for each MIME type, not jus the preferred one.
   18547 
   18548 2003-12-16  Ken Kocienda  <kocienda (a] apple.com>
   18549 
   18550         Reviewed by Darin
   18551 
   18552         Fix for this bug:
   18553 
   18554         <rdar://problem/3512199>: WebBridge expiresTimeForResponse can be 
   18555         improved to use better expiration calculations
   18556 
   18557         * WebCoreSupport.subproj/WebBridge.m:
   18558         (-[WebBridge expiresTimeForResponse:]): Switch to use new 
   18559         _calculatedExpiration SPI method on NSURLResponse.
   18560 
   18561 2003-12-15  Chris Blumenberg  <cblu (a] apple.com>
   18562 
   18563         Fixed: <rdar://problem/3505546>: always get keychain prompt when sending mail using cert downloaded with Safari
   18564 
   18565         Reviewed by john.
   18566 
   18567         * WebCoreSupport.subproj/WebKeyGeneration.cpp:
   18568         (signedPublicKeyAndChallengeString): set up the SecAccessRef with "everything goes" restrictions
   18569 
   18570 2003-12-14  Darin Adler  <darin (a] apple.com>
   18571 
   18572         Reviewed by Maciej.
   18573 
   18574         - fixed 3311205: click() on a file input type form element does not work bring up the file chooser as it does in IE
   18575 
   18576         * WebCoreSupport.subproj/WebFileButton.m: (-[WebFileButton performClick]):
   18577         Add method for clicking, now part of the WebCoreFileButton protocol.
   18578         The rest of the fix is in WebCore.
   18579 
   18580 2003-12-13  Darin Adler  <darin (a] apple.com>
   18581 
   18582         Fixed by Ed Voas, reviewed by me.
   18583 
   18584         - fixed 3278443: CARBON: grow box obscures scroll bar knob
   18585 
   18586         * Carbon.subproj/CarbonWindowAdapter.m: (-[CarbonWindowAdapter _growBoxRect]):
   18587         Return the grow box so AppKit's scroll bar code will know where it is.
   18588 
   18589 2003-12-12  Ken Kocienda  <kocienda (a] apple.com>
   18590 
   18591         * WebCoreSupport.subproj/WebKeyGeneration.cpp:
   18592         (signedPublicKeyAndChallengeString): Fix build-bustin' typo.
   18593 
   18594 2003-12-12  Chris Blumenberg  <cblu (a] apple.com>
   18595 
   18596         Fixed:
   18597         <rdar://problem/3396936>: can't obtain a digital ID from Verisign, form submission fails
   18598         <rdar://problem/3505208>: keys added to keychain from KEYGEN need better UI names
   18599 
   18600         Reviewed by rjw.
   18601 
   18602         * English.lproj/Localizable.strings:
   18603         * WebCoreSupport.subproj/WebKeyGeneration.cpp:
   18604         (signedPublicKeyAndChallengeString): take a key description arg and use it, take and return CFStrings, handle the empty string case
   18605         (addCertificatesToKeychainFromData): return a WebCertificateParseResult so WB knows how to handle the cert
   18606         * WebCoreSupport.subproj/WebKeyGeneration.h:
   18607         * WebCoreSupport.subproj/WebKeyGenerator.h:
   18608         * WebCoreSupport.subproj/WebKeyGenerator.m:
   18609         (-[WebKeyGenerator signedPublicKeyAndChallengeStringWithStrengthIndex:challenge:pageURL:]): take a page URL so we can use its host name in the key description
   18610         * WebKit.pbproj/project.pbxproj:
   18611 
   18612 2003-12-12  Vicki Murley  <vicki (a] apple.com>
   18613 
   18614         * WebKit.pbproj/project.pbxproj:
   18615 
   18616 2003-12-12  Vicki Murley  <vicki (a] apple.com>
   18617 
   18618         * WebKit.pbproj/project.pbxproj:
   18619 
   18620 2003-12-12  Vicki Murley  <vicki (a] apple.com>
   18621 
   18622         * WebKit.pbproj/project.pbxproj:
   18623 
   18624 2003-12-11  Ken Kocienda  <kocienda (a] apple.com>
   18625 
   18626         Reviewed by Darin
   18627 
   18628         Fix for this bug:
   18629 
   18630         <rdar://problem/3489280>: redirect via post blows cache, causing everything to get reloaded
   18631 
   18632         Now POST requests reload the main document by default, but will not reload 
   18633         all subresources.
   18634 
   18635         * WebCoreSupport.subproj/WebSubresourceClient.m:
   18636         (+[WebSubresourceClient startLoadingResource:withRequest:customHeaders:referrer:forDataSource:]):
   18637         * WebView.subproj/WebFrame.m:
   18638         (-[WebFrame _postWithURL:referrer:target:data:contentType:triggeringEvent:form:formValues:]):
   18639         Take the cache policy for subresources from the original request, rather than
   18640         the data source's current request. 
   18641         * WebView.subproj/WebMainResourceClient.m:
   18642         (-[WebMainResourceClient _isPostOrRedirectAfterPost:redirectResponse:]): New helper.
   18643         (-[WebMainResourceClient connection:willSendRequest:redirectResponse:]):
   18644         Call new helper to set the cache policy on the main resource load.
   18645 
   18646 === Safari-117 ===
   18647 
   18648 2003-12-11  Ken Kocienda  <kocienda (a] apple.com>
   18649 
   18650         Reviewed by Darin
   18651 
   18652         * WebCoreSupport.subproj/WebBridge.m: time_t is a signed type, so
   18653         casting -1 to a time_t does not work to make a max value.
   18654         We'll go with INT_MAX.
   18655 
   18656 2003-12-11  Ken Kocienda  <kocienda (a] apple.com>
   18657 
   18658         Reviewed and C++ heavy-lifting by Darin
   18659 
   18660         Fix warnings in C++ files.
   18661 
   18662         * WebCoreSupport.subproj/WebKeyGeneration.cpp:
   18663         (signedPublicKeyAndChallengeString): Add cast to remove warning.
   18664         (addCertificatesToKeychainFromData): Add cast to remove warning.
   18665         * WebKit.pbproj/project.pbxproj: Add back warnings to C++ files.
   18666         * WebKitPrefix.h: Add define for NULL that works for C++.
   18667 
   18668 2003-12-09  Ken Kocienda  <kocienda (a] apple.com>
   18669 
   18670         Reviewed by Darin
   18671         
   18672         <rdar://problem/3505444>: WebCore cache does not use expiration dates on cache items
   18673         
   18674         * WebCoreSupport.subproj/WebBridge.m:
   18675         (-[WebBridge expiresTimeForResponse:]): New method. Call response
   18676         freshness lifetime method and add it to the current time to yield
   18677         an expiration time.
   18678 
   18679 2003-12-10  Maciej Stachowiak  <mjs (a] apple.com>
   18680 
   18681         Reviewed by Richard.
   18682 
   18683         WebKit part of fix for:
   18684 
   18685         <rdar://problem/3487160>: Implement synchronous loading for XMLHttpRequest
   18686 
   18687         * WebCoreSupport.subproj/WebBridge.m:
   18688         (-[WebBridge syncLoadResourceWithURL:customHeaders:postData:finalURL:responseHeaders:statusCode:]):
   18689 
   18690 2003-12-10  Richard Williamson   <rjw (a] apple.com>
   18691 
   18692         Added method to get to the bridge from a view.  This is
   18693         used to ultimately get the part and KJS::Window for a
   18694         particular applet.
   18695 
   18696         Reviewed by Hyatt.
   18697 
   18698         * WebCoreSupport.subproj/WebViewFactory.m:
   18699         (-[WebViewFactory refreshPlugins:]):
   18700         (-[WebViewFactory bridgeForView:]):
   18701 
   18702 2003-12-10  John Sullivan  <sullivan (a] apple.com>
   18703 
   18704         - WebKit part of fix for:
   18705         <rdar://problem/3505231>: REGRESSION (100-114): Some sites autoscroll to bottom of page when loading
   18706 
   18707         Reviewed by Darin
   18708 
   18709         * Misc.subproj/WebNSViewExtras.h:
   18710         * Misc.subproj/WebNSViewExtras.m:
   18711         removed _web_scrollPointToVisible:fromView:
   18712         
   18713         * WebView.subproj/WebHTMLView.m:
   18714         (-[WebHTMLView scrollPoint:]):
   18715         removed call to _web_scrollPointToVisible:fromView:
   18716 
   18717 2003-12-10  Chris Blumenberg  <cblu (a] apple.com>
   18718 
   18719         Fixed: <rdar://problem/3505537>: certificates downloaded from Verisign are multipart/mixed, must be parsed out
   18720 
   18721         Reviewed by kocienda.
   18722 
   18723         * WebCoreSupport.subproj/WebKeyGeneration.cpp:
   18724         (signedPublicKeyAndChallengeString): tweak
   18725         (addCertificateToKeychainFromData): renamed to use lowercase "c" in "keychain"
   18726         (addCertificatesToKeychainFromData): take data instead of a path to a file
   18727         * WebCoreSupport.subproj/WebKeyGeneration.h:
   18728         * WebCoreSupport.subproj/WebKeyGenerator.h:
   18729         * WebCoreSupport.subproj/WebKeyGenerator.m:
   18730         (-[WebKeyGenerator signedPublicKeyAndChallengeStringWithStrengthIndex:challenge:]): added temporary workaround for 3396936
   18731 
   18732 2003-12-09  Chris Blumenberg  <cblu (a] apple.com>
   18733 
   18734         Fixed: <rdar://problem/3504237>: add downloaded certificates to keychain
   18735 
   18736         Reviewed by darin.
   18737 
   18738         * WebCoreSupport.subproj/WebKeyGeneration.cpp:
   18739         (signedPublicKeyAndChallengeString):
   18740         (addCertificateToKeyChainFromData): new
   18741         (addCertificateToKeyChainFromFile): new
   18742         * WebCoreSupport.subproj/WebKeyGeneration.h:
   18743         * WebCoreSupport.subproj/WebKeyGenerator.h:
   18744         * WebCoreSupport.subproj/WebKeyGenerator.m:
   18745         (-[WebKeyGenerator addCertificateToKeyChainFromFileAtPath:]): new
   18746         * WebKit.exp:
   18747         * WebKit.pbproj/project.pbxproj: made WebKeyGenerator.h private
   18748 
   18749 2003-12-09  John Sullivan  <sullivan (a] apple.com>
   18750 
   18751         - fixed <rdar://problem/3504907>: REGRESSION (100-116): 
   18752         Clicking QuickTime-requiring link twice crashes (wholenote.com)
   18753 
   18754         I found the bug; Darin wrote the fix; I reviewed and tested.
   18755 
   18756         * Plugins.subproj/WebNetscapePluginPackage.m:
   18757         (-[WebNetscapePluginPackage stringForStringListID:andIndex:]):
   18758         Rewrote this method to not use GetIndString, because GetIndString looks
   18759         at all open resource files and in this case was reading information from
   18760         the wrong plugin file.
   18761 
   18762 2003-12-08  Chris Blumenberg  <cblu (a] apple.com>
   18763 
   18764         Fixed: <rdar://problem/3234676>: Support for KEYGEN tag (ie 509 email certificates from www.thawte.com)
   18765 
   18766         Reviewed by mjs.
   18767 
   18768         * WebCoreSupport.subproj/WebKeyGeneration.cpp: Added.
   18769         (gnrAddContextAttribute): new
   18770         (gnrGetSubjPubKey): new
   18771         (gnrNullAlgParams): new
   18772         (gnrSign): new
   18773         (gnrFreeCssmData): new
   18774         (signedPublicKeyAndChallengeString): new
   18775         * WebCoreSupport.subproj/WebKeyGeneration.h: Added.
   18776         * WebCoreSupport.subproj/WebKeyGenerationFactory.h: Added. Renamed from WebLocalizedStringFactory.
   18777         * WebCoreSupport.subproj/WebKeyGenerationFactory.m: Added.
   18778         (+[WebKeyGenerationFactory createSharedFactory]): no change
   18779         (-[WebKeyGenerationFactory dealloc]): no change
   18780         (-[WebKeyGenerationFactory strengthMenuItemTitles]): new
   18781         (-[WebKeyGenerationFactory signedPublicKeyAndChallengeStringWithStrengthIndex:challenge:]): new
   18782         * WebCoreSupport.subproj/WebLocalizedStringFactory.h: Removed.
   18783         * WebCoreSupport.subproj/WebLocalizedStringFactory.m: Removed.
   18784         * WebCoreSupport.subproj/WebNetscapeTemplates.cpp: Added.
   18785         * WebCoreSupport.subproj/WebNetscapeTemplates.h: Added.
   18786         * WebKit.pbproj/project.pbxproj:
   18787         * WebKitPrefix.h:
   18788         * WebView.subproj/WebFrameView.m:
   18789 
   18790 2003-12-05  John Sullivan  <sullivan (a] apple.com>
   18791 
   18792         - fixed <rdar://problem/3491427>: REGRESSION (100-114): multi-page HTML 
   18793         content in Mail is blank when printed
   18794 
   18795         Darin and I figured this one out.
   18796 
   18797         Reviewed by Ken.
   18798 
   18799         * WebView.subproj/WebHTMLView.m:
   18800         (-[WebHTMLView _setPrinting:minimumPageWidth:maximumPageWidth:adjustViewSize:]):
   18801         Don't call setNeedsDisplay:NO when we're turning printing on, as doing so prevents
   18802         anything from drawing in the case where this is called from 
   18803         adjustPageHeightsNew:top:bottom:limit
   18804 
   18805 2003-12-05  Darin Adler  <darin (a] apple.com>
   18806 
   18807         Reviewed by John.
   18808 
   18809         - fixed regression in small caps with substituted fonts my patch from yesterday caused
   18810         - fixed 3463599: if Lucida font is installed, you see bad glyphs on pages that use it (advogato.org)
   18811         - fixed storage leak if a renderer is ever deallocated (I don't think we ever do that)
   18812         - fixed some small leaks in various error cases by adding appropriate free and dispose calls
   18813 
   18814         * WebCoreSupport.subproj/WebTextRenderer.m:
   18815         (-[WebTextRenderer dealloc]): Free the Unicode glyph map too.
   18816         (fontContainsString): Moved inline function up here so it will be inlined.
   18817         (-[WebTextRenderer _setupFont]): Free the glyph map and set it back to zero if we fail after
   18818         extending the glyph map to include space. This fixes the "wrong glyph codes" bug with Lucida above.
   18819         (-[WebTextRenderer _extendUnicodeCharacterToGlyphMapToInclude:]): Add free calls needed to avoid
   18820         storage leaks in failure cases.
   18821         (-[WebTextRenderer _extendCharacterToGlyphMapToInclude:]): Ditto.
   18822         (-[WebTextRenderer _initializeATSUStyle]): Add ATSUDisposeStyle to fix storage leak.
   18823         (freeWidthMap): Use a loop instead of recursion.
   18824         (freeGlyphMap): Use a loop instead of recursion.
   18825         (freeUnicodeGlyphMap): Added.
   18826         (widthForNextCharacter): Don't use the original characters or cluster length, because the
   18827         character may have been capitalized for use in small caps rendering. So check the character
   18828         for <= 0xFFFF instead of looking at clusterLength, and break the character into a local array
   18829         instead of using the original character pointer.
   18830 
   18831 2003-12-04  Darin Adler  <darin (a] apple.com>
   18832 
   18833         Reviewed by Richard.
   18834 
   18835         - fixed 3497879: REGRESSION (100-115): all non-BMP characters (including Deseret) are broken
   18836 
   18837         * WebCoreSupport.subproj/WebTextRenderer.m:
   18838         (-[WebTextRenderer _CG_pointToOffset:style:position:reversed:]): Bump offset by getting it from
   18839         the iterator; don't assume we can just bump it by one each time. It would be even nicer to have
   18840         a bit more abstraction.
   18841         (initializeCharacterWidthIterator): Remove call to initializeCharacterShapeIterator.
   18842         (widthForNextCharacter): Move handling of surrogate pairs (non-BMP) in here and unify it with
   18843         the handling of BMP characters; this removes the broken code that was returning the wrong font,
   18844         and changes us to use the code that was already doing the right thing for the surrogate pair case.
   18845         Also get rid of the use of 0 width to mean "no glyph", which fixes the doubled glyph problem.
   18846         Also got rid of remnants of use of the shape iterator.
   18847 
   18848         * Misc.subproj/WebUnicode.h: Remove obsolete shape iterator.
   18849         * Misc.subproj/WebUnicode.m: Ditto.
   18850 
   18851 === Safari-116 ===
   18852 
   18853 2003-12-04  Darin Adler  <darin (a] apple.com>
   18854 
   18855         Reviewed by Ken.
   18856 
   18857         - fixed 3498426: assertion failure in tooltip code at macosx.apple.com
   18858 
   18859         * WebView.subproj/WebHTMLView.m: (-[WebHTMLView _setToolTip:]): Work around
   18860         the apparent bug in AppKit (3500217) that causes it to return 0 for the tool tip
   18861         tag by using removeAllToolTips and not storing the tag at all. Besides the assertion
   18862         failure there may also be a symptom of a "stuck" tool tip and a small memory
   18863         leak until the window is closed.
   18864         * WebView.subproj/WebHTMLViewPrivate.h: Remove unused toolTipTag.
   18865 
   18866 2003-12-02  Chris Blumenberg  <cblu (a] apple.com>
   18867 
   18868         Fixed:
   18869         <rdar://problem/3439222>: always hangs opening plain text file on a particular machine due to missing font, no UI to detect
   18870         <rdar://problem/3492983>: Certain fonts cause Safari to hang on text/plain pages
   18871 
   18872         Reviewed by rjw.
   18873 
   18874         * WebView.subproj/WebTextView.m:
   18875         (-[WebTextView setFixedWidthFont]): Use [[WebTextRendererFactory sharedFactory] fontWithFamilies:traits:size:] to get the font since it takes the font family which is what we store in WebPreferences and it does fallback work. Only set the font if 
   18876 
   18877 
   18878 non-nil is returned.
   18879 
   18880 2003-11-21  Maciej Stachowiak  <mjs (a] apple.com>
   18881 
   18882         Reviewed by Richard.
   18883 
   18884         <rdar://problem/3487185>: implement security checks for XMLHttpRequest
   18885         
   18886         * WebCoreSupport.subproj/WebSubresourceClient.m:
   18887         (-[WebSubresourceClient connection:willSendRequest:redirectResponse:]): Let
   18888         WebCore know about redirects.
   18889 
   18890 2003-12-01  Richard Williamson   <rjw (a] apple.com>
   18891 
   18892         Moved grungy polling code from WebKit to the JavaPlugin.
   18893 
   18894         Reviewed by Chris.
   18895 
   18896         * WebCoreSupport.subproj/WebBridge.m:
   18897         (-[WebBridge pollForAppletInView:]):
   18898 
   18899 2003-12-01  Ken Kocienda  <kocienda (a] apple.com>
   18900 
   18901         Reviewed by John
   18902 
   18903         Fix for this bug:
   18904 
   18905         <rdar://problem/3496873>: Move key event helper functions to WebKit
   18906 
   18907         * Misc.subproj/WebNSEventExtras.h: Add declarations for new key event
   18908         helpers.
   18909         * Misc.subproj/WebNSEventExtras.m:
   18910         (-[NSEvent _web_isKeyEvent:]): Added.
   18911         (-[NSEvent _web_isDeleteKeyEvent]): Added.
   18912         (-[NSEvent _web_isEscapeKeyEvent]): Added.
   18913         (-[NSEvent _web_isOptionTabKeyEvent]): Added.
   18914         (-[NSEvent _web_isReturnOrEnterKeyEvent]): Added.
   18915         (-[NSEvent _web_isTabKeyEvent]): Added.
   18916         * WebKit.pbproj/project.pbxproj: Made WebNSEventExtras.h a private header
   18917         so WebBrowser can use the new helpers.
   18918 
   18919 === Safari-115 ===
   18920 
   18921 2003-11-21  Maciej Stachowiak  <mjs (a] apple.com>
   18922 
   18923         Reviewed by Ken.
   18924 
   18925         WebKit part of fix for:
   18926         <rdar://problem/3487134>: Implement http request/response status and headers for XMLHttpRequest
   18927         * WebCoreSupport.subproj/WebBridge.m:
   18928         (-[WebBridge startLoadingResource:withURL:customHeaders:]): Added customHeaders
   18929         parameter.
   18930         (-[WebBridge startLoadingResource:withURL:customHeaders:postData:]): Ditto.
   18931         * WebCoreSupport.subproj/WebSubresourceClient.h:
   18932         * WebCoreSupport.subproj/WebSubresourceClient.m:
   18933         (+[WebSubresourceClient startLoadingResource:withRequest:customHeaders:referrer:forDataSource:]): Add the custom headers.
   18934         (+[WebSubresourceClient startLoadingResource:withURL:customHeaders:referrer:forDataSource:]): Pass along the custom headers.
   18935         (+[WebSubresourceClient startLoadingResource:withURL:customHeaders:postData:referrer:forDataSource:]): Pass along the custom headers.
   18936 
   18937 2003-11-21  John Sullivan  <sullivan (a] apple.com>
   18938 
   18939         - WebKit part of fix for <rdar://problem/3333744>: Safari prints page with 
   18940         very, very long line very, very small
   18941 
   18942         Reviewed by Ken.
   18943 
   18944         * WebView.subproj/WebHTMLView.m:
   18945         renamed PrintingExtraWidthFactor to PrintingMinimumShrinkFactor, added
   18946         PrintingMaximumShrinkFactor of 2.0, which matches IE
   18947         (-[WebHTMLView layoutToMinimumPageWidth:maximumPageWidth:adjustingViewSize:]):
   18948         now takes a min and max page width; passes them along to bridge
   18949         (-[WebHTMLView _setPrinting:minimumPageWidth:maximumPageWidth:adjustViewSize:]):
   18950         now takes a min and max page width; passes them along to layoutTo...
   18951         (-[WebHTMLView _scaleFactorForPrintOperation:]):
   18952         now takes PrintingMaximumScaleFactor into account
   18953         (-[WebHTMLView knowsPageRange:]):
   18954         now takes PrintingMaximumScaleFactor into account
   18955 
   18956         (-[WebHTMLView layout]):
   18957         pass 0 for maximumPageWidth when passing 0 for minimumPageWidth
   18958         (-[WebHTMLView adjustPageHeightNew:top:bottom:limit:]):
   18959         ditto
   18960         (-[WebHTMLView _web_setPrintingModeRecursive]):
   18961         ditto
   18962         (-[WebHTMLView _web_clearPrintingModeRecursive]):
   18963         ditto
   18964         (-[WebHTMLView endDocument]):
   18965         ditto
   18966 
   18967 2003-11-20  John Sullivan  <sullivan (a] apple.com>
   18968 
   18969         - WebKit part of <rdar://problem/3183124>: Support page-break-before/after with a value of "always"
   18970 
   18971         Dave and I wrote and reviewed this.
   18972 
   18973         * WebView.subproj/WebHTMLView.m:
   18974         (-[WebHTMLView _setPrinting:pageWidth:adjustViewSize:]):
   18975         reset page rects when printing status changes
   18976         (-[WebHTMLView _availablePaperWidthForPrintOperation:]):
   18977         new helper method to compute paper width taking margins into account
   18978         (-[WebHTMLView _scaleFactorForPrintOperation:]):
   18979         new helper method to compute how much we need to shrink to fit one page across
   18980         (-[WebHTMLView _provideTotalScaleFactorForPrintOperation:]):
   18981         we overrode this secret internal AppKit method to make shrink-to-fit work;
   18982         we wrote bug 3491344 about the need for this to be public.
   18983         (-[WebHTMLView knowsPageRange:]):
   18984         new method, computes rects and returns YES
   18985         (-[WebHTMLView rectForPage:]):
   18986         new method, returns rect computed above
   18987         (-[WebHTMLView _calculatePrintHeight]):
   18988         new method, used by knowsPageRange
   18989         
   18990         * WebView.subproj/WebHTMLViewPrivate.h:
   18991         new pageRects ivar
   18992 
   18993 2003-11-20  Maciej Stachowiak  <mjs (a] apple.com>
   18994 
   18995         Reviewed by Ken.
   18996 
   18997         - fixed 3490086 - support http post for XMLHttpRequest
   18998         * WebCoreSupport.subproj/WebBridge.m:
   18999         (-[WebBridge startLoadingResource:withURL:postData:]):
   19000         * WebCoreSupport.subproj/WebSubresourceClient.h:
   19001         * WebCoreSupport.subproj/WebSubresourceClient.m:
   19002         (+[WebSubresourceClient startLoadingResource:withRequest:referrer:forDataSource:]):
   19003         (+[WebSubresourceClient startLoadingResource:withURL:referrer:forDataSource:]):
   19004         (+[WebSubresourceClient startLoadingResource:withURL:postData:referrer:forDataSource:]):
   19005 
   19006 2003-11-20  Chris Blumenberg  <cblu (a] apple.com>
   19007 
   19008         Fixed: <rdar://problem/3491229>: Need UI and localized strings for <KEYGEN> support
   19009 
   19010         Reviewed by john.
   19011 
   19012         * ChangeLog:
   19013         * English.lproj/Localizable.strings:
   19014         * WebCoreSupport.subproj/WebLocalizedStringFactory.h: Added.
   19015         * WebCoreSupport.subproj/WebLocalizedStringFactory.m: Added.
   19016         (+[WebLocalizedStringFactory createSharedFactory]): new
   19017         (-[WebLocalizedStringFactory dealloc]): new
   19018         (-[WebLocalizedStringFactory keyGenerationMenuItemTitles]): new
   19019         * WebKit.pbproj/project.pbxproj:
   19020         * WebView.subproj/WebFrameView.m: call [WebLocalizedStringFactory createSharedFactory]
   19021 
   19022 2003-11-20  Richard Williamson   <rjw (a] apple.com>
   19023 
   19024         Added spin of event loop during applet lookup poll.  This
   19025         is necessary to allow timers and performOnMainThread: methods
   19026         a chance to fire.  The plugin depends on these mechanisms during
   19027         initialization.
   19028 
   19029         Reviewed by Chris.
   19030 
   19031         * WebCoreSupport.subproj/WebBridge.m:
   19032         (-[WebBridge pollForAppletInView:]):
   19033 
   19034 2003-11-20  Ken Kocienda  <kocienda (a] apple.com>
   19035 
   19036         John and I decided to apply the _web_ prefix to the tab key 
   19037         event method in the extras file, but I neglected to do this
   19038         before checking in. Fixed now.
   19039 
   19040         * Misc.subproj/WebNSEventExtras.h:
   19041         * Misc.subproj/WebNSEventExtras.m:
   19042         (-[NSEvent _web_isTabKeyEvent])
   19043         * WebView.subproj/WebHTMLView.m:
   19044         (-[WebHTMLView keyDown:])
   19045 
   19046 2003-11-20  Ken Kocienda  <kocienda (a] apple.com>
   19047 
   19048         Reviewed by John
   19049 
   19050         Fix for this bug:
   19051 
   19052         <rdar://problem/3482159>: Tabbing to links gets "stuck" in "style switcher" on zeldman.com
   19053 
   19054         * Misc.subproj/WebNSEventExtras.h: Added.
   19055         * Misc.subproj/WebNSEventExtras.m: Added.
   19056         (-[NSEvent _isTabKeyEvent]): New helper.
   19057         * WebKit.pbproj/project.pbxproj:
   19058         * WebView.subproj/WebHTMLView.m: 
   19059         (-[WebHTMLView keyDown:]): Pass the key event to super unconditionally
   19060         if it is a tab key. This fixes the bug.
   19061 
   19062 2003-11-19  John Sullivan  <sullivan (a] apple.com>
   19063 
   19064         - WebKit part of fix for:
   19065         <rdar://problem/3305671>: Web pages print with 1.25" border without regard to Page 
   19066         Setup margin settings
   19067 
   19068         Reviewed by Dave.
   19069 
   19070         * WebView.subproj/WebHTMLView.m:
   19071         (-[WebHTMLView beginDocument]):
   19072         Lay out the page into a width 25% wider than there's room for on the printed page.
   19073         This will make pages that can fit into a thin area be scaled down a little when printed,
   19074         which lets them fit on fewer pages. This closely matches what IE and Camino (at least)
   19075         do; I used Google as my test page, and the Google logo is now precisely the same size
   19076         when printed from Safari as when printed from IE. Pages that don't fit into a thin
   19077         area are already causing the printed page to be scaled horizontally to fit, and this
   19078         won't affect them.
   19079 
   19080 2003-11-19  Chris Blumenberg  <cblu (a] apple.com>
   19081 
   19082         Fixed: <rdar://problem/3489935>: Mentioning "to Disk" in context menus such as "Download Linked File To Disk..." is redundant
   19083 
   19084         Reviewed by john.
   19085 
   19086         * English.lproj/Localizable.strings:
   19087         * English.lproj/StringsNotToBeLocalized.txt:
   19088         * WebView.subproj/WebDefaultContextMenuDelegate.m:
   19089         (-[WebDefaultUIDelegate menuItemWithTag:]): use "Download Linked File" and "Download Image"
   19090 
   19091 2003-11-19  Chris Blumenberg  <cblu (a] apple.com>
   19092 
   19093         Fixed: <rdar://problem/3488783>: Flash at http://www.sjwilson.net/reef/ does not load photos
   19094         Reviewed by rjw.
   19095 
   19096         * Misc.subproj/WebKitNSStringExtras.h:
   19097         * Misc.subproj/WebKitNSStringExtras.m:
   19098         (-[NSString _web_stringByStrippingReturnCharacters]): new
   19099         * Plugins.subproj/WebBaseNetscapePluginView.m:
   19100         (-[WebBaseNetscapePluginView requestWithURLCString:]): call _web_stringByStrippingReturnCharacters on the relative string
   19101 
   19102 2003-11-19  Richard Williamson   <rjw (a] apple.com>
   19103 
   19104         More LiveConnect stuff.  Horrible polling hack that
   19105         blocks main thread waiting for applet to fully initialize.
   19106 
   19107         Reviewed by Ken.
   19108 
   19109         * Plugins.subproj/WebPluginController.m:
   19110         (-[WebPluginController addPlugin:]):
   19111         * WebCoreSupport.subproj/WebBridge.m:
   19112         (-[WebBridge pollForAppletInView:]):
   19113 
   19114 2003-11-19  David Hyatt  <hyatt (a] apple.com>
   19115 
   19116         Make updateScrollers guard non-static, so that it applies only to the view whose scrollers are being
   19117         updated.
   19118         Reviewed by darin
   19119 
   19120         * WebView.subproj/WebDynamicScrollBarsView.h:
   19121         * WebView.subproj/WebDynamicScrollBarsView.m:
   19122         (-[WebDynamicScrollBarsView reflectScrolledClipView:]):
   19123 
   19124 2003-11-18  Richard Williamson   <rjw (a] apple.com>
   19125 
   19126         More live connect stubs.  We're getting close.
   19127 
   19128         Reviewed by Chris.
   19129 
   19130         * Plugins.subproj/WebPluginController.m:
   19131         (-[WebPluginController addPlugin:]):
   19132         (-[WebPluginController _delayedGetApplet:]):
   19133         * WebView.subproj/WebView.m:
   19134         (-[WebView _goToItem:withLoadType:]):
   19135 
   19136 2003-11-17  Darin Adler  <darin (a] apple.com>
   19137 
   19138         Reviewed by Maciej.
   19139 
   19140         - fixed 3487335: REGRESSION (112-113): "a:b" error message does not cite the URL properly
   19141 
   19142         * Misc.subproj/WebKitErrors.m:
   19143         (+[NSError _webKitErrorWithCode:failingURL:]): Call _webKitErrorWithDomain:code:URL:.
   19144         (+[NSError _webKitErrorWithDomain:code:URL:]): Call _web_errorWithDomain:code:URL:, instead of using
   19145         the deprecated failingURL: flavor.
   19146         (-[NSError _initWithPluginErrorCode:contentURLString:pluginPageURLString:pluginName:MIMEType:]):
   19147         Change this method to call the other one.
   19148         (-[NSError _initWithPluginErrorCode:contentURL:pluginPageURL:pluginName:MIMEType:]): Implement this one,
   19149         and put in the NSErrorFailingURLKey, as well as the NSErrorFailingURLStringKey, to match what Foundation
   19150         now does for other errors.
   19151 
   19152         * WebCoreSupport.subproj/WebBridge.m: (-[WebBridge viewForPluginWithURL:attributes:baseURL:MIMEType:]):
   19153         Change to use the non-deprecated flavor of the NSError call above.
   19154 
   19155         * English.lproj/StringsNotToBeLocalized.txt: Updated for above changes and other recent changes.
   19156 
   19157 2003-11-16  Maciej Stachowiak  <mjs (a] apple.com>
   19158 
   19159         Reviewed by Dave.
   19160 
   19161         WebKit part of fix for:
   19162 
   19163         <rdar://problem/3131664>: add support for the window.print() command used for "print this page" buttons
   19164         * WebCoreSupport.subproj/WebBridge.m:
   19165         (-[WebBridge print]): Call delegate.
   19166         * WebView.subproj/WebDefaultUIDelegate.m:
   19167         (-[WebDefaultUIDelegate webViewPrint:]): Implemented (do nothing).
   19168         * WebView.subproj/WebUIDelegatePrivate.h: Added. Add extra SPI method webViewPrint:
   19169         for UI delegate.
   19170         * WebKit.pbproj/project.pbxproj: Install WebUIDelegatePrivate.h as private header
   19171 
   19172 2003-11-15  Darin Adler  <darin (a] apple.com>
   19173 
   19174         Reviewed by John.
   19175 
   19176         - fixes 3457162 -- selecting text during a page load that blows the text field away causes a crash
   19177         - fixes 3160035 -- crash or hang if you hold down a button while "go to about:blank soon" test runs
   19178         - without causing 3484608 -- REGRESSION: Flash broken at http://www.macromedia.com/
   19179 
   19180         The WebKit part of this fix is making setDefersCallbacks: work. It had succumbed to bit rot.
   19181         This has a side effect of not considering a page load done until all the plug-in streams are loaded.
   19182         If that's not a good idea, we'll have to keep two separate lists in WebDataSource.
   19183 
   19184         * WebView.subproj/WebBaseResourceHandleDelegate.m: (-[WebBaseResourceHandleDelegate setDataSource:]):
   19185         Set the defersCallbacks state from the WebView here so that clients don't have to do it.
   19186 
   19187         * WebView.subproj/WebDataSource.m: (-[WebDataSource _addSubresourceClient:]): Remove call to
   19188         set the defersCallbacks state on the subresource client, because the above change obviates it.
   19189         (the client/delegate terminology makes it confusing, but it's a subclass). Also loosen the type
   19190         so we can call this on clients for plug-in streams too.
   19191         (-[WebDataSource _removeSubresourceClient:]): Loosen type here too.
   19192         (-[WebDataSource _defersCallbacksChanged]): And here.
   19193         * WebView.subproj/WebDataSourcePrivate.h: Loosen type of subresource client so we can pass in the
   19194         delegates for plug-in streams too.
   19195 
   19196         * WebView.subproj/WebMainResourceClient.h: Added an _initialRequest field so we can defer the very
   19197         first callback, which does not rely on NSURLConnection.
   19198         * WebView.subproj/WebMainResourceClient.m:
   19199         (-[WebMainResourceClient dealloc]): Release the initial request.
   19200         (-[WebMainResourceClient loadWithRequestNow:]): Moved the guts of loadWithRequest in here; to be
   19201         used when the request is no longer deferred. Also removed the code to call setDefersCallbacks:
   19202         on the connection, and assert that we are only called when callbacks are not deferred. Because
   19203         the very first callback was not deferred, we would end up calling setDefersCallbacks:NO on the
   19204         WebView, so nothing would be deferred.
   19205         (-[WebMainResourceClient loadWithRequest:]): If callbacks are not deferred, then call the
   19206         loadWithRequestNow: method, otherwise simply store the request in _initialRequest.
   19207         (-[WebMainResourceClient setDefersCallbacks:]): If there is an _initialRequest and we are
   19208         ceasing deferral of callbacks, then call the loadWithRequestNow: method.
   19209 
   19210         * Plugins.subproj/WebNetscapePluginStream.m:
   19211         (-[WebNetscapePluginStream start]): Call _addSubresourceClient, and then _removeSubresourceClient
   19212         if the load fails to even start.
   19213         (-[WebNetscapePluginConnectionDelegate connectionDidFinishLoading:]): Call _removeSubresourceClient.
   19214         (-[WebNetscapePluginConnectionDelegate connection:didFailWithError:]): Call _removeSubresourceClient.
   19215 
   19216         * Plugins.subproj/WebBaseNetscapePluginStream.h: Removed unneeded import.
   19217         * Plugins.subproj/WebPluginDatabase.m: Add import needed now that WebBaseNetscapePluginStream.h
   19218         imports less than before.
   19219 
   19220 2003-11-16  Maciej Stachowiak  <mjs (a] apple.com>
   19221 
   19222         Reviewed by John.
   19223 
   19224         - fixed 3362841 - javascript History Object length property is always 0
   19225         
   19226         * WebCoreSupport.subproj/WebBridge.m:
   19227         (-[WebBridge historyLength]): Add one to the length to match other browsers.
   19228 
   19229 2003-11-14  John Sullivan  <sullivan (a] apple.com>
   19230         
   19231         - WebKit part of fix for <rdar://problem/3474757>: Safari on-screen text needs review
   19232 
   19233         Reviewed by Ken.
   19234 
   19235         * WebView.subproj/WebDefaultContextMenuDelegate.m:
   19236         (-[WebDefaultUIDelegate menuItemWithTag:]):
   19237         change "Download Link to Disk" to "Download Linked File to Disk"
   19238 
   19239         * English.lproj/Localizable.strings:
   19240         updated for these changes
   19241 
   19242 2003-11-14  Ken Kocienda  <kocienda (a] apple.com>
   19243 
   19244         Reviewed by John
   19245 
   19246         Fix for this bug:
   19247 
   19248         <rdar://problem/3481701>: Crashes before loading page/no error msg
   19249         (forums.pelicanparts.com) Works in IE and Netscape
   19250 
   19251         This fix is really a workaround for this bug:
   19252 
   19253         <rdar://problem/3484937>: Horribly malformed URL crashes when call
   19254         is made to CFURLCopyHostName
   19255 
   19256         The fix is to avoid all usages of [NSURL host] by replacing all
   19257         such calls with a private URL method added to WebNSURLExtras.
   19258 
   19259         I copied a number of URL methods from the private NSURL
   19260         extras file in Foundation to the WebKit URL extras file.
   19261 
   19262         * Misc.subproj/WebNSDataExtras.h: Added. Helper for new URL extras.
   19263         * Misc.subproj/WebNSDataExtras.m: Ditto.
   19264         (-[NSData _web_isCaseInsensitiveEqualToCString:]): New helper.
   19265         * Misc.subproj/WebNSURLExtras.h:
   19266         * Misc.subproj/WebNSURLExtras.m:
   19267         (-[NSURL _web_hasQuestionMarkOnlyQueryString]): Added.
   19268         (-[NSURL _web_schemeSeparatorWithoutColon]): Added.
   19269         (-[NSURL _web_dataForURLComponentType:]): Added.
   19270         (-[NSURL _web_schemeData]): Added.
   19271         (-[NSURL _web_hostData]): Added.
   19272         (-[NSURL _web_hostString]): Added.
   19273         * WebKit.pbproj/project.pbxproj:
   19274         * WebView.subproj/WebView.m:
   19275         (-[WebView userAgentForURL:]): Replace call to [NSURL host] with new
   19276         extras _web_hostString method.
   19277 
   19278 === Safari-114 ===
   19279 
   19280 2003-11-14  Vicki Murley <vicki (a] apple.com>
   19281 
   19282         - rolled out Darin's fixes for 3457162 and 3160035, since these changes broke plugins on macromedia.com and disney.go.com
   19283 
   19284         * WebView.subproj/WebBaseResourceHandleDelegate.m:
   19285         (-[WebBaseResourceHandleDelegate setDataSource:]):
   19286         * WebView.subproj/WebDataSource.m:
   19287         (-[WebDataSource _addSubresourceClient:]):
   19288         * WebView.subproj/WebMainResourceClient.h:
   19289         * WebView.subproj/WebMainResourceClient.m:
   19290         (-[WebMainResourceClient dealloc]):
   19291         (-[WebMainResourceClient loadWithRequest:]):
   19292         (-[WebMainResourceClient setDefersCallbacks:]):
   19293 
   19294 2003-11-14  Darin Adler  <darin (a] apple.com>
   19295 
   19296         Reviewed by John.
   19297 
   19298         - fixes 3457162 -- selecting text during a page load that blows the text field away causes a crash
   19299         - fixes 3160035 -- crash or hang if you hold down a button while "go to about:blank soon" test runs
   19300 
   19301         The WebKit part of this fix is making setDefersCallbacks: work. It had succumbed to bit rot.
   19302 
   19303         * WebView.subproj/WebBaseResourceHandleDelegate.m: (-[WebBaseResourceHandleDelegate setDataSource:]):
   19304         Set the defersCallbacks state from the WebView here so that clients don't have to do it.
   19305         * WebView.subproj/WebDataSource.m: (-[WebDataSource _addSubresourceClient:]): Remove call to
   19306         set the defersCallbacks state on the subresource client, because the above change obviates it.
   19307         (the client/delegate terminology makes it confusing, but it's a subclass).
   19308 
   19309         * WebView.subproj/WebMainResourceClient.h: Added an _initialRequest field so we can defer the very
   19310         first callback, which does not rely on NSURLConnection.
   19311         * WebView.subproj/WebMainResourceClient.m:
   19312         (-[WebMainResourceClient dealloc]): Release the initial request.
   19313         (-[WebMainResourceClient loadWithRequestNow:]): Moved the guts of loadWithRequest in here; to be
   19314         used when the request is no longer deferred. Also removed the code to call setDefersCallbacks:
   19315         on the connection, and assert that we are only called when callbacks are not deferred. Because
   19316         the very first callback was not deferred, we would end up calling setDefersCallbacks:NO on the
   19317         WebView, so nothing would be deferred.
   19318         (-[WebMainResourceClient loadWithRequest:]): If callbacks are not deferred, then call the
   19319         loadWithRequestNow: method, otherwise simply store the request in _initialRequest.
   19320         (-[WebMainResourceClient setDefersCallbacks:]): If there is an _initialRequest and we are
   19321         ceasing deferral of callbacks, then call the loadWithRequestNow: method.
   19322 
   19323 2003-11-13  Ken Kocienda  <kocienda (a] apple.com>
   19324 
   19325         Reviewed by John
   19326 
   19327         Fix for this bug:
   19328 
   19329         <rdar://problem/3483284>: Tabbing to links needs to honor new 
   19330         WebKit tab-to-links preference
   19331 
   19332         * WebCoreSupport.subproj/WebBridge.m:
   19333         (-[WebBridge dealloc]): Remove self from notification center.
   19334         (-[WebBridge _retrieveKeyboardUIModeFromPreferences:]): Now
   19335         checks for WebCoreKeyboardAccessTabsToLinks preference.
   19336         (-[WebBridge keyboardUIMode]): Adds self to notification center
   19337         to pick up changes to WebPreferences.
   19338 
   19339 2003-11-13  Ken Kocienda  <kocienda (a] apple.com>
   19340 
   19341         Reviewed by John
   19342 
   19343         Fix for this bug:
   19344 
   19345         <rdar://problem/3481719>: WebKit needs preference for tabbing to links
   19346 
   19347         * WebView.subproj/WebPreferences.m:
   19348         (+[WebPreferences initialize]): Add initialization of new 
   19349         WebKitTabToLinksPreferenceKey.
   19350         (-[WebPreferences setTabsToLinks:]): Added preference setter.
   19351         (-[WebPreferences tabsToLinks]): Added preference getter.
   19352         * WebView.subproj/WebPreferencesPrivate.h: Declared new methods as
   19353         SPI on WebPreferences.
   19354 
   19355 2003-11-12  Richard Williamson   <rjw (a] apple.com>
   19356 
   19357         Fixed 3475082.  Remove unnecessary orderKey before showKey.
   19358 
   19359         Written by Ed Voas.
   19360 
   19361         Reviewed by Richard.
   19362 
   19363         * Carbon.subproj/CarbonWindowAdapter.m:
   19364         (-[CarbonWindowAdapter makeKeyWindow]):
   19365 
   19366 2003-11-12  Chris Blumenberg  <cblu (a] apple.com>
   19367 
   19368         Fixed: <rdar://problem/3482147>: replace _releaseFutureIconForURL assertion with a log statement
   19369 
   19370         Reviewed by rjw.
   19371 
   19372         * Misc.subproj/WebIconDatabase.m:
   19373         (-[WebIconDatabase _releaseFutureIconForURL:]):
   19374 
   19375 2003-11-10  Richard Williamson   <rjw (a] apple.com>
   19376 
   19377         Fixed 3478765.  Use ICU to access unicode properties.
   19378         Fixed 3478831.  Unicode property/conversion functions should be 32 bit savvy.
   19379         Fixed 3478885.  Remove dead arabic shaping code
   19380 
   19381         Reviewed by Darin.
   19382 
   19383         * Misc.subproj/WebUnicode.h:
   19384         * Misc.subproj/WebUnicode.m:
   19385         (_unicodeDigitValue):
   19386         (_unicodeDirection):
   19387         (_unicodeMirrored):
   19388         (_unicodeMirroredChar):
   19389         (_unicodeLower):
   19390         (_unicodeUpper):
   19391         (WebKitInitializeUnicode):
   19392         (shapeForNextCharacter):
   19393         (initializeCharacterShapeIterator):
   19394         * Misc.subproj/WebUnicodeTables.m:
   19395         * WebCoreSupport.subproj/WebTextRenderer.m:
   19396         (widthForNextCharacter):
   19397         (fontContainsString):
   19398 
   19399 2003-11-10  Chris Blumenberg  <cblu (a] apple.com>
   19400 
   19401         Fixed: <rdar://problem/3478351>: Safari: URL Alias on Dock failed to open the 2byte URL
   19402 
   19403         Reviewed by dave.
   19404 
   19405         * Misc.subproj/WebNSURLExtras.m:
   19406         (-[NSString _web_mapHostNameWithRange:encode:makeString:]): if the host name is percent-escaped, use CFURLCreateStringByReplacingPercentEscapes
   19407 
   19408 2003-11-10  Richard Williamson   <rjw (a] apple.com>
   19409 
   19410         Use ICU for upper/lower conversion.  Fixed 3477157, 3478455, 3478456, 3478457, 3478486.
   19411         Remaining issues with surrogates (3477159) and Turkish I (3478482).
   19412 
   19413         Reviewed by Ken.
   19414 
   19415         * Misc.subproj/WebUnicode.m:
   19416         (_unicodeLower):
   19417         (_unicodeUpper):
   19418 
   19419 2003-11-07  Chris Blumenberg  <cblu (a] apple.com>
   19420 
   19421         Fixed: <rdar://problem/3240778>: add "save" menu item to contextual menu for text pages
   19422 
   19423         Reviewed by darin.
   19424 
   19425         * WebView.subproj/WebTextView.m:
   19426         (-[WebTextView menuForEvent:]): Made WebTextView's context menu behavior like WebHTMLView's context menu behavior with regards to selection. If the control-click was on a selection, show menu options for the selection like copy. If it was not on a
   19427 
   19428 
   19429  selection, show menu options such as save and print. Don't select anything when control-clicking.
   19430 
   19431 2003-11-08  Chris Blumenberg  <cblu (a] apple.com>
   19432 
   19433         Fixed: <rdar://problem/3478022>: assertion failure while loading WMP content
   19434 
   19435         Reviewed by darin.
   19436 
   19437         * ChangeLog:
   19438         * Plugins.subproj/WebNetscapePluginStream.m:
   19439         (-[WebNetscapePluginConnectionDelegate connection:didReceiveResponse:]): Don't continue if the stream is cancelled in startStreamWithResponse.
   19440 
   19441 2003-11-07  Richard Williamson   <rjw (a] apple.com>
   19442 
   19443         Fixed 3477067.  Use our case unicode conversion routines.
   19444 
   19445         Reviewed by Ken.
   19446 
   19447         * WebCoreSupport.subproj/WebTextRenderer.m:
   19448         (toUpper):
   19449 
   19450 2003-11-06  Richard Williamson   <rjw (a] apple.com>
   19451 
   19452         Fixed 3476393.  Call scrollPoint: recursively up the view hierarchy to ensure point is visible.
   19453 
   19454         Reviewed by Ken.
   19455 
   19456         * Misc.subproj/WebNSViewExtras.h:
   19457         * Misc.subproj/WebNSViewExtras.m:
   19458         (-[NSView _web_scrollPointToVisible:fromView:]):
   19459         * WebView.subproj/WebHTMLView.m:
   19460         (-[WebHTMLView scrollPoint:]):
   19461 
   19462 === Safari-113 ===
   19463 
   19464 2003-11-05  Darin Adler  <darin (a] apple.com>
   19465 
   19466         Reviewed by Maciej.
   19467 
   19468         - fixed 3473913 -- host names in simple mailto URLs are not getting encoded/decoded correctly yet
   19469 
   19470         * Misc.subproj/WebNSURLExtras.m:
   19471         (applyHostNameFunctionToMailToURLString): Handle case where host name is at the end of the string.
   19472         (applyHostNameFunctionToURLString): Add the # character to the set of characters that can end
   19473         a domain name.
   19474 
   19475 2003-11-05  Richard Williamson   <rjw (a] apple.com>
   19476 
   19477         Fixed 3413067, 3405797, 3456877
   19478         Use ATSUI to render Arabic and Hebrew.
   19479 
   19480         Reviewed by John.
   19481 
   19482         * WebCoreSupport.subproj/WebTextRenderer.m:
   19483         (shouldUseATSU):
   19484 
   19485 2003-11-05  John Sullivan  <sullivan (a] apple.com>
   19486 
   19487         - fixed <rdar://problem/3469791>: Bigger/Smaller commands are 
   19488         disabled for HTML Mail in separate window (w/WebKit-111)
   19489 
   19490         Reviewed by Darin.
   19491 
   19492         * WebView.subproj/WebFrameView.m:
   19493         (-[WebFrameView acceptsFirstResponder]):
   19494         always be willing to become first responder, even if no page
   19495         has yet been loaded.
   19496         (-[WebFrameView becomeFirstResponder]):
   19497         if no page has yet been loaded (so our scrollview refuses
   19498         first responder-ness), don't do any special becoming-first-
   19499         responder shenanigans.
   19500 
   19501         Also removed obsolete overrides for nextKeyView, nextValidKeyView,
   19502         previousKeyView, and previousValidKeyView that are no longer
   19503         required now that we handle the key loop more like NSScrollView.
   19504 
   19505         * WebView.subproj/WebFrameViewPrivate.h:
   19506         removed now-unused ivar inNextValidKeyView
   19507 
   19508 2003-11-05  Richard Williamson   <rjw (a] apple.com>
   19509 
   19510         Fixed 3029966.  Animated backgrounds specified in <BODY> don't animate
   19511         Fixed 3474824.  Tiled animated GIFs don't animate.
   19512         Fixed 3029966.  Animated backgrounds specified with CSS don't animate.
   19513 
   19514         Reviewed by Chris.
   19515 
   19516         * WebCoreSupport.subproj/WebImageRenderer.h:
   19517         * WebCoreSupport.subproj/WebImageRenderer.m:
   19518         (-[WebImageRenderer nextFrame:]):
   19519         (-[WebImageRenderer drawImageInRect:fromRect:]):
   19520         (-[WebImageRenderer startAnimationIfNecessary]):
   19521         (-[WebImageRenderer tileInRect:fromPoint:]):
   19522         * WebView.subproj/WebImageView.m:
   19523         (-[WebImageView drawRect:]):
   19524 
   19525 2003-11-05  Chris Blumenberg  <cblu (a] apple.com>
   19526 
   19527         Fixed: <rdar://problem/3201364>: Safari crashes when hosting carbon plug-in using drag and drop
   19528 
   19529         Reviewed by rjw.
   19530 
   19531         * WebView.subproj/WebView.m:
   19532         (-[WebView draggingUpdated:]): return NSDragOperationNone if we're over a plug-in view so the plug-in can handle the drag
   19533 
   19534 2003-11-05  Chris Blumenberg  <cblu (a] apple.com>
   19535 
   19536         Fixed: <rdar://problem/3474360>: should attempt to resolve symbolic links when choosing "Save Link As..."
   19537 
   19538         Reviewed by kocienda.
   19539 
   19540         * WebView.subproj/WebView.m:
   19541         (-[WebView _fileWrapperForURL:]): follow sym links
   19542 
   19543 2003-11-05  Ken Kocienda  <kocienda (a] apple.com>
   19544 
   19545         Reviewed by Darin
   19546 
   19547         Fix for this bug:
   19548 
   19549         <rdar://problem/3455910>: hitting up or down arrows when focus 
   19550         is on a pop-up menu should pop the menu
   19551 
   19552         * WebView.subproj/WebFrameView.m:
   19553         (-[WebFrameView keyDown:]): Call super with the event if focus 
   19554         is on a pop up button.
   19555 
   19556 2003-11-05  Ken Kocienda  <kocienda (a] apple.com>
   19557 
   19558         Reviewed by Maciej
   19559 
   19560         Fix for these bugs:
   19561 
   19562         <rdar://problem/3467558>: Cannot tab to form file input widgets
   19563         <rdar://problem/3473631>: WebFileButton sends notifications to communicate with WebCore
   19564 
   19565         Tabbing now works for these widgets. While I was in the neighborhood,
   19566         I improved the communication mechanism between the WebKit and WebCore
   19567         sides of the file button implementation, replacing notifications
   19568         with a callback object.
   19569 
   19570         * WebCoreSupport.subproj/WebBridge.m:
   19571         (-[WebBridge fileButtonWithDelegate:]): Method now takes a 
   19572         delegate object.
   19573         * WebCoreSupport.subproj/WebFileButton.h:
   19574         * WebCoreSupport.subproj/WebFileButton.m:
   19575         (-[WebFileButton initWithBridge:delegate:]):
   19576         (-[WebFileButton initWithFrame:]):
   19577         (-[WebFileButton dealloc]):
   19578         (-[WebFileButton chooseFilename:]): Sends callback rather than posting
   19579         a notification.
   19580         (-[WebFileButton chooseButtonPressed:]): Ditto.
   19581         (-[WebFileButton mouseDown:]):
   19582         (-[WebFileButton acceptsFirstResponder]):
   19583         (-[WebFileButton becomeFirstResponder]): Make the button subview
   19584         first responder.
   19585         (-[WebFileButton nextKeyView]): Hook up to WebBridge key view machinery.
   19586         (-[WebFileButton previousKeyView]): Ditto.
   19587         (-[WebFileButton nextValidKeyView]): Ditto.
   19588         (-[WebFileButton previousValidKeyView]): Ditto.
   19589         (-[WebFileChooserButton initWithDelegate:]):
   19590         (-[WebFileChooserButton nextValidKeyView]): Ditto.
   19591         (-[WebFileChooserButton previousValidKeyView]): Ditto.
   19592         (-[WebFileChooserButton resignFirstResponder]): Sends a focus change 
   19593         callback.
   19594 
   19595 2003-11-04  Darin Adler  <darin (a] apple.com>
   19596 
   19597         Reviewed by John, except for one bit reviewed by Maciej.
   19598 
   19599         - first step for IDNA support; helper functions for Safari
   19600 
   19601         * Misc.subproj/WebNSURLExtras.h: Add six new methods to manipulate host names directly.
   19602         * Misc.subproj/WebNSURLExtras.m:
   19603         (applyHostNameFunctionToMailToURLString): Added. Finds host names within a mailto URL.
   19604         (applyHostNameFunctionToURLString): Added. Finds host names within a URL.
   19605         (collectRangesThatNeedMapping): Added. Builds a list of host name ranges that need mapping.
   19606         (collectRangesThatNeedEncoding): Added. Calls the above for encoding.
   19607         (collectRangesThatNeedDecoding): Added. Calls the above for decoding.
   19608         (mapHostNames): Added. Helper function that does the entire mapping process for a URL.
   19609         (+[NSURL _web_URLWithUserTypedString:]): Call mapHostNames to encode after trimming whitespace.
   19610         (-[NSURL _web_userVisibleString]): Call mapHostNames to decode after decoding escape sequences.
   19611         (-[NSURL _webkit_URLByRemovingFragment]): Removed unneeded redundant NULL check.
   19612         (-[NSString _web_mapHostNameWithRange:encode:makeString:]): Added. Workhorse function to call
   19613         the IDN functions in the Unicode library.
   19614         (-[NSString _web_hostNameNeedsDecodingWithRange:]): Added.
   19615         (-[NSString _web_hostNameNeedsEncodingWithRange:]): Added.
   19616         (-[NSString _web_decodeHostNameWithRange:]): Added.
   19617         (-[NSString _web_encodeHostNameWithRange:]): Added.
   19618         (-[NSString _web_decodeHostName]): Added.
   19619         (-[NSString _web_encodeHostName]): Added.
   19620 
   19621         * WebKit.pbproj/project.pbxproj: Added libicucore.dylib.
   19622         * English.lproj/StringsNotToBeLocalized.txt: Updated for above changes.
   19623 
   19624 2003-11-04  John Sullivan  <sullivan (a] apple.com>
   19625 
   19626         - a little optimization I noticed when looking at 3125137
   19627 
   19628         Reviewed by Chris.
   19629 
   19630         * Misc.subproj/WebStringTruncator.m:
   19631         (truncateString):
   19632         if incoming string has length 0, bail out right away
   19633 
   19634 2003-11-04  Chris Blumenberg  <cblu (a] apple.com>
   19635 
   19636         Fixed:
   19637         <rdar://problem/3472403>: RTFD of copied text and images should use original image data not tiffs
   19638         <rdar://problem/3472435>: dragging local image file downloads it instead of copies it
   19639         <rdar://problem/3472450>: copied and dragged local image files are TIFF, not original image data
   19640         Reviewed by john.
   19641 
   19642         * Misc.subproj/WebNSPasteboardExtras.h:
   19643         * Misc.subproj/WebNSPasteboardExtras.m:
   19644         (-[NSPasteboard _web_writeFileWrapperAsRTFDAttachment:]): new
   19645         * Misc.subproj/WebNSViewExtras.h:
   19646         * Misc.subproj/WebNSViewExtras.m:
   19647         (-[NSView _web_dragImage:fileWrapper:rect:URL:title:event:]): take a file wrapper instead of data so [NSPasteboard _web_writeFileWrapperAsRTFDAttachment:] can be called
   19648         * WebCoreSupport.subproj/WebBridge.m:
   19649         (-[WebBridge fileWrapperForURL:]): call fileWrapperForURL on the WebView
   19650         * WebView.subproj/WebDefaultContextMenuDelegate.m:
   19651         (-[WebDefaultUIDelegate copyImageToClipboard:]): call [NSPasteboard _web_writeFileWrapperAsRTFDAttachment:]
   19652         * WebView.subproj/WebHTMLView.m:
   19653         (-[WebHTMLView _handleMouseDragged:]): when calling _web_dragImage, pass a file wrapper from fileWrapperForURL
   19654         (-[WebHTMLView namesOfPromisedFilesDroppedAtDestination:]): call fileWrapperForURL
   19655         * WebView.subproj/WebImageRepresentation.h:
   19656         * WebView.subproj/WebImageRepresentation.m:
   19657         (-[WebImageRepresentation fileWrapper]): new
   19658         * WebView.subproj/WebImageView.m:
   19659         (-[WebImageView writeImageToPasteboard:]): call [NSPasteboard _web_writeFileWrapperAsRTFDAttachment:]
   19660         (-[WebImageView mouseDragged:]): pass the file wrapper to _web_dragImage
   19661         * WebView.subproj/WebView.m:
   19662         (-[WebView _fileWrapperForURL:]): new, returns a file wrapper from a local file or from the cache
   19663         * WebView.subproj/WebViewPrivate.h:
   19664 
   19665 2003-11-04  John Sullivan  <sullivan (a] apple.com>
   19666 
   19667         - fixed <rdar://problem/3472813>: REGRESSION (100-111): Some tabs start 
   19668         out scrolled down to focused text field
   19669 
   19670         Reviewed by Ken.
   19671 
   19672         * WebView.subproj/WebHTMLView.m:
   19673         (-[WebHTMLView acceptsFirstResponder]):
   19674         The logic to avoid accepting first responder on clicks was too broad;
   19675         it was rejecting first-responder-ness even for clicks outside of this
   19676         view. Clicking a tab item was going through some logic in NSTabView
   19677         looking for the first valid key view starting with the web view, but the
   19678         web view was returning NO due to this faulty click logic. Thus the
   19679         first subview text field was becoming first responder, and causing scroll.
   19680 
   19681 2003-11-03  Chris Blumenberg  <cblu (a] apple.com>
   19682 
   19683         Fixed:
   19684         <rdar://problem/3472377>: Provide NSRTFDPboardType on pasteboard when copying or dragging images
   19685         <rdar://problem/3470809>: REGRESSION (111-112): Can't copy & paste image into Photoshop 7
   19686 
   19687         Reviewed by hyatt.
   19688 
   19689         * Misc.subproj/WebNSPasteboardExtras.h:
   19690         * Misc.subproj/WebNSPasteboardExtras.m:
   19691         (-[NSPasteboard _web_writeFileDataAsRTFDAttachment:withFilename:]): renamed, now writes file data as an RTF attachment
   19692         * Misc.subproj/WebNSViewExtras.m:
   19693         (-[NSView _web_dragImage:originalData:rect:URL:title:event:]): call renamed _web_writeFileDataAsRTFDAttachment
   19694         * WebView.subproj/WebDefaultContextMenuDelegate.m:
   19695         (-[WebDefaultUIDelegate copyImageToClipboard:]): call renamed _web_writeFileDataAsRTFDAttachment
   19696         * WebView.subproj/WebImageView.m:
   19697         (-[WebImageView writeImageToPasteboard:]): call renamed _web_writeFileDataAsRTFDAttachment
   19698 
   19699 2003-11-03  Vicki Murley <vicki (a] apple.com>
   19700 
   19701         Reviewed by kocienda.
   19702 
   19703         - fixed <rdar://problem/3471096>: non-B&I builds should not use order files, because they cause false "regressions" in perf.
   19704 
   19705         * WebKit.pbproj/project.pbxproj: added empty SECTORDER_FLAGS variables to the Development and Deployment build styles
   19706 
   19707 2003-11-03  Ken Kocienda  <kocienda (a] apple.com>
   19708 
   19709         Reviewed by John
   19710         
   19711         Fix for this bug:
   19712         
   19713         <rdar://problem/3470342>: focus rings are shown for links in         
   19714         web pages even in non-frontmost windows
   19715 
   19716         * WebView.subproj/WebHTMLView.m:
   19717         (-[WebHTMLView updateFocusRing]): New method. Uses the "keyness"
   19718         of the view's window to toggle focus ring drawing.
   19719         (-[WebHTMLView windowDidBecomeKey:]): Calls updateFocusRing.
   19720         (-[WebHTMLView windowDidResignKey:]): Ditto.
   19721 
   19722 2003-11-01  Maciej Stachowiak  <mjs (a] apple.com>
   19723 
   19724         Reviewed by Darin.
   19725 
   19726         - remove use of obsolete HTTLCookiePolicyBaseURL SPI
   19727         
   19728         * WebCoreSupport.subproj/WebSubresourceClient.m:
   19729         startLoadingResource:withURL:referrer:forDataSource:]): Use
   19730         setMainDocumentURL, not setHTTPCookiePolicyBaseURL.
   19731         * WebView.subproj/WebFrame.m:
   19732         (-[WebFrame _addExtraFieldsToRequest:alwaysFromRequest:]): Likewise.
   19733         * WebView.subproj/WebMainResourceClient.m:
   19734         (-[WebMainResourceClient connection:willSendRequest:redirectResponse:]): Likewise.
   19735 
   19736 2003-11-01  Darin Adler  <darin (a] apple.com>
   19737 
   19738         Reviewed by Maciej.
   19739 
   19740         - fixed 3470882 -- storage leaks in WebDownload code
   19741         - fixed 3470884 -- download is always nil in downloadWindowForAuthenticationSheet: call from WebDownload
   19742 
   19743         * Misc.subproj/WebDownload.m:
   19744         (-[WebDownloadInternal initWithDownload:]): Removed this method, which was never called.
   19745         (-[WebDownloadInternal dealloc]): Added missing call to [super dealloc] to fix one cause
   19746         of a leak of the WebDownloadInternal object itself. Removed the release of webDownload,
   19747         which was always nil, and if it wasn't would end up causing a leak due to a reference cycle.
   19748         (-[WebDownloadInternal download:didReceiveAuthenticationChallenge:]): Remove the use of
   19749         webDownload, which was always nil, and instead use the download parameter passed to us,
   19750         casting it to WebDownload, since it's guaranteed to be one.
   19751         (-[WebDownload _setRealDelegate:]): Added. Shared by the methods below to set up the real
   19752         delegate before calling init. The old code called init twice, causing an second call to the
   19753         superclass's init method, which caused it to create an extra copy of its internal structure,
   19754         as well as causing us to create two WebDownloadInternal objects.
   19755         (-[WebDownload init]): Don't allocate a second WebDownloadInternal if _setRealDelegate already
   19756         allocated it for us. Before we would allocate and leak an extra one each time.
   19757         (-[WebDownload dealloc]): Added. Releases the WebDownloadInternal. This is the second cause
   19758         of the leak of the WebDownloadInternal object.
   19759         (-[WebDownload initWithRequest:delegate:]): Call [self _setRealDelegate:] instead of calling
   19760         [self init] and then [_webInternal setRealDelegate:], avoiding the leaks caused by doing it
   19761         the other way.
   19762         (-[WebDownload _initWithLoadingConnection:request:response:delegate:proxy:]): Ditto.
   19763         (-[WebDownload _initWithLoadingResource:request:response:delegate:proxy:]): Ditto.
   19764         (-[WebDownload _initWithRequest:delegate:directory:]): Ditto.
   19765 
   19766 2003-10-31  David Hyatt  <hyatt (a] apple.com>
   19767 
   19768         Fix for 3466542, add a real minimum font size setting.
   19769         Reviewed by john
   19770 
   19771         * WebView.subproj/WebPreferences.h:
   19772         * WebView.subproj/WebPreferences.m:
   19773         (+[WebPreferences initialize]):
   19774         (-[WebPreferences setMinimumFontSize:]):
   19775         (-[WebPreferences minimumLogicalFontSize]):
   19776         (-[WebPreferences setMinimumLogicalFontSize:]):
   19777         * WebView.subproj/WebView.m:
   19778         (-[WebView _updateWebCoreSettingsFromPreferences:]):
   19779 
   19780 2003-10-31  Ken Kocienda  <kocienda (a] apple.com>
   19781 
   19782         Reviewed by Darin
   19783 
   19784         Fix for this bug:
   19785 
   19786         <rdar://problem/3469088>: focus not removed from text link         
   19787         when user hits cmd-L or clicks in window chrome
   19788 
   19789         * WebView.subproj/WebHTMLView.m:
   19790         (-[WebHTMLView deselectText]): Added new method just to deselect text.
   19791         (-[WebHTMLView resignFirstResponder]): Just deseclect text if we
   19792         are doing a programmatic setting of focus. Deselect all otherwise.
   19793 
   19794 2003-10-30  Chris Blumenberg  <cblu (a] apple.com>
   19795 
   19796         Fixed: <rdar://problem/3458368>: drawing to the screen while window hidden: http://www.bhphotovideo.com/
   19797 
   19798         Reviewed by john.
   19799 
   19800         * Plugins.subproj/WebBaseNetscapePluginView.m:
   19801         (-[WebBaseNetscapePluginView saveAndSetPortStateForUpdate:]): clip out the plug-in when the window is miniaturized or hidden
   19802         (-[WebBaseNetscapePluginView restartNullEvents]): don't restart null events if the window is miniaturized, this allows restartNullEvents to be called in start and viewDidMoveToWindow without needing to make the check
   19803         (-[WebBaseNetscapePluginView start]): just call restartNullEvents instead of checking if the window is miniaturized
   19804 
   19805 2003-10-30  Ken Kocienda  <kocienda (a] apple.com>
   19806 
   19807         Reviewed by Hyatt
   19808 
   19809         * WebCoreSupport.subproj/WebBridge.m:
   19810         (-[WebBridge documentView]): Added.
   19811         * WebCoreSupport.subproj/WebGraphicsBridge.h: Added.
   19812         * WebCoreSupport.subproj/WebGraphicsBridge.m: Added.
   19813         (+[WebGraphicsBridge createSharedBridge]): Added.
   19814         (-[WebGraphicsBridge setFocusRingStyle:radius:color:]): Added.
   19815         * WebKit.pbproj/project.pbxproj:
   19816         * WebView.subproj/WebFrameView.m: Create a WebGraphicsBridge
   19817         when creating a WebFrameView.
   19818 
   19819 === Safari-112 ===
   19820 
   19821 2003-10-29  Maciej Stachowiak  <mjs (a] apple.com>
   19822 
   19823         Reviewed by Darin.
   19824 
   19825         - fixed 3467632 - Leak of plugin info visiting http://www.ebay.com
   19826         * Plugins.subproj/WebBasePluginPackage.m:
   19827         (-[WebBasePluginPackage dealloc]): Release lastModifiedDate.
   19828 
   19829 2003-10-29  Chris Blumenberg  <cblu (a] apple.com>
   19830 
   19831         WebKit part of fix for:
   19832         <rdar://problem/3467744>: Photoshop files (.psd) don't show up in Open dialog in Safari, but can be viewed
   19833         <rdar://problem/3109132>: Can't open movie file via open panel even though it can be dropped in browser window
   19834 
   19835         Reviewed by john.
   19836 
   19837         * WebView.subproj/WebView.m:
   19838         (+[WebView _supportedMIMETypes]): new
   19839         (+[WebView _supportedFileExtensions]): new
   19840         * WebView.subproj/WebViewPrivate.h:
   19841 
   19842 2003-10-29  Chris Blumenberg  <cblu (a] apple.com>
   19843 
   19844         Fixed: <rdar://problem/3438716>: jpg and gif images copied from Safari and placed in mail are sent as tiff
   19845 
   19846         Reviewed by john.
   19847 
   19848         * Misc.subproj/WebNSPasteboardExtras.h:
   19849         * Misc.subproj/WebNSPasteboardExtras.m:
   19850         (-[NSPasteboard _web_writeFileContents:withFilename:]): new
   19851         * Misc.subproj/WebNSViewExtras.h:
   19852         * Misc.subproj/WebNSViewExtras.m:
   19853         (-[NSView _web_dragImage:originalData:rect:URL:title:event:]): now takes originalData and calls _web_fileContents:withFilename:
   19854         * WebView.subproj/WebDefaultContextMenuDelegate.m:
   19855         (-[WebDefaultUIDelegate copyImageToClipboard:]): call _web_writeFileContents:withFilename:
   19856         * WebView.subproj/WebHTMLView.m:
   19857         (-[WebHTMLView _handleMouseDragged:]): call renamed _web_dragImage and [WebView _cachedResponseForURL:]
   19858         (-[WebHTMLView namesOfPromisedFilesDroppedAtDestination:]): call [WebView _cachedResponseForURL:]
   19859         * WebView.subproj/WebImageView.m:
   19860         (-[WebImageView writeImageToPasteboard:]): call _web_writeFileContents:withFilename:
   19861         (-[WebImageView mouseDragged:]): call renamed _web_dragImage
   19862         * WebView.subproj/WebView.m:
   19863         (-[WebView _cachedResponseForURL:]): new
   19864         * WebView.subproj/WebViewPrivate.h:
   19865 
   19866 2003-10-28  John Sullivan  <sullivan (a] apple.com>
   19867 
   19868         - fixed <rdar://problem/3466082>: 7B85/111: Crash viewing web page ([WebView setNextKeyView:])
   19869 
   19870         Reviewed by Chris.
   19871 
   19872         * WebView.subproj/WebView.m:
   19873         (-[WebView dealloc]):
   19874         set _private to nil after releasing, because [super dealloc] can dispatch to it
   19875         (-[WebView mainFrame]):
   19876         fixed spelling error in comment
   19877 
   19878 2003-10-28  Chris Blumenberg  <cblu (a] apple.com>
   19879 
   19880         Fixed: <rdar://problem/3465383>: REGRESSION: Text field progress bar goes to 100% after error or stop
   19881         Reviewed by john.
   19882 
   19883         * WebView.subproj/WebFrame.m:
   19884         (-[WebFrame _isLoadComplete]): call _progressCompleted after we deliver the didFailLoadWithError or didFinishLoadForFrame message as we do in other places. This allows to be aware of the error (if there is one), when they get the WebViewProgressFi
   19885 
   19886 
   19887 nishedNotification notification.
   19888 
   19889 2003-10-27  Maciej Stachowiak  <mjs (a] apple.com>
   19890 
   19891         Reviewed by Darin.
   19892 
   19893         - fixed 3083264 - frame names changed by JavaScript are not reflected in WebFrame at the WebKit level
   19894 
   19895         * WebCoreSupport.subproj/WebBridge.m:
   19896         (-[WebBridge didSetName:]): Tell the WebFrame about its new name.
   19897 
   19898 2003-10-28  John Sullivan  <sullivan (a] apple.com>
   19899 
   19900         - fixed 3465613 -- REGRESSION (111): Crash creating nib that 
   19901         contains WebView
   19902 
   19903         Reviewed by Chris.
   19904 
   19905         * WebView.subproj/WebView.m:
   19906         (-[WebView mainFrame]):
   19907         check for nil _private before dereferencing.
   19908 
   19909 2003-10-28  Chris Blumenberg  <cblu (a] apple.com>
   19910 
   19911         Fixed: <rdar://problem/3465591>: Security: Netscape plug-ins can execute JavaScript in other frames
   19912 
   19913         Reviewed by mjs.
   19914 
   19915         * Plugins.subproj/WebBaseNetscapePluginView.m:
   19916         (-[WebBaseNetscapePluginView evaluateJavaScriptPluginRequest:]): renamed, no need to pass the target frame since the target is either the plug-in itself or the frame that contains the plug-in
   19917         (-[WebBaseNetscapePluginView loadPluginRequest:]): call renamed evaluateJavaScriptPluginRequest
   19918         (-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:]): if this is a JS request that is targeted at a frame, return NPERR_INVALID_PARAM if the frame is not the frame that contains the plugin
   19919 
   19920 2003-10-28  Chris Blumenberg  <cblu (a] apple.com>
   19921 
   19922         Fixed: <rdar://problem/3437959>: javascript: URLs don't work from Java (and other Cocoa plugins, if any)
   19923 
   19924         Reviewed by mjs.
   19925 
   19926         * Plugins.subproj/WebPluginController.m:
   19927         (-[WebPluginController showURL:inFrame:]): support JS requests targeted only to the plug-in's frame.
   19928 
   19929 2003-10-27  John Sullivan  <sullivan (a] apple.com>
   19930 
   19931         - fixed 3441258 -- hysteresis to start dragging a link is too small; too easy to start drag
   19932 
   19933         Reviewed by Chris.
   19934 
   19935         * WebView.subproj/WebHTMLView.m:
   19936         (-[WebHTMLView _handleMouseDragged:]):
   19937         Split DragHysteresis into two values, one for links and one for images. Make
   19938         the link one much larger than the image one (since dragging an image doesn't
   19939         occur accidentally in the ways that dragging a link does).
   19940 
   19941 2003-10-27  Chris Blumenberg  <cblu (a] apple.com>
   19942 
   19943         Fixed: <rdar://problem/3462523>: Safari Sometimes Destroys Applets When Going "Back"
   19944 
   19945         Reviewed by darin.
   19946 
   19947         * History.subproj/WebHistoryItem.m:
   19948         (+[WebHistoryItem _destroyAllPluginsInPendingPageCaches]): Don't destroy plug-ins that are currently being viewed.
   19949 
   19950 2003-10-27  Chris Blumenberg  <cblu (a] apple.com>
   19951 
   19952         Fixed: <rdar://problem/3463144>: assertion failure when viewing jpeg with SoundPix installed
   19953 
   19954         Reviewed by john.
   19955 
   19956         * WebView.subproj/WebDataSource.m:
   19957         (+[WebDataSource _repTypesAllowImageTypeOmission:]): don't allow image types to override types that are already registered as we do in [WebFrameView _viewTypesAllowImageTypeOmission:]
   19958 
   19959 2003-10-24  Chris Blumenberg  <cblu (a] apple.com>
   19960 
   19961         Fixed:
   19962         <rdar://problem/3462977>: ER: Nice if images dragged from web pages didn't redownload
   19963         <rdar://problem/3031582>: Dragging an image to the desktop doesn't leave the file where I dropped it
   19964         <rdar://problem/3061371>: "CFURLGetFSRef failed" log when dragging image to Finder
   19965 
   19966         Reviewed by john.
   19967 
   19968         * WebView.subproj/WebHTMLView.m:
   19969         (-[WebHTMLView namesOfPromisedFilesDroppedAtDestination:]): attempt to fetch the image data from the cache, if that works, write out the file
   19970 
   19971 2003-10-26  Darin Adler  <darin (a] apple.com>
   19972 
   19973         * WebKitPrefix.h: Add a definition of NULL here so we get the stricter type checking
   19974         even on pre-Merlot systems.
   19975 
   19976 === Safari-111 ===
   19977 
   19978 2003-10-24  Richard Williamson   <rjw (a] apple.com>
   19979 
   19980         Fixed 3425358.  Don't try to create page cache for pages that
   19981         have a nil view().
   19982 
   19983         Reviewed by Hyatt.
   19984 
   19985         * WebView.subproj/WebFrame.m:
   19986         (-[WebFrame _createPageCacheForItem:]):
   19987         (-[WebFrame _setState:]):
   19988 
   19989 2003-10-24  Chris Blumenberg  <cblu (a] apple.com>
   19990         Fixed: <rdar://problem/3424039>: standalone plug-in content occasionaly redirects to blank page
   19991 
   19992         Reviewed by john.
   19993 
   19994         * Plugins.subproj/WebBaseNetscapePluginView.m:
   19995         (-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:]): don't honor JS requests from standalone plug-ins to workaround 3462628 which is a deeper issue.
   19996 
   19997 2003-10-24  Chris Blumenberg  <cblu (a] apple.com>
   19998 
   19999         Fixed: <rdar://problem/3462256>: REGRESSION: Plain text is downloaded
   20000 
   20001         Reviewed by john.
   20002 
   20003         * WebView.subproj/WebView.m:
   20004         (+[WebView _viewClass:andRepresentationClass:forMIMEType:]): use _web_objectForMIMEType when getting an object for a MIME. Removed unnecessary code that checked for the document classes after loading the plug-in DB since it is not an optimization because
   20005 
   20006 
   20007  the plug-in DB calls _viewTypesAllowImageTypeOmission:NO.
   20008 
   20009 2003-10-23  Chris Blumenberg  <cblu (a] apple.com>
   20010 
   20011         Fixed: <rdar://problem/3364036>: ER: Allow plug-ins to override built-in types such as image/jpeg
   20012 
   20013         Reviewed by john.
   20014 
   20015         * Plugins.subproj/WebPluginDatabase.m:
   20016         (-[WebPluginDatabase refresh]): Allow plug-ins to override built-in types except for our core HTML types and don't allow the QT plug-in to override any types because it handles many types that we already handle
   20017         * WebCoreSupport.subproj/WebBridge.m:
   20018         (-[WebBridge viewForPluginWithURL:attributes:baseURL:MIMEType:): instead of asserting, handle the case where we ask a plug-in to map from an extension to a MIME type, but nil is returned 
   20019         (-[WebBridge frameRequiredForMIMEType:URL:]): no need to start up the plug-in DB because this is now handled by [WebView _viewClass:andRepresentationClass:forMIMEType:]
   20020         * WebView.subproj/WebDataSource.m:
   20021         (+[WebDataSource _representationClassForMIMEType:]): call [WebView _viewClass:andRepresentationClass:forMIMEType:]
   20022         (-[WebDataSource _makeRepresentation]): call _representationClassForMIMEType
   20023         * WebView.subproj/WebDataSourcePrivate.h:
   20024         * WebView.subproj/WebFrameView.m:
   20025         (-[WebFrameView _makeDocumentViewForDataSource:]): tweak
   20026         (+[WebFrameView _viewClassForMIMEType:]): call [WebView _viewClass:andRepresentationClass:forMIMEType:]
   20027         * WebView.subproj/WebView.m:
   20028         (+[WebView _viewClass:andRepresentationClass:forMIMEType:]): new, central place for mapping from a MIME to the document classes. We now load the plug-in DB when a non-HTML MIME type is encountered instead of loading the plug-in DB when the class for the 
   20029 
   20030 
   20031 MIME type is not found. This is required to fully fix 3364036.
   20032         (+[WebView canShowMIMEType:]): call [WebView _viewClass:andRepresentationClass:forMIMEType:]
   20033         (+[WebView registerViewClass:representationClass:forMIMEType:]): tweak
   20034         * WebView.subproj/WebViewPrivate.h:
   20035 
   20036 2003-10-23  John Sullivan  <sullivan (a] apple.com>
   20037 
   20038         - fixed 3459272 -- Can't set up keyboard loop inside a 
   20039         WebDocumentView without subclassing views
   20040         - fixed 3179062 -- can't tab back to address bar from image-only 
   20041         page
   20042         - fixed 3252009 -- tabbing from address bar to content area does 
   20043         not work with WebTextView
   20044         - fixed 3461398 -- Can't click on a standalone image to focus it 
   20045         (for later keyboard scrolling)
   20046 
   20047         I redid the way WebView and WebFrameView splice themselves into
   20048         the keyview loop in a way very similar to what NSScrollView and
   20049         NSClipView do. This means that contained and sibling views won't 
   20050         need to do anything special to put themselves into the key loop.
   20051 
   20052         Reviewed by Chris.
   20053 
   20054         * WebView.subproj/WebFrameView.m:
   20055         (-[WebFrameView _scrollView]):
   20056         check for nil pointer before dereferencing; this can happen
   20057         during [super dealloc]'s keyview-loop-fixup code
   20058         (-[WebFrameView initWithFrame:]):
   20059         wire our nextKeyView link to the contained scrollview (so
   20060         previousKeyView will work correctly from scrollview)
   20061         (-[WebFrameView acceptsFirstResponder]):
   20062         return what the contained scrollview says
   20063         (-[WebFrameView becomeFirstResponder]):
   20064         in previous direction, use previousValidKeyView (follows normal
   20065         NSView keyview links); in forward direction, hand first
   20066         responder-ness to contained scrollview (which will in turn hand
   20067         it down to clipview, which will in turn hand it down to document)
   20068         (-[WebFrameView setNextKeyView:]):
   20069         wire up scrollview instead of self, if it exists
   20070 
   20071         * WebView.subproj/WebImageView.m:
   20072         (-[WebImageView acceptsFirstResponder]):
   20073         overridden to return YES; this fixes 3461398 and puts the finishing
   20074         touches on 3179062
   20075 
   20076         * WebView.subproj/WebView.m:
   20077         (-[WebView _commonInitializationWithFrameName:groupName:]):
   20078         wire our nextKeyView link to the contained webframeview (so
   20079         previousKeyView will work correctly from webframeview). Also,
   20080         if there's a nextKeyView already set (in a nib, e.g.), wire
   20081         it to our contained webframeview.
   20082         (-[WebView acceptsFirstResponder]):
   20083         return what the contained webframeview says
   20084         (-[WebView becomeFirstResponder]):
   20085         in previous direction, use previousValidKeyView (follows normal
   20086         NSView keyview links); in forward direction, hand first
   20087         responder-ness to contained webframeview (which will in turn hand
   20088         it down to scrollview, etc.)
   20089         (-[WebView setNextKeyView:]):
   20090         wire up webframeview instead of self, if it exists
   20091 
   20092 2003-10-22  Richard Williamson   <rjw (a] apple.com>
   20093 
   20094         Match WebCore's notion of distributing linegap between top and bottom of 
   20095         line.  WebKit used to put it all at the bottom of the line.
   20096 
   20097         Reviewed by Hyatt.
   20098 
   20099         * WebCoreSupport.subproj/WebTextRenderer.h:
   20100         * WebCoreSupport.subproj/WebTextRenderer.m:
   20101         (-[WebTextRenderer initWithFont:usingPrinterFont:]):
   20102         (-[WebTextRenderer _CG_drawHighlightForRun:style:atPoint:]):
   20103 
   20104 2003-10-21  Maciej Stachowiak  <mjs (a] apple.com>
   20105 
   20106         Reviewed by Dave.
   20107 
   20108         Finished exception blocking changes, so now I can finally say:
   20109 
   20110         - fixed 3137084 - Many non-reproducible crashers in ContextImp::mark / ScopeChain::mark
   20111         - fixed 3308848 - nil-deref in KHTMLView::topLevelWidget
   20112         - fixed 3311511 - nil deref inside KJS::Screen
   20113         - fixed 3397422 - 7B51: Safari crashed in KJS::ObjectImp::mark()
   20114         - fixed 3408373 - Panther7B58 : Safari Crashed in KJS::ObjectImp::mark
   20115         - fixed 3409307 - 7B55: safari crashed in KJS::Interpreter::globalExec() (idle, nothing particular going on)
   20116         - fixed 3410160 - 7B60 Safari crashed in KHTMLPart::parentPart called from JS while in the background
   20117         - fixed 3413224 - unrepro crash in KJS::Window::mark
   20118         - fixed 3419940 - unrepro crash in KJS::Collector::allocate trying to access http://www.lindyinthepalms.com
   20119         - fixed 3420123 - Panther7B66: Safari crashed while going to http://www.tangents.co.uk/index2.html
   20120         - fixed 3423225 - Safari crash in vtable for KWQMapImpl (vtable for KWQMapImpl + 8).
   20121         - fixed 3437190 - nil-deref on quit in calling marked() from ScopeChain::mark()
   20122 
   20123         * WebCoreSupport.subproj/WebTextRenderer.m:
   20124         (-[WebTextRenderer ascent]):
   20125         (-[WebTextRenderer descent]):
   20126         (-[WebTextRenderer lineSpacing]):
   20127         (-[WebTextRenderer xHeight]):
   20128         (-[WebTextRenderer drawLineForCharacters:yOffset:withWidth:withColor:]):
   20129         (-[WebTextRenderer _smallCapsRenderer]):
   20130         (-[WebTextRenderer _initializeATSUStyle]):
   20131         (-[WebTextRenderer _createATSUTextLayoutForRun:]):
   20132         (-[WebTextRenderer _trapezoidForRun:style:atPoint:]):
   20133         (-[WebTextRenderer _ATSU_drawHighlightForRun:style:atPoint:]):
   20134         (-[WebTextRenderer _ATSU_drawRun:style:atPoint:]):
   20135         (-[WebTextRenderer _ATSU_pointToOffset:style:position:reversed:]):
   20136 
   20137 2003-10-22  Richard Williamson   <rjw (a] apple.com>
   20138 
   20139         Fixed 3458715.  Reset to 0, not .1 when done.
   20140 
   20141         Reviewed by Chris.
   20142 
   20143         * WebView.subproj/WebView.m:
   20144         (-[WebView _resetProgress]):
   20145         (-[WebView _progressStarted:]):
   20146 
   20147 2003-10-21  Richard Williamson   <rjw (a] apple.com>
   20148 
   20149         Don't use small caps font for characters that don't have an
   20150         uppercase counterpart (i.e. punctuation marks).
   20151 
   20152         Reviewed by Hyatt.
   20153 
   20154         * WebCoreSupport.subproj/WebTextRenderer.m:
   20155         (widthForNextCharacter):
   20156 
   20157 2003-10-21  Chris Blumenberg  <cblu (a] apple.com>
   20158 
   20159         Fixed: <rdar://problem/3176170>: OBJECT tag with no or empty TYPE is mishandled
   20160         Reviewed by rjw.
   20161 
   20162         * Plugins.subproj/WebPluginDatabase.m:
   20163         (-[WebPluginDatabase pluginForExtension:]): If no plug-in is found from the extension, attempt to map from the extension to a MIME type using our mappings and find a plug-in from the MIME type. This improves our chances of finding a plug-in when n
   20164 
   20165 
   20166 o MIME type is specified.
   20167         * WebCoreSupport.subproj/WebBridge.m:
   20168         (-[WebBridge viewForPluginWithURL:attributes:baseURL:MIMEType:]): If the passed MIME is empty, nil it out so that clients only need to check for nil. This avoids error sheets complaining about "" MIME types.
   20169         (-[WebBridge frameRequiredForMIMEType:URL:]): Renamed to include URL. If no MIME is specified, only create a plug-in view if we can map from the extension.
   20170 
   20171 2003-10-20  Chris Blumenberg  <cblu (a] apple.com>
   20172 
   20173         Fixed: <rdar://problem/3457627>: empty Flash plugin at tvguide.com
   20174         Fixed issues with plug-in stream error handling.
   20175         Improved plug-in logging.
   20176 
   20177         Reviewed by kocienda.
   20178 
   20179         * Misc.subproj/WebKitLogging.h: added WebKitLogPluginEvents
   20180         * Misc.subproj/WebKitLogging.m:
   20181         * Plugins.subproj/WebBaseNetscapePluginStream.h:
   20182         * Plugins.subproj/WebBaseNetscapePluginStream.m:
   20183         (-[WebBaseNetscapePluginStream startStreamWithURL:expectedContentLength:lastModifiedDate:MIMEType:]): improved logging
   20184         (-[WebBaseNetscapePluginStream destroyStream]): improved logging
   20185         (-[WebBaseNetscapePluginStream destroyStreamWithFailingReason:]): renamed from cancelWithReason to avoid confusion
   20186         (-[WebBaseNetscapePluginStream receivedError:]): calls destroyStreamWithFailingReason after determining a reason from the NSError
   20187         (-[WebBaseNetscapePluginStream cancelWithReason:]): calls destroyStreamWithFailingReason, this method is overriden by subclasses to cancel the actual load
   20188         (-[WebBaseNetscapePluginStream finishedLoadingWithData:]): call destroyStreamWithFailingReason, not cancelWithReason because the loaded has already ended here
   20189         (-[WebBaseNetscapePluginStream deliverData]): improved logging
   20190         * Plugins.subproj/WebBaseNetscapePluginView.m:
   20191         (-[WebBaseNetscapePluginView sendActivateEvent:]): use even logging
   20192         (-[WebBaseNetscapePluginView sendUpdateEvent]): ditto
   20193         (-[WebBaseNetscapePluginView becomeFirstResponder]): ditto
   20194         (-[WebBaseNetscapePluginView resignFirstResponder]): ditto
   20195         (-[WebBaseNetscapePluginView mouseDown:]): ditto
   20196         (-[WebBaseNetscapePluginView mouseUp:]): ditto
   20197         (-[WebBaseNetscapePluginView mouseEntered:]): ditto
   20198         (-[WebBaseNetscapePluginView mouseExited:]): ditto
   20199         (TSMEventHandler): ditto
   20200         (-[WebBaseNetscapePluginView destroyStream:reason:]): call cancelWithReason so the reason is passed back to the plug-in
   20201         * Plugins.subproj/WebNetscapePluginDocumentView.m:
   20202         (-[WebNetscapePluginDocumentView setDataSource:]): tweak
   20203         * Plugins.subproj/WebNetscapePluginRepresentation.m:
   20204         (-[WebNetscapePluginRepresentation receivedError:withDataSource:]): call receivedError
   20205         (-[WebNetscapePluginRepresentation cancelWithReason:]): override, cancel the load, call super
   20206         * Plugins.subproj/WebNetscapePluginStream.m:
   20207         (-[WebNetscapePluginStream cancelWithReason:]): override, cancel the load, call super
   20208         (-[WebNetscapePluginConnectionDelegate connection:didReceiveResponse:]): be sure to call the stream before calling super because the stream can be cleared out when calling super 
   20209         (-[WebNetscapePluginConnectionDelegate connection:didReceiveData:lengthReceived:]): ditto
   20210         (-[WebNetscapePluginConnectionDelegate connectionDidFinishLoading:]): ditto
   20211         (-[WebNetscapePluginConnectionDelegate connection:didFailWithError:]): ditto
   20212 
   20213 2003-10-20  Richard Williamson   <rjw (a] apple.com>
   20214 
   20215         Conditionally excluded fix for 3446192.  We'll enable the fix once 3446669
   20216         has been fixed.  This patch switches to the new UTI typing API for pasteboard types.
   20217  
   20218         Reviewed by Ken.
   20219 
   20220         * Misc.subproj/WebNSPasteboardExtras.m:
   20221         (+[NSPasteboard initialize]):
   20222 
   20223 2003-10-20  Richard Williamson   <rjw (a] apple.com>
   20224 
   20225         Fixed 3456103.  Don't assert, just check for inappropriate state.
   20226         Reviewed by Hyatt
   20227 
   20228         Add a debug menu item to always use ATSU text drawing.  This will be helpful
   20229         to the ATSU folks in performance tuning there API.  Right now I see approx.
   20230         2X slowdown using ATSU.
   20231 
   20232         Also did some shuffling around of inline related stuff.
   20233 
   20234               Reviewed by Chris.
   20235 
   20236         * WebCoreSupport.subproj/WebTextRenderer.h:
   20237         * WebCoreSupport.subproj/WebTextRenderer.m:
   20238         (isControlCharacter):
   20239         (isAlternateSpace):
   20240         (isSpace):
   20241         (getUncachedWidth):
   20242         (widthFromMap):
   20243         (widthForGlyph):
   20244         (+[WebTextRenderer _setAlwaysUseATSU:]):
   20245         (glyphForCharacter):
   20246         (glyphForUnicodeCharacter):
   20247         (shouldUseATSU):
   20248         * WebView.subproj/WebView.m:
   20249         (+[WebView _setAlwaysUseATSU:]):
   20250         (-[WebView _progressCompleted:]):
   20251         * WebView.subproj/WebViewPrivate.h:
   20252 
   20253 2003-10-19  Chris Blumenberg  <cblu (a] apple.com>
   20254 
   20255         Fixed: <rdar://problem/3442218>: crash due to infinite recursion trying to load standalone plug-in content
   20256 
   20257         Reviewed by darin.
   20258 
   20259         * WebView.subproj/WebFrame.m:
   20260         (-[WebFrame stopLoading]): manage the isStoppingLoad ivar, return if isStoppingLoad is YES
   20261         * WebView.subproj/WebFramePrivate.h: added the isStoppingLoad ivar
   20262 
   20263 2003-10-19  Darin Adler  <darin (a] apple.com>
   20264 
   20265         Reviewed by Dave and Ken.
   20266 
   20267         - fixed 3457066 -- REGRESSION (91-92): command-left-arrow causes a scroll to the left before going back
   20268 
   20269         * WebView.subproj/WebFrameView.m: (-[WebFrameView keyDown:]): Add an else so that we don't fall into the
   20270         scrolling code when the command key is down for right and left arrow.
   20271 
   20272 2003-10-18  Chris Blumenberg  <cblu (a] apple.com>
   20273 
   20274         Fixed: <rdar://problem/3229530>: Dragging standalone image to desktop should save it, not re-download it
   20275 
   20276         Reviewed by darin.
   20277 
   20278         * English.lproj/Localizable.strings:
   20279         * WebKit.pbproj/project.pbxproj:
   20280         * WebView.subproj/WebDocumentPrivate.h: Added.
   20281         * WebView.subproj/WebImageRepresentation.h:
   20282         * WebView.subproj/WebImageRepresentation.m:
   20283         (-[WebImageRepresentation dealloc]): release new filename and data ivars
   20284         (-[WebImageRepresentation doneLoading]): return YES if data is non-nil
   20285         (-[WebImageRepresentation setDataSource:]): store the filename
   20286         (-[WebImageRepresentation receivedError:withDataSource:]): store the data
   20287         (-[WebImageRepresentation finishedLoadingWithDataSource:]): store the data
   20288         (-[WebImageRepresentation data]): new
   20289         (-[WebImageRepresentation filename]): new
   20290         * WebView.subproj/WebImageView.m:
   20291         (-[WebImageView namesOfPromisedFilesDroppedAtDestination:]): just save the image, don't download it
   20292         (-[WebImageView image]): new
   20293 
   20294 2003-10-17  Chris Blumenberg  <cblu (a] apple.com>
   20295 
   20296         Fixed: <rdar://problem/3456176>: Assertion failure when loading atomfilms.com
   20297 
   20298         Reviewed by kocienda.
   20299 
   20300         * Plugins.subproj/WebNetscapePluginStream.m:
   20301         (-[WebNetscapePluginConnectionDelegate connection:didReceiveData:lengthReceived:]): call super before calling plug-in code as we do in other callbacks
   20302         (-[WebNetscapePluginConnectionDelegate connectionDidFinishLoading:]): ditto
   20303         (-[WebNetscapePluginConnectionDelegate connection:didFailWithError:]): ditto
   20304 
   20305 2003-10-16  Richard Williamson   <rjw (a] apple.com>
   20306 
   20307         Fixed 3455306.  Ensure that progress is correctly ended when a load is interupted (i.e. becomes a download).
   20308 
   20309         Reviewed by mjs.
   20310 
   20311         * WebView.subproj/WebFrame.m:
   20312         (-[WebFrame _isLoadComplete]):
   20313 
   20314 2003-10-16  Chris Blumenberg  <cblu (a] apple.com>
   20315 
   20316         Fixed: <rdar://problem/3455176>: Assertion failure when loading non-existant plug-in content
   20317 
   20318         Reviewed by rjw.
   20319 
   20320         * Misc.subproj/WebDownload.m: fixed build failure when using new Foundation. We are overriding and calling a renamed method. Continue to override the old method, override the new method and declare their interfaces to avoid build failures. 
   20321         * Plugins.subproj/WebNetscapePluginStream.m:
   20322         (-[WebNetscapePluginConnectionDelegate connection:didReceiveResponse:]): cancel the load before telling the plug-in about the error so plug-in code doesn't attempt to cancel the load twice
   20323 
   20324 2003-10-16  Richard Williamson   <rjw (a] apple.com>
   20325 
   20326         Fixed 3453991.  We weren't setting the array cursor correctly after changing
   20327         capacity.
   20328 
   20329         Reviewed by John.
   20330 
   20331         * ChangeLog:
   20332         * History.subproj/WebBackForwardList.m:
   20333         (-[WebBackForwardList setCapacity:]):
   20334 
   20335 === Safari-110 ===
   20336 
   20337 2003-10-16  Richard Williamson   <rjw (a] apple.com>
   20338 
   20339         Tweaked the progress behavior and factored cleanup of progress
   20340         related ivars.
   20341 
   20342         Reviewed by Hyatt.
   20343 
   20344         * WebView.subproj/WebDataSource.m:
   20345         (-[WebDataSource _startLoading:]):
   20346         * WebView.subproj/WebFrame.m:
   20347         (-[WebFrame _isLoadComplete]):
   20348         * WebView.subproj/WebView.m:
   20349         (-[WebView _resetProgress]):
   20350         (-[WebView _progressStarted:]):
   20351         (-[WebView _finalProgressComplete]):
   20352         (-[WebView _progressCompleted:]):
   20353         (-[WebView _incrementProgressForConnection:data:]):
   20354         * WebView.subproj/WebViewPrivate.h:
   20355 
   20356 2003-10-14  Richard Williamson   <rjw (a] apple.com>
   20357 
   20358         Added logging for estimated progress.
   20359         
   20360         Added a time delta to the throttler, so we now send notifications
   20361         if a delta amount has been exceeded OR a delta between notifications
   20362         has been exceeded.
   20363 
   20364         Reviewed by Chris.
   20365 
   20366         * Misc.subproj/WebKitLogging.h:
   20367         * Misc.subproj/WebKitLogging.m:
   20368         * WebView.subproj/WebView.m:
   20369         (-[WebViewPrivate init]):
   20370         (-[WebView _progressStarted]):
   20371         (-[WebView _progressCompleted]):
   20372         (-[WebView _incrementProgressForConnection:data:]):
   20373         * WebView.subproj/WebViewPrivate.h:
   20374 
   20375 2003-10-14  Ken Kocienda  <kocienda (a] apple.com>
   20376 
   20377         Reviewed by Darin
   20378 
   20379         Fix for this bug:
   20380 
   20381         <rdar://problem/3450449>: assertion failure in WebBridge 
   20382         _retrieveKeyboardUIModeFromPreferences
   20383 
   20384         Can't assert that the preference always exists and is valid as I
   20385         thought you could. This could just mean that the a preference for full
   20386         keyboard access has not been specified by the user yet. If this is so,
   20387         just return the default keyboard access mode.
   20388 
   20389         * WebCoreSupport.subproj/WebBridge.m:
   20390         (-[WebBridge _retrieveKeyboardUIModeFromPreferences:])
   20391 
   20392 2003-10-13  Richard Williamson  <rjw (a] apple.com>
   20393 
   20394         Added support for small-caps.
   20395 
   20396         Reworked drawing and measuring to use new iterators.  Position checking was already using
   20397         the new iterator code, but I was reluctant to switch the mainline drawing and measuring
   20398         code over to the new approach until now.
   20399 
   20400         Lots of other code cleanup.
   20401 
   20402         Reviewed by John.
   20403 
   20404         * Misc.subproj/WebUnicode.m:
   20405         (initializeCharacterShapeIterator):
   20406         * WebCoreSupport.subproj/WebTextRenderer.h:
   20407         * WebCoreSupport.subproj/WebTextRenderer.m:
   20408         (+[WebTextRenderer shouldBufferTextDrawing]):
   20409         (+[WebTextRenderer initialize]):
   20410         (-[WebTextRenderer initWithFont:usingPrinterFont:]):
   20411         (-[WebTextRenderer dealloc]):
   20412         (-[WebTextRenderer widthForCharacters:length:]):
   20413         (-[WebTextRenderer widthForString:]):
   20414         (-[WebTextRenderer ascent]):
   20415         (-[WebTextRenderer descent]):
   20416         (-[WebTextRenderer lineSpacing]):
   20417         (-[WebTextRenderer xHeight]):
   20418         (-[WebTextRenderer drawRun:style:atPoint:]):
   20419         (-[WebTextRenderer floatWidthForRun:style:widths:]):
   20420         (-[WebTextRenderer drawLineForCharacters:yOffset:withWidth:withColor:]):
   20421         (-[WebTextRenderer drawHighlightForRun:style:atPoint:]):
   20422         (-[WebTextRenderer pointToOffset:style:position:reversed:]):
   20423         (-[WebTextRenderer _setIsSmallCapsRenderer:]):
   20424         (-[WebTextRenderer _isSmallCapsRenderer]):
   20425         (-[WebTextRenderer _smallCapsRenderer]):
   20426         (-[WebTextRenderer _smallCapsFont]):
   20427         (-[WebTextRenderer _substituteFontForString:families:]):
   20428         (-[WebTextRenderer _substituteFontForCharacters:length:families:]):
   20429         (-[WebTextRenderer _convertCharacters:length:toGlyphs:skipControlCharacters:]):
   20430         (-[WebTextRenderer _convertUnicodeCharacters:length:toGlyphs:]):
   20431         (-[WebTextRenderer _computeWidthForSpace]):
   20432         (-[WebTextRenderer _setupFont]):
   20433         (_drawGlyphs):
   20434         (-[WebTextRenderer _CG_drawHighlightForRun:style:atPoint:]):
   20435         (-[WebTextRenderer _CG_drawRun:style:atPoint:]):
   20436         (-[WebTextRenderer _floatWidthForRun:style:widths:fonts:glyphs:startPosition:numGlyphs:]):
   20437         (-[WebTextRenderer _CG_floatWidthForRun:style:widths:fonts:glyphs:startPosition:numGlyphs:]):
   20438         (-[WebTextRenderer _extendUnicodeCharacterToGlyphMapToInclude:]):
   20439         (-[WebTextRenderer _updateGlyphEntryForCharacter:glyphID:font:]):
   20440         (-[WebTextRenderer _extendCharacterToGlyphMapToInclude:]):
   20441         (-[WebTextRenderer _extendGlyphToWidthMapToInclude:font:]):
   20442         (-[WebTextRenderer _trapezoidForRun:style:atPoint:]):
   20443         (-[WebTextRenderer _ATSU_floatWidthForRun:style:]):
   20444         (-[WebTextRenderer _ATSU_drawHighlightForRun:style:atPoint:]):
   20445         (-[WebTextRenderer _ATSU_drawRun:style:atPoint:]):
   20446         (-[WebTextRenderer _ATSU_pointToOffset:style:position:reversed:]):
   20447         (-[WebTextRenderer _CG_pointToOffset:style:position:reversed:]):
   20448         (freeWidthMap):
   20449         (freeGlyphMap):
   20450         (glyphForCharacter):
   20451         (glyphForUnicodeCharacter):
   20452         (mapForSubstituteFont):
   20453         (widthFromMap):
   20454         (widthForGlyph):
   20455         (initializeCharacterWidthIterator):
   20456         (widthAndGlyphForSurrogate):
   20457         (ceilCurrentWidth):
   20458         (widthForNextCharacter):
   20459         (fillStyleWithAttributes):
   20460         (findLengthOfCharacterCluster):
   20461         (shouldUseATSU):
   20462         (isControlCharacter):
   20463         (isAlternateSpace):
   20464         (isSpace):
   20465         (fontContainsString):
   20466         (GetScratchUniCharString):
   20467         (toUpper):
   20468         (isUpper):
   20469 
   20470 2003-10-10  Maciej Stachowiak  <mjs (a] apple.com>
   20471 
   20472         * English.lproj/StringsNotToBeLocalized.txt: Fixed for Private
   20473         change from a while back.
   20474 
   20475 2003-10-10  David Hyatt  <hyatt (a] apple.com>
   20476 
   20477         Patch to move widgets during layout instead of waiting until paint time.
   20478         Reviewed by darin
   20479 
   20480         * WebView.subproj/WebDataSource.m:
   20481         * WebView.subproj/WebDataSourcePrivate.h:
   20482         * WebView.subproj/WebFrame.m:
   20483         (-[WebFrame _isLoadComplete]):
   20484         * WebView.subproj/WebHTMLView.m:
   20485         * WebView.subproj/WebHTMLViewPrivate.h:
   20486 
   20487 2003-10-09  Richard Williamson   <rjw (a] apple.com>
   20488 
   20489         Ensure that the autoscroll timer is always stopped if a mouse up event is lost.
   20490 
   20491         Reviewed by John.
   20492 
   20493         * WebView.subproj/WebHTMLView.m:
   20494         (-[WebHTMLViewPrivate dealloc]):
   20495         (-[WebHTMLView _startAutoscrollTimer:]):
   20496         (-[WebHTMLView _stopAutoscrollTimer]):
   20497         (-[WebHTMLView _autoscroll]):
   20498         (-[WebHTMLView mouseDown:]):
   20499         * WebView.subproj/WebHTMLViewPrivate.h:
   20500 
   20501 2003-10-09  Chris Blumenberg  <cblu (a] apple.com>
   20502 
   20503         Fixed: <rdar://problem/3333897>: should support navigator.plugins.refresh as a way to add a plugin without restarting Safari
   20504 
   20505         Reviewed by rjw.
   20506 
   20507         * Plugins.subproj/WebBaseNetscapePluginView.m:
   20508         (-[WebBaseNetscapePluginView dealloc]): release the plug-in object
   20509         * Plugins.subproj/WebBasePluginPackage.h:
   20510         * Plugins.subproj/WebBasePluginPackage.m:
   20511         (-[WebBasePluginPackage initWithPath:]): store the last mod date
   20512         (-[WebBasePluginPackage dealloc]): release the last mod date
   20513         (-[WebBasePluginPackage lastModifiedDate]): new
   20514         (-[WebBasePluginPackage isEqual:]): new
   20515         (-[WebBasePluginPackage hash]): new
   20516         * Plugins.subproj/WebNetscapePluginPackage.m:
   20517         (-[WebNetscapePluginPackage load]): convert the NPP_Shutdown proc pointer so that we can use it later
   20518         (-[WebNetscapePluginPackage unload]): added log message
   20519         * Plugins.subproj/WebPluginDatabase.h:
   20520         * Plugins.subproj/WebPluginDatabase.m:
   20521         (-[WebPluginDatabase pluginForKey:withEnumeratorSelector:]): tweak
   20522         (-[WebPluginDatabase plugins]): tweak
   20523         (-[WebPluginDatabase init]): call refresh
   20524         (-[WebPluginDatabase refresh]): new
   20525         (-[WebPluginDatabase loadPluginIfNeededForMIMEType:]): tweak
   20526         * WebCoreSupport.subproj/WebViewFactory.m:
   20527         (-[WebViewFactory refreshPlugins:]): new
   20528         * WebView.subproj/WebControllerSets.h:
   20529         * WebView.subproj/WebControllerSets.m:
   20530         (+[WebViewSets makeWebViewsPerformSelector:]): new
   20531         * WebView.subproj/WebFrame.m:
   20532         (-[WebFrame _reloadForPluginChanges]): new
   20533         * WebView.subproj/WebFramePrivate.h:
   20534         * WebView.subproj/WebView.m:
   20535         (-[WebView _reloadForPluginChanges]): new
   20536         * WebView.subproj/WebViewPrivate.h:
   20537 
   20538 === Safari-109 ===
   20539 
   20540 2003-10-03  Richard Williamson <rjw (a] apple.com>
   20541 
   20542         Fix part of 3438071.  Creating an instance of WebPreferences using init
   20543         will do the expected thing:  that is, create a new instance!  We used to
   20544         always return standardPreferences.
   20545 
   20546         Reviewed by Chris.
   20547 
   20548         * WebView.subproj/WebPreferences.m:
   20549         (-[WebPreferences init]):
   20550         (+[WebPreferences standardPreferences]):
   20551 
   20552 2003-10-03  David Hyatt  <hyatt (a] apple.com>
   20553 
   20554         Fix for numerous regressions caused by an inadvertent renaming of the recursiveDisplay
   20555         override method.
   20556         Reviewed by darin
   20557 
   20558         * WebView.subproj/WebHTMLView.m:
   20559         (-[WebHTMLView _recursiveDisplayRectIfNeededIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:topView:]):
   20560 
   20561 2003-10-03  Richard Williamson (Home0  <rjw (a] apple.com>
   20562 
   20563         Fixed some edge case issue (control characters after end of word) with our rounding hack.
   20564 
   20565         Reviewed by Darin.
   20566 
   20567         * WebCoreSupport.subproj/WebTextRenderer.m:
   20568         (-[WebTextRenderer _CG_floatWidthForRun:style:widths:fonts:glyphs:startGlyph:endGlyph:numGlyphs:]):
   20569 
   20570 2003-10-03  Ken Kocienda  <kocienda (a] apple.com>
   20571 
   20572         Reviewed by Darin, with much help from Maciej and Hyatt
   20573 
   20574         Fix for this bug:
   20575 
   20576         <rdar://problem/3441321>: Form buttons do not respond to key events when focused
   20577 
   20578         * WebView.subproj/WebFrameView.m:
   20579         (-[WebFrameView _firstResponderIsControl]): Added to tell if the focus
   20580         is on a form control.
   20581         (-[WebFrameView keyDown:]): Call new _firstResponderIsControl method to see
   20582         whether space bar key events should propagate. Adding this check keeps us
   20583         from blocking the event here and allows AppKit to handle it.
   20584         * WebView.subproj/WebFrameViewPrivate.h: Add new _firstResponderIsControl 
   20585         method.
   20586 
   20587 2003-10-02  Maciej Stachowiak  <mjs (a] apple.com>
   20588 
   20589         Folded Private implementation files into the regular ones as the
   20590         first step towards pulling in our SPI exposure and other code
   20591         cleanup.
   20592 
   20593         * History.subproj/WebHistory.m:
   20594         * History.subproj/WebHistoryPrivate.m: Removed.
   20595         * Misc.subproj/WebIconDatabasePrivate.h:
   20596         * WebKit.pbproj/project.pbxproj:
   20597         * WebView.subproj/WebDataSource.m:
   20598         * WebView.subproj/WebDataSourcePrivate.m: Removed.
   20599         * WebView.subproj/WebFrame.m:
   20600         * WebView.subproj/WebFramePrivate.m: Removed.
   20601         * WebView.subproj/WebFrameView.m:
   20602         * WebView.subproj/WebFrameViewPrivate.m: Removed.
   20603         * WebView.subproj/WebHTMLView.m:
   20604         * WebView.subproj/WebHTMLViewPrivate.m: Removed.
   20605         * WebView.subproj/WebView.m:
   20606         * WebView.subproj/WebViewPrivate.m: Removed.
   20607 
   20608 2003-10-02  Chris Blumenberg  <cblu (a] apple.com>
   20609 
   20610         Fixed: <rdar://problem/3440063>: Safari 1.1 won't load new pages after visiting adultswim.com, assertion failure on debug build
   20611 
   20612         Reviewed by rjw.
   20613 
   20614         * Plugins.subproj/WebBaseNetscapePluginStream.m:
   20615         (-[WebBaseNetscapePluginStream finishedLoadingWithData:]): if not data was received for a stream, create the temp file anyway. Plug-ins expect this.
   20616 
   20617 === Safari-108 ===
   20618 
   20619 2003-10-02  Darin Adler  <darin (a] apple.com>
   20620 
   20621         * English.lproj/StringsNotToBeLocalized.txt: Update for recent changes.
   20622 
   20623 2003-10-01  Maciej Stachowiak  <mjs (a] apple.com>
   20624 
   20625         Reviewed by Darin.
   20626 
   20627         - fixed 3441466 - REGRESSION: http://www.meyerweb.com/eric/css/edge/complexspiral/glassy.html broken on scroll
   20628         * WebView.subproj/WebFramePrivate.m:
   20629         (-[WebFrame _setState:]): Don't turn on scroll-blitting here when the page is done...
   20630         (-[WebFrame _transitionToCommitted:]): Instead do it here, when the page is committed.
   20631 
   20632 2003-10-02  Darin Adler  <darin (a] apple.com>
   20633 
   20634         Reviewed by Ken.
   20635 
   20636         - in preparation for a WebCore whitespace-handling change, made WebTextRenderer draw and measure
   20637           newline characters as if they are spaces (just as we already do with non-breaking spaces)
   20638         - removed some unused stuff from WebTextRenderer
   20639         - other unimportant tweaks (e.g. unsigned int -> unsigned)
   20640 
   20641         * WebCoreSupport.subproj/WebTextRenderer.m:
   20642         (kFixedOne), (fixed1), (FixToFloat), (FloatToFixed): Removed these. We can use the standard ones
   20643         from <FixMath.h> instead of defining our own.
   20644         (isControlCharacter): Added. Inline function that we can use instead of the macro we had before.
   20645         (isAlternateSpace): Added. Returns YES for newlines and non-breaking spaces.
   20646         (isSpace): Added. Returns YES for real spaces and the two alternate spaces as well.
   20647         (initializeCharacterWidthIterator): Use isSpace.
   20648         (-[WebTextRenderer convertCharacters:length:toGlyphs:skipControlCharacters:]): Use isAlternateSpace
   20649         and isControlCharacter.
   20650         (-[WebTextRenderer _CG_floatWidthForRun:style:widths:fonts:glyphs:startGlyph:endGlyph:numGlyphs:]):
   20651         Use isControlCharacter, isAlternateSpace, and isSpace. Also fix a small bug where numGlyphs would
   20652         not get set up properly when the run length is 0, and used local variables when possible instead
   20653         of going back at the run structure.
   20654         (-[WebTextRenderer _ATSU_floatWidthForRun:style:]): Use the standard FixedToFloat instead of our
   20655         own FixToFloat.
   20656         (-[WebTextRenderer _ATSU_drawHighlightForRun:style:atPoint:]): Ditto.
   20657 
   20658 2003-10-02  David Hyatt  <hyatt (a] apple.com>
   20659 
   20660         Work on exposing elements to the Acc API.  This patch gets us to the point where text
   20661         under the mouse is voiced.
   20662         Reviewed by darin
   20663 
   20664         * WebView.subproj/WebHTMLView.m:
   20665         (-[WebHTMLView accessibilityAttributeValue:]):
   20666         (-[WebHTMLView accessibilityHitTest:]):
   20667 
   20668 2003-10-01  John Sullivan  <sullivan (a] apple.com>
   20669 
   20670         Reviewed by Darin
   20671 
   20672         * WebView.subproj/WebHTMLView.m:
   20673         (-[WebHTMLView viewDidMoveToSuperview]):
   20674         skip some work when when we've been removed. This wasn't
   20675         causing any trouble before, but was at least conceptually
   20676         inefficient.
   20677 
   20678 2003-10-01  John Sullivan  <sullivan (a] apple.com>
   20679 
   20680         - fixed 3441372: REGRESSION (107+): Plain text document is 
   20681         initially drawn with proportional font
   20682 
   20683         Reviewed by Hyatt
   20684 
   20685         * WebView.subproj/WebTextView.m:
   20686         (-[WebTextView setDataSource:]):
   20687         Changed a != to an ==
   20688 
   20689 2003-10-01  Richard Williamson   <rjw (a] apple.com>
   20690 
   20691         Fixed 3438441.  If a load is triggered by a onload handling, don't add an entry for it into the b/f or history.  The new Google ads use this technique.
   20692 
   20693         Reviewed by Ken.
   20694 
   20695         * Misc.subproj/WebKitLogging.h:
   20696         * Misc.subproj/WebKitLogging.m:
   20697         * WebCoreSupport.subproj/WebBridge.m:
   20698         (-[WebBridge loadURL:referrer:reload:onLoadEvent:target:triggeringEvent:form:formValues:]):
   20699         * WebView.subproj/WebFramePrivate.h:
   20700         * WebView.subproj/WebFramePrivate.m:
   20701         (-[WebFrame _addBackForwardItemClippedAtTarget:]):
   20702         (-[WebFrame _transitionToCommitted:]):
   20703         (-[WebFrame _isLoadComplete]):
   20704         (-[WebFrame _loadItem:withLoadType:]):
   20705         (-[WebFrame _itemForRestoringDocState]):
   20706 
   20707 2003-10-01  Darin Adler  <darin (a] apple.com>
   20708 
   20709         Reviewed by John.
   20710 
   20711         * WebView.subproj/WebHTMLViewPrivate.m: (-[WebHTMLView _webView]):
   20712         Fixed problem where we'd get a nil WebView and pass crazy values for subframe
   20713         text multipliers.
   20714 
   20715 2003-10-01  David Hyatt  <hyatt (a] apple.com>
   20716 
   20717         Fix for 3440804, broken scrollbars in downloads window.  Make Auto be the default
   20718         value in the enum, so that all scrollviews will be automatically initialized to be
   20719         auto.
   20720         Reviewed by cblu
   20721 
   20722         * WebView.subproj/WebDynamicScrollBarsView.m:
   20723 
   20724 2003-09-30  Richard Williamson   <rjw (a] apple.com>
   20725 
   20726         Attempt to find a reasonable font using a simple string matching heuristic if 
   20727         none of the fonts actually specified are found.  In particular we will use
   20728         Geeza Pro if "arabic", "urdu", or "pashto" is contained (case-insensitive) in
   20729         any of the requested font family names.  Geeza Pro is a much better fallback
   20730         font for Arabic (and variant languages) than Helvetica.
   20731 
   20732         Reviewed by Chris.
   20733 
   20734         * WebCoreSupport.subproj/WebTextRendererFactory.m:
   20735         (-[WebTextRendererFactory fontWithFamilies:traits:size:]):
   20736 
   20737 2003-09-30  John Sullivan  <sullivan (a] apple.com>
   20738 
   20739         - fixed 3045617 -- Make Text Bigger/Smaller doesn't affect non-html documents.
   20740         
   20741         I added an internal protocol inside WebKit to make this work, and implemented
   20742         it for plain text and RTF. I also slightly shuffled the existing code to
   20743         handle this for HTML so that it goes through the new protocol in that case
   20744         also.
   20745 
   20746         * WebView.subproj/WebDocumentInternal.h: Added.
   20747                New header file, holds definition of 
   20748         _web_WebDocumentTextSizing protocol.
   20749 
   20750         * WebView.subproj/WebFramePrivate.m:
   20751         (-[WebFrame _textSizeMultiplierChanged]):
   20752         if the document view conforms to the new protocol,
   20753         tell it that the multiplier has changed. Also, don't
   20754         tell the bridge here anymore; let WebHTMLView do that.
   20755 
   20756         * WebView.subproj/WebHTMLView.m:
   20757         (-[WebHTMLView _updateTextSizeMultiplier]):
   20758         tell the bridge here instead of having WebFrame do so
   20759         (-[WebHTMLView viewDidMoveToSuperview]):
   20760         call _updateTextSizeMultiplier (in case it changed while we were switched out)
   20761         (-[WebHTMLView _web_textSizeMultiplierChanged]):
   20762         call _updateTextSizeMultiplier
   20763         
   20764         * WebView.subproj/WebTextRepresentation.m:
   20765         (-[WebTextRepresentation receivedData:withDataSource:]):
   20766         
   20767         * WebView.subproj/WebTextView.h:
   20768         now implements _web_WebDocumentTextSizing protocol;
   20769         new ivar for holding local copy of text size multiplier;
   20770         new public method appendReceivedData:fromDataSource:
   20771         
   20772         * WebView.subproj/WebTextView.m:
   20773         (-[WebTextView initWithFrame:]):
   20774         set local copy of text size multiplier to 1.0
   20775         (-[WebTextView _textSizeMultiplierFromWebView]):
   20776         new method, asks the webview's opinion of the text size multiplier
   20777         (-[WebTextView setFixedWidthFont]):
   20778         use the text size multiplier when setting font size
   20779         (-[WebTextView _adjustRichTextFontSizeByRatio:]):
   20780         new method, borrowed from Mail and tweaked, that walks through
   20781         the rich text and adjusts the font sizes
   20782         (-[WebTextView _updateTextSizeMultiplier]):
   20783         new method, updates local copy of text size multiplier to
   20784         match webview's opinion
   20785         (-[WebTextView setDataSource:]):
   20786         set the text size multiplier appropriately before setting the
   20787         fixed-width font; this is too early for the RTF case though
   20788         since the fonts are embedded in the data
   20789         (-[WebTextView appendReceivedData:fromDataSource:]):
   20790         new method. Most of this logic was in WebTextRepresentation, but
   20791         it's a little better encapsulated here, plus now it handles the
   20792         text multiplier for RTF.
   20793         (-[WebTextView defaultsChanged:]):
   20794         added comment
   20795         (-[WebTextView _web_textSizeMultiplierChanged]):
   20796         call updateTextSizeMultiplier
   20797         
   20798         * WebView.subproj/WebView.m:
   20799         (-[WebView canMakeTextSmaller]):
   20800         (-[WebView canMakeTextLarger]):
   20801         return NO if the main frame doesn't support the text sizing protocol. This means
   20802         that if the main frame doesn't support it but a subframe does, you can't adjust
   20803         the text size. This seems fine for now since the only case with subframes is
   20804         HTML, where the main frame does support changing text size.
   20805         
   20806         * WebKit.pbproj/project.pbxproj:
   20807         updated for new file
   20808 
   20809 2003-09-30  Chris Blumenberg  <cblu (a] apple.com>
   20810 
   20811         Fixed: <rdar://problem/3428262>: Plugin loads for static files, but not PHP scripts
   20812 
   20813         Reviewed by rjw.
   20814 
   20815         * WebCoreSupport.subproj/WebBridge.m:
   20816         (-[WebBridge frameRequiredForMIMEType:]): load the plug-in DB so this method returns reliable results.
   20817 
   20818 2003-09-30  Chris Blumenberg  <cblu (a] apple.com>
   20819 
   20820         Fixed: <rdar://problem/3006869>: show image dimensions in title bar when single image is loaded
   20821 
   20822         Reviewed by rjw.
   20823 
   20824         * English.lproj/Localizable.strings:
   20825         * WebView.subproj/WebImageRepresentation.m:
   20826         (-[WebImageRepresentation title]): return "foo.jpg 50x50 pixels"
   20827 
   20828 2003-09-30  Richard Williamson   <rjw (a] apple.com>
   20829 
   20830         Fixed 3420396.  If a frame targets _top and a URL that contains a fragment (very unusual, it's meaningless for a frameset to contain a named anchor point) the frameset won't be reloaded.  Our normal path is to just scroll to the anchor point.  This is on
   20831 
   20832 
   20833 ly important because our Help folks oddly depend on the behavior.
   20834 
   20835         Reviewed by Chris.
   20836 
   20837         * WebView.subproj/WebFramePrivate.m:
   20838         (-[WebFrame _loadURL:referrer:loadType:target:triggeringEvent:form:formValues:]):
   20839 
   20840 2003-09-30  Ken Kocienda  <kocienda (a] apple.com>
   20841 
   20842         Reviewed by Maciej
   20843         
   20844         Fix for this bug:
   20845         
   20846         <rdar://problem/3439688>: WebKit needs to retrieve full keyboard access preference
   20847         
   20848         * WebCoreSupport.subproj/WebBridge.h: Add two ivars: one to track the keyboard
   20849         UI mode, the other a flag we use to register for notifications.
   20850         * WebCoreSupport.subproj/WebBridge.m:
   20851         (-[WebBridge dealloc]): Remove the notification observer to keyboard UI mode changes.
   20852         (-[WebBridge _retrieveKeyboardUIModeFromPreferences:]): New method. Accesses the
   20853         preferences to get the current keyboard UI mode.
   20854         (-[WebBridge keyboardUIMode]): Returns the current keyboard UI mode. Registers for
   20855         notifications of keyboard UI mode changes when called the first time.
   20856         
   20857 2003-09-30  Maciej Stachowiak  <mjs (a] apple.com>
   20858 
   20859         Reviewed by Ken.
   20860 
   20861         - fixed 3375281 - Keyboard event handlers not fired if focus not in form field
   20862         - fixed 3242927 - KeyPressed Event in Javascript don't work
   20863         - fixed 3375353 - keyboard event.target not updated when blurring from form items
   20864         - fixed 3183754 - returning false from key press handlers does not prevent typing or form submission
   20865 
   20866         * WebView.subproj/WebHTMLView.m:
   20867         (-[WebHTMLView keyDown:]): Ask the bridge before passing the event along.
   20868         (-[WebHTMLView keyUp:]): Likewise.
   20869         * WebView.subproj/WebHTMLViewPrivate.h:
   20870         * WebView.subproj/WebHTMLViewPrivate.m: Remove dead code.
   20871 
   20872 2003-09-30  Richard Williamson   <rjw (a] apple.com>
   20873 
   20874         Fixed 3422138.  We weren't sending a didChange call for isLoading until the load was complete!  Also [WebView isLoading] wasn't accounting for provisional datasources.
   20875 
   20876         Reviewed by Chris.
   20877 
   20878         * WebView.subproj/WebView.m:
   20879         (-[WebView isLoading]):
   20880         * WebView.subproj/WebViewPrivate.h:
   20881         * WebView.subproj/WebViewPrivate.m:
   20882         (-[WebView _didStartProvisionalLoadForFrame:]):
   20883         (-[WebView _didCommitLoadForFrame:]):
   20884         (-[WebView _didFinishLoadForFrame:]):
   20885         (-[WebView _didFailLoadWithError:forFrame:]):
   20886         (-[WebView _didFailProvisionalLoadWithError:forFrame:]):
   20887 
   20888 2003-09-30  David Hyatt  <hyatt (a] apple.com>
   20889 
   20890         Improvements to scrolling and layout.  Also fixing 3264346, body overflow should
   20891         apply to document's scrollbars.
   20892         Reviewed by darin
   20893 
   20894         * WebView.subproj/WebDynamicScrollBarsView.h:
   20895         * WebView.subproj/WebDynamicScrollBarsView.m:
   20896         (-[WebDynamicScrollBarsView initWithFrame:]):
   20897         (-[WebDynamicScrollBarsView setScrollBarsSuppressed:repaintOnUnsuppress:]):
   20898         (-[WebDynamicScrollBarsView updateScrollers]):
   20899         (-[WebDynamicScrollBarsView reflectScrolledClipView:]):
   20900         (-[WebDynamicScrollBarsView setAllowsScrolling:]):
   20901         (-[WebDynamicScrollBarsView allowsScrolling]):
   20902         (-[WebDynamicScrollBarsView setAllowsHorizontalScrolling:]):
   20903         (-[WebDynamicScrollBarsView setAllowsVerticalScrolling:]):
   20904         (-[WebDynamicScrollBarsView allowsHorizontalScrolling]):
   20905         (-[WebDynamicScrollBarsView allowsVerticalScrolling]):
   20906         (-[WebDynamicScrollBarsView horizontalScrollingMode]):
   20907         (-[WebDynamicScrollBarsView verticalScrollingMode]):
   20908         (-[WebDynamicScrollBarsView setHorizontalScrollingMode:]):
   20909         (-[WebDynamicScrollBarsView setVerticalScrollingMode:]):
   20910         (-[WebDynamicScrollBarsView setScrollingMode:]):
   20911 
   20912 2003-09-29  Chris Blumenberg  <cblu (a] apple.com>
   20913 
   20914         Fixed: <rdar://problem/3422739>: Plug-in streams not cancelled when plug-in returns error from NPP_NewStream
   20915 
   20916         Reviewed by mjs.
   20917 
   20918         * Plugins.subproj/WebBaseNetscapePluginStream.h: renamed receivedError to cancelWithReason
   20919         * Plugins.subproj/WebBaseNetscapePluginStream.m:
   20920         (-[WebBaseNetscapePluginStream startStreamWithURL:expectedContentLength:lastModifiedDate:MIMEType:]): call cancelWithReason if NPP_NewStream returns an error
   20921         (-[WebBaseNetscapePluginStream cancelWithReason:]): renamed
   20922         (-[WebBaseNetscapePluginStream finishedLoadingWithData:]): tweak
   20923         * Plugins.subproj/WebNetscapePluginRepresentation.m:
   20924         (-[WebNetscapePluginRepresentation receivedError:withDataSource:]): call renamed cancelWithReason
   20925         (-[WebNetscapePluginRepresentation cancelWithReason:]): new override, stop load then call super
   20926         * Plugins.subproj/WebNetscapePluginStream.m:
   20927         (-[WebNetscapePluginStream cancelWithReason:]): new override, stop load then call super
   20928         (-[WebNetscapePluginStream stop]): call cancelWithReason
   20929         (-[WebNetscapePluginConnectionDelegate connection:didReceiveResponse:]): call renamed cancelWithReason
   20930         (-[WebNetscapePluginConnectionDelegate connection:didFailWithError:]): call renamed cancelWithReason
   20931 
   20932 2003-09-25  Maciej Stachowiak  <mjs (a] apple.com>
   20933 
   20934         Roll out build system change since it did not actually work. :-(
   20935         * WebKit.pbproj/project.pbxproj:
   20936 
   20937 2003-09-25  David Hyatt  <hyatt (a] apple.com>
   20938 
   20939         Change layout so that it is called from the private _recursive functions instead of
   20940         inside drawRect.
   20941         Reviewed by kocienda
   20942 
   20943         * WebView.subproj/WebHTMLView.m:
   20944         (-[WebHTMLView layoutToPageWidth:adjustingViewSize:]):
   20945         (-[WebHTMLView drawRect:]):
   20946         * WebView.subproj/WebHTMLViewPrivate.m:
   20947         (-[WebHTMLView _recursiveDisplayRectIfNeededIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:testDirtyRect:]):
   20948         (-[WebHTMLView _recursiveDisplayAllDirtyWithLockFocus:visRect:]):
   20949         (-[WebHTMLView _web_setPrintingModeRecursive]):
   20950         (-[WebHTMLView _web_clearPrintingModeRecursive]):
   20951         (-[WebHTMLView _web_layoutIfNeededRecursive:testDirtyRect:]):
   20952         (-[NSView _web_setPrintingModeRecursive]):
   20953         (-[NSView _web_clearPrintingModeRecursive]):
   20954         (-[NSView _web_layoutIfNeededRecursive:testDirtyRect:]):
   20955 
   20956 2003-09-25  Richard Williamson   <rjw (a] apple.com>
   20957 
   20958         Fixed 3433802.  Written by Ed.  Carbon WebView doesn't detach native view when removed.
   20959 
   20960         Reviewed by Richard.
   20961 
   20962         * Carbon.subproj/HIWebView.m:
   20963         (OwningWindowChanged):
   20964 
   20965 2003-09-25  Richard Williamson   <rjw (a] apple.com>
   20966 
   20967         Fixed 3433488.  Written by Ed.  WebKit doesn't sync window visibility when new webview added to visible window.
   20968 
   20969         Reviewed by Richard.
   20970 
   20971         * Carbon.subproj/CarbonWindowAdapter.m:
   20972         (-[CarbonWindowAdapter initWithCarbonWindowRef:takingOwnership:disableOrdering:carbon:]):
   20973 
   20974 2003-09-25  Richard Williamson   <rjw (a] apple.com>
   20975 
   20976         Fixed 3434854.  Written by Ed.  Correctly handle window modality in carbon.
   20977 
   20978         Reviewed by Richard.
   20979 
   20980         * Carbon.subproj/CarbonWindowAdapter.m:
   20981         (-[CarbonWindowAdapter initWithCarbonWindowRef:takingOwnership:disableOrdering:carbon:]):
   20982 
   20983 2003-09-25  Maciej Stachowiak  <mjs (a] apple.com>
   20984 
   20985         Reviewed by Darin.
   20986 
   20987         Updated setup for engineering builds. Don't embed the framework
   20988         into Safari or hack the install name. However, do copy WebCore and
   20989         JavaScriptCore into the proper sub-umbrella locations.
   20990         * WebKit.pbproj/project.pbxproj:
   20991         * embed-frameworks.sh: Added.
   20992 
   20993 === Safari-107 ===
   20994 
   20995 2003-09-25  Ken Kocienda  <kocienda (a] apple.com>
   20996 
   20997         Reviewed by Darin
   20998 
   20999         Fix for this bug:
   21000         
   21001         <rdar://problem/3341222>: WebView doesn't follow AppKit default nextKeyView pattern
   21002         
   21003         * WebCoreSupport.subproj/WebBridge.h: Added a variable to guard against recursion
   21004         in -[WebBridge inNextKeyViewOutsideWebFrameViews].
   21005         * WebCoreSupport.subproj/WebBridge.m:
   21006         (-[WebBridge inNextKeyViewOutsideWebFrameViews]): Accessor for recursion guard.
   21007         (-[WebBridge nextKeyViewOutsideWebFrameViews]): Do not ask webView for its
   21008         next key view, but rather, ask it for the next key view of the last view in
   21009         its key view loop. This is what will get us to the next view outside of the
   21010         webView.
   21011         * WebView.subproj/WebHTMLView.m:
   21012         (-[WebHTMLView nextKeyView]): Ask AppKit, rather than khtml, for the next key
   21013         key view if -[WebBridge inNextKeyViewOutsideWebFrameViews] returns YES. Doing
   21014         so gives us the correct answer as calculated by AppKit, and makes HTML views
   21015         behave like other views. This check also heads off an infinite recursion 
   21016         through -[WebBridge nextKeyViewOutsideWebFrameViews].
   21017 
   21018         Also did some cleanup of some code that was marked for removal "some day".
   21019         That "some day" is today.
   21020         
   21021 2003-09-25  Darin Adler  <darin (a] apple.com>
   21022 
   21023         Reviewed by John.
   21024 
   21025         - fixed 3176853 -- can't attach files that have no extensions with Yahoo mail (bad Content-Type headers)
   21026 
   21027         * WebCoreSupport.subproj/WebBridge.m: (-[WebBridge MIMETypeForPath:]):
   21028         Return @"application/octet-stream" rather than nil or empty string when the type is not known.
   21029 
   21030 2003-09-24  Darin Adler  <darin (a] apple.com>
   21031 
   21032         Reviewed by Maciej.
   21033 
   21034         * WebView.subproj/WebHTMLView.m:
   21035         (-[WebHTMLView dragImage:at:offset:event:pasteboard:source:slideBack:]):
   21036         Added one more call to _stopAutoscrollTimer for when drags begin.
   21037 
   21038 2003-09-24  Richard Williamson   <rjw (a] apple.com>
   21039 
   21040         Fixed 3420736.  Clear renderer caches when get an ATS font changed notification.  This fix may be moot depending on progress toward fixing 2695906.  Also 3428451 needs to should be resolved.
   21041 
   21042         Also added code to get and log entry point for the function used to get a Java class from plugins.  That class is used for LiveConnect support.
   21043 
   21044         Reviewed by John.
   21045 
   21046         * Misc.subproj/WebKitLogging.h:
   21047         * Misc.subproj/WebKitLogging.m:
   21048         * Plugins.subproj/WebNetscapePluginPackage.h:
   21049         * Plugins.subproj/WebNetscapePluginPackage.m:
   21050         (-[WebNetscapePluginPackage load]):
   21051         * Plugins.subproj/npapi.h:
   21052         * WebCoreSupport.subproj/WebTextRenderer.m:
   21053         (FillStyleWithAttributes):
   21054         * WebCoreSupport.subproj/WebTextRendererFactory.m:
   21055         (-[WebTextRendererFactory clearCaches]):
   21056         (fontsChanged):
   21057         (+[WebTextRendererFactory createSharedFactory]):
   21058         (-[WebTextRendererFactory fontWithFamily:traits:size:]):
   21059         (-[WebTextRendererFactory cachedFontFromFamily:traits:size:]):
   21060 
   21061 2003-09-23  Darin Adler  <darin (a] apple.com>
   21062 
   21063         Reviewed by John and Richard.
   21064 
   21065         - fixed 3127833 -- autoscroll only works when mouse is moving
   21066 
   21067         * WebView.subproj/WebHTMLView.m:
   21068         (-[WebHTMLView viewDidMoveToWindow]): Stop the auto-scroll timer. This covers
   21069         the case where a view is removed from the view hierarchy while the mouse is down.
   21070         (-[WebHTMLView mouseDown:]): Start the auto-scroll timer.
   21071         (-[WebHTMLView mouseUp:]): Stop the auto-scroll timer.
   21072         * WebView.subproj/WebHTMLViewPrivate.h: Add an auto-scroll timer, and methods
   21073         to start and stop it.
   21074         * WebView.subproj/WebHTMLViewPrivate.m:
   21075         (-[WebHTMLView _startAutoscrollTimer]): Create and schedule a timer. It uses the
   21076         same 1/10 second interval that NSTextView uses for its scrolling timer.
   21077         (-[WebHTMLView _stopAutoscrollTimer]): Invalidate and release the timer.
   21078         (-[WebHTMLView _autoscroll]): Check for a mouse up event in the queue; if one is
   21079         there, then no autoscrlling. But if not, then create a fake mouse dragged event
   21080         and dispatch it; that will lead to autoscrolling.
   21081 
   21082 2003-09-22  Darin Adler  <darin (a] apple.com>
   21083 
   21084         Reviewed by Dave.
   21085 
   21086         - worked around 3429631 -- window stops getting mouse moved events after first tooltip appears
   21087 
   21088         * WebView.subproj/WebHTMLViewPrivate.m: (-[NSToolTipPanel setAcceptsMouseMovedEvents:]):
   21089         Do nothing, preventing the real setAcceptsMouseMovedEvents: (in class NSWindow) from being called.
   21090 
   21091 2003-09-22  Darin Adler  <darin (a] apple.com>
   21092 
   21093         Reviewed by Dave.
   21094 
   21095         - fixed 3431033 -- crash in -[NSToolTipManager _shouldInstallToolTip:]
   21096 
   21097         * WebView.subproj/WebHTMLViewPrivate.m:
   21098         (-[WebHTMLView _addTrackingRect:owner:userData:assumeInside:useTrackingNum:]):
   21099         Override this alternate version of addTrackingRect. If I don't do this, we might
   21100         create a real tracking rect, which we would then never remove.
   21101         (-[WebHTMLView removeTrackingRect:]): Added assertions.
   21102 
   21103 2003-09-22  Darin Adler  <darin (a] apple.com>
   21104 
   21105         * WebKit.pbproj/project.pbxproj: Rename Mixed build style to OptimizedWithSymbols.
   21106 
   21107 2003-09-21  Darin Adler  <darin (a] apple.com>
   21108 
   21109         * WebView.subproj/WebHTMLViewPrivate.m: (-[WebHTMLView removeTrackingRect:]): Remove bogus assert.
   21110 
   21111 2003-09-21  Darin Adler  <darin (a] apple.com>
   21112 
   21113         Reviewed by Dave.
   21114 
   21115         - fixed 3106411 -- show title attribute for page elements in tooltip on mouseover (important for PeopleSoft)
   21116 
   21117         * WebView.subproj/WebHTMLViewPrivate.h: Added fields needed for tool tip implementation.
   21118         * WebView.subproj/WebHTMLViewPrivate.m:
   21119         (-[WebHTMLViewPrivate dealloc]): Release the tool tip string.
   21120         (-[WebHTMLView addTrackingRect:owner:userData:assumeInside:]): Override the default NSView
   21121         tracking rectangle implementation so we can trick the tool tip manager into trusting us about
   21122         when you leave and enter the rectangle for each element.
   21123         (-[WebHTMLView removeTrackingRect:]): The other half of the above stuff.
   21124         (-[WebHTMLView _sendToolTipMouseExited]): Added. Makes an event just good enough to fool the tool tip
   21125         manager, and send it on.
   21126         (-[WebHTMLView _sendToolTipMouseEntered]): Ditto.
   21127         (-[WebHTMLView _setToolTip:]): Added. Manages the new and old tool tips in a way that fools the tool
   21128         tip manager into working even though we don't know the rectangles of the tool tips beforehand. The
   21129         advantage of using AppKit tool tips is that they have all sorts of nice little features, like wrapping
   21130         to a nice rectangular shape and fading out when you move away.
   21131         (-[WebHTMLView view:stringForToolTip:point:userData:]): This is how the tool tip manager gets the actual
   21132         tool tip text.
   21133         (-[WebHTMLView _updateMouseoverWithEvent:]): Call _setToolTip method, using the value passed along with the
   21134         WebCoreElementTitleKey in the dictionary.
   21135 
   21136         - unrelated code cleanup
   21137 
   21138         * WebView.subproj/WebFramePrivate.h: Don't define WebCorePageCacheStateKey here; instead use
   21139         a definition exported from WebCore.
   21140         * WebView.subproj/WebFramePrivate.m: Ditto.
   21141         * English.lproj/StringsNotToBeLocalized.txt: Update for above changes.
   21142 
   21143 2003-09-19  Maciej Stachowiak  <mjs (a] apple.com>
   21144 
   21145         Reviewed by Darin.
   21146 
   21147         Roll out old fix for 3410980.
   21148 
   21149         * WebCoreSupport.subproj/WebBridge.m:
   21150         (-[WebBridge goBackOrForward:]):
   21151 
   21152 2003-09-19  Darin Adler  <darin (a] apple.com>
   21153 
   21154         Reviewed by Dave.
   21155 
   21156         - do the prep work for the mini controls feature; Dave will finish this
   21157 
   21158         * WebCoreSupport.subproj/WebFileButton.m:
   21159         (-[WebFileButton isFlipped]): Make this flipped, easier to understand coordinates that way.
   21160         (-[WebFileButton drawRect:]): Update for flipped-ness.
   21161         (-[WebFileButton visualFrame]): Update for flipped-ness.
   21162         (-[WebFileButton setVisualFrame:]): Update for flipped-ness.
   21163         (-[WebFileButton baseline]): Update for flipped-ness.
   21164 
   21165 2003-09-19  Maciej Stachowiak  <mjs (a] apple.com>
   21166 
   21167         Reviewed by Darin.
   21168 
   21169         - fixed 3410980 - FileMaker: going forward with an empty forward list makes a frame come out blank sometimes
   21170 
   21171         * WebCoreSupport.subproj/WebBridge.m:
   21172         (-[WebBridge backOrForwardItemWithDistance:]): Factored out from goBackOrForward.
   21173         (-[WebBridge canGoBackOrForward:]): Use the new method.
   21174         (-[WebBridge goBackOrForward:]): Likewise.
   21175 
   21176 2003-09-17  John Sullivan  <sullivan (a] apple.com>
   21177 
   21178         - WebKit part of fix for 3157018 -- Would like option to
   21179         not print backgrounds
   21180         Reviewed by Darin
   21181 
   21182         * WebView.subproj/WebPreferences.h:
   21183         new accessor methods for new shouldPrintBackgrounds preference
   21184         * WebView.subproj/WebPreferences.m:
   21185         (+[WebPreferences initialize]):
   21186         set initial value for WebKitShouldPrintBackgroundsPreferenceKey
   21187         to NO
   21188         (-[WebPreferences shouldPrintBackgrounds]):
   21189         new method, read NSUserDefaults value
   21190         (-[WebPreferences setShouldPrintBackgrounds:]):
   21191         new method, write NSUserDefault value
   21192 
   21193         * WebView.subproj/WebViewPrivate.m:
   21194         (-[WebView _updateWebCoreSettingsFromPreferences:]):
   21195         tell WebCore about value of shouldPrintBackgrounds
   21196 
   21197         * English.lproj/StringsNotToBeLocalized.txt:
   21198         Updated for these and other recent changes
   21199 
   21200 2003-09-17  Darin Adler  <darin (a] apple.com>
   21201 
   21202         Reviewed by Maciej.
   21203 
   21204         * Plugins.subproj/WebBasePluginPackage.m:
   21205         (-[WebBasePluginPackage pathByResolvingSymlinksAndAliasesInPath:]): Pass the
   21206         "no UI" flag, so we don't prompt the user when we're trying to load plug-ins.
   21207         Also use OSStatus rather than OSErr so we don't miss error codes that just
   21208         happen to have zeroes in the low 16 bits.
   21209 
   21210 2003-09-17  Darin Adler  <darin (a] apple.com>
   21211 
   21212         Reviewed by John.
   21213 
   21214         * WebCoreSupport.subproj/WebFileButton.m: (-[WebFileButton setFilename:]):
   21215         Don't call -[NSWorkspace iconForFile:] on a path that does not start with a '/'.
   21216         This can happen if JavaScript or the web page sets the path explicitly, and
   21217         adding this check avoids an unpleasant warning on the console.
   21218 
   21219 === WebKit-106 ===
   21220 
   21221 2003-09-16  Richard Williamson   <rjw (a] apple.com>
   21222 
   21223         Backed out fix to 3412062 to resolve 3424197.
   21224 
   21225         Many sites use a technique of posting forms the same URL to generate content server side.  The fix to 3412062 broke those sites.
   21226 
   21227         Reviewed by Darin.
   21228 
   21229         * WebView.subproj/WebFramePrivate.m:
   21230         (-[WebFrame _transitionToCommitted:]):
   21231 
   21232 === WebKit-105 ===
   21233 
   21234 === WebKit-104 ===
   21235 
   21236 2003-09-12  Richard Williamson   <rjw (a] apple.com>
   21237 
   21238         Fixed 3420097.  If redirects are cancelled during a pending load don't reset the quickRedirect flag.
   21239 
   21240         Reviewed by Darin.
   21241 
   21242         * WebCoreSupport.subproj/WebBridge.m:
   21243         (-[WebBridge reportClientRedirectCancelled:]):
   21244         * WebView.subproj/WebFramePrivate.h:
   21245         * WebView.subproj/WebFramePrivate.m:
   21246         (-[WebFrame _continueFragmentScrollAfterNavigationPolicy:formState:]):
   21247         (-[WebFrame _loadURL:referrer:loadType:target:triggeringEvent:form:formValues:]):
   21248         (-[WebFrame _clientRedirectedTo:delay:fireDate:lockHistory:isJavaScriptFormAction:]):
   21249         (-[WebFrame _clientRedirectCancelled:]):
   21250 
   21251 === WebKit-103 ===
   21252 
   21253 2003-09-12  Richard Williamson   <rjw (a] apple.com>
   21254 
   21255         Fixed 3412062.  Don't allow pages with the same URL as the current URL to enter b/f or history.
   21256 
   21257         Reviewed by Maciej.
   21258 
   21259         * WebView.subproj/WebFramePrivate.m:
   21260         (-[WebFrame _transitionToCommitted:]):
   21261 
   21262 2003-09-11  Maciej Stachowiak  <mjs (a] apple.com>
   21263 
   21264         Reviewed by Darin.
   21265 
   21266         - fixed 3413463 - QuickTime plug-in content doesn't load in Safari (NPP_Write not called)
   21267         * Plugins.subproj/npapi.h: Fix erroneous function pointer
   21268         declarations that led to an int16/int32 mismatch.
   21269 
   21270 2003-09-12  Chris Blumenberg  <cblu (a] apple.com>
   21271 
   21272         Fixed: <rdar://problem/3420112>: Reproducible Safari crash in in -[WebBaseNetscapePluginView sendEvent:]
   21273 
   21274         Reviewed by darin.
   21275 
   21276         * Plugins.subproj/WebBaseNetscapePluginView.m:
   21277         (-[WebBaseNetscapePluginView sendEvent:]): temporarily retain self in case the plug-in view is released while sending an event. 
   21278         (-[WebBaseNetscapePluginView evaluateJavaScriptPluginRequest:targetFrame:]): don't deliver the return value of the JS evaluation if stringByEvaluatingJavaScriptFromString caused the plug-in to stop.
   21279 
   21280 === WebKit-102 ===
   21281 
   21282 2003-09-11  Maciej Stachowiak  <mjs (a] apple.com>
   21283 
   21284         Reviewed by Ken.
   21285 
   21286         - fixed 3417486 - after logging off from secure Etrade website, going back returns you to secure page
   21287 
   21288         * WebView.subproj/WebFramePrivate.m:
   21289         (-[WebFrame _loadItem:withLoadType:]): Don't request stale data
   21290         for https pages, as this could be a security risk.
   21291 
   21292 2003-09-11  Richard Williamson   <rjw (a] apple.com>
   21293 
   21294         Fixed 3406671.  Added a private method for Mail to get selection
   21295         rect.
   21296 
   21297         Reviewed by Darin Adler.
   21298 
   21299         * WebView.subproj/WebHTMLView.m:
   21300         (-[WebHTMLView updateTextBackgroundColor]):
   21301         * WebView.subproj/WebHTMLViewPrivate.h:
   21302         * WebView.subproj/WebHTMLViewPrivate.m:
   21303         (-[WebHTMLView _handleMouseDragged:]):
   21304         (-[WebHTMLView _pluginController]):
   21305         (-[WebHTMLView _selectionRect]):
   21306 
   21307 2003-09-10  Richard Williamson   <rjw (a] apple.com>
   21308 
   21309         Fixed 3231031.  Use the normal methodology for displaying each frame of a GIF.  That is,
   21310         just call setNeedsDisplayInRect, rather than drawing directly.  Drawing directly violates
   21311         layering/clipping.
   21312 
   21313         Reviewed by Dave Hyatt.
   21314 
   21315         * WebCoreSupport.subproj/WebImageRenderer.m:
   21316         (-[WebImageRenderer nextFrame:]):
   21317 
   21318 === Safari-100 ===
   21319 
   21320 2003-09-09  Richard Williamson   <rjw (a] apple.com>
   21321 
   21322         Fixed 3414988.  Don't store absolute path to home directory.
   21323         Reviewed by Chris Blumenberg.
   21324 
   21325         Fixed 3414319.  Send correct WebView back as parameter to webViewShow:
   21326         Review by Darin.
   21327 
   21328         Fixed 3095029.  Draw a frame's border in WebFrameView, instead of WebHTMLView, and correctly inset the frame's scrollview to account for the border.  Mostly written by Darin.
   21329         Reviewed by Darin (and Richard).
   21330 
   21331         * Misc.subproj/WebIconDatabase.m:
   21332         (-[WebIconDatabase _createFileDatabase]):
   21333         Store @"~/Library/Icon" instead of absolute path, and always try to tilde expand stored path.
   21334 
   21335         * WebCoreSupport.subproj/WebBridge.m:
   21336         (-[WebBridge setHasBorder:]):
   21337         * WebView.subproj/WebFrameView.m:
   21338         (-[WebFrameView drawRect:]):
   21339         (-[WebFrameView setFrameSize:]):
   21340         * WebView.subproj/WebFrameViewPrivate.h:
   21341         * WebView.subproj/WebFrameViewPrivate.m:
   21342         (-[WebFrameView _isMainFrame]):
   21343         (-[WebFrameView _tile]):
   21344         (-[WebFrameView _drawBorder]):
   21345         (-[WebFrameView _shouldDrawBorder]):
   21346         (-[WebFrameView _setHasBorder:]):
   21347         * WebView.subproj/WebHTMLView.m:
   21348         (-[WebHTMLView drawRect:]):
   21349         Changes to correct draw border in WebFrameView instead of WebHTMLView.
   21350 
   21351         * WebView.subproj/WebViewPrivate.m:
   21352         (-[WebView _openNewWindowWithRequest:]):
   21353         Send correct parameter (returned from webView:createWebViewWithRequest:), rather than self, to webViewShow:.
   21354 
   21355 2003-09-09  Chris Blumenberg  <cblu (a] apple.com>
   21356 
   21357         Fixed: <rdar://problem/3412380>: REGRESSION (85-98): www.minoltan.com is decoded incorrectly on Japanese system
   21358 
   21359         The default encoding that Safari uses is latin1 regardless of the current system encoding. This is how it's always been. The problem is that the UI is displaying shift JIS for the default text encoding instead of latin1. This is happening because WebKit 
   21360 
   21361 
   21362 is using "latin1" instead of "ISO-8859-1" for the default text encoding name. "ISO-8859-1" is the IANA character set name for latin1 and this is what the  WebKitDefaultTextEncodingNamePreferenceKey preference expects. This ends up confusing Safari, so Saf
   21363 
   21364 
   21365 ari just ends up displaying the first item in the pop-up menu which is shift JIS.
   21366 
   21367         Reviewed by rjw.
   21368 
   21369         * WebView.subproj/WebPreferences.m:
   21370         (+[WebPreferences initialize]): The WebKitDefaultTextEncodingNamePreferenceKey should be "ISO-8859-1" not "latin1" since "ISO-8859-1" is the IANA character set name for latin1.
   21371 
   21372 === Safari-99 ===
   21373 
   21374 2003-09-08  Darin Adler  <darin (a] apple.com>
   21375 
   21376         Reviewed by Chris.
   21377 
   21378         - fixed 3412726 -- some HTML messages in Mail lose a line at page breaks when printed (multipart/alternative)
   21379 
   21380         * WebView.subproj/WebHTMLView.m: (-[WebHTMLView adjustPageHeightNew:top:bottom:limit:]):
   21381         Go into printing mode when asked to adjust page height, if not already in it.
   21382         We already have code in drawRect that does this when actually printing, but it's
   21383         also important to lay out the same way when deciding where to break pages, otherwise
   21384         the difference between printer and screen fonts can lead to page breaks that split a line
   21385         of text across two pages, and that can lead to missing lines of text as well.
   21386 
   21387 2003-09-07  Darin Adler  <darin (a] apple.com>
   21388 
   21389         Reviewed by Maciej.
   21390 
   21391         - fixed 3410939 -- disabling Geneva and Helvetica (by removing them, or by using Font Book) makes Safari crash
   21392 
   21393         * WebCoreSupport.subproj/WebTextRendererFactory.m: (-[WebTextRendererFactory fallbackFontWithTraits:size:]):
   21394         Fall back on Lucida Grande (plain, not bothering with traits) if Helvetica is not present.
   21395 
   21396         * English.lproj/StringsNotToBeLocalized.txt: Update for this and other recent changes.
   21397 
   21398 2003-09-07  Darin Adler  <darin (a] apple.com>
   21399 
   21400         Reviewed by Ken.
   21401 
   21402         - fixed 3406660 -- screen fonts are not being used for substitute fonts (Japanese text, Roman font)
   21403 
   21404         * WebCoreSupport.subproj/WebTextRenderer.m:
   21405         (-[WebTextRenderer substituteFontForString:families:]): Get a printer or screen font,
   21406         based on the renderer's mode. The old code didn't do anything explicit.
   21407         (-[WebTextRenderer _setupFont]): Remove ignored parameter for clarity.
   21408         (-[WebTextRenderer initWithFont:usingPrinterFont:]): Fixed code paths that would not
   21409         explicitly get a printer or screen font, and code paths that would get data from the
   21410         original "before mapping to printer or screen font" NSFont object.
   21411 
   21412 === Safari-98 ===
   21413 
   21414 2003-09-05  Ken Kocienda  <kocienda (a] apple.com>
   21415 
   21416         Reviewed by Darin
   21417 
   21418         Incorporate releaseGState fix that Darin developed for 
   21419         textareas and list boxes in WebCore. It turns out that 
   21420         we this workaround in WebClipView as well to get proper 
   21421         drawing of subframes.
   21422 
   21423         In addition, removed some tests that which performed 
   21424         runtime checks for code in AppKit. AppKit will have
   21425         the checked-for code in all versions that will be used
   21426         with the version of WebKit.
   21427 
   21428         * WebView.subproj/WebClipView.m:
   21429         (-[WebClipView initWithFrame:])
   21430         (-[WebClipView resetAdditionalClip])
   21431         (-[WebClipView setAdditionalClip:])
   21432 
   21433 2003-09-04  John Sullivan  <sullivan (a] apple.com>
   21434 
   21435         - fixed 3409011 -- the graphics views palette does not open
   21436 
   21437         Reviewed by Maciej
   21438 
   21439         * WebView.subproj/WebPreferences.m:
   21440         (+[WebPreferences _removeReferenceForIdentifier:]):
   21441         special-case nil, which is a magic initial identifier already
   21442         special-cased in the other mutator
   21443 
   21444 2003-09-05  Maciej Stachowiak  <mjs (a] apple.com>
   21445 
   21446         Reviewed by Darin.
   21447 
   21448         - fixed 3406140 - REGRESSION (7B52-7B55): time spent in NSFont makes Safari 50% slower in Five Apps test
   21449         * WebCoreSupport.subproj/WebTextRendererFactory.m:
   21450         (-[WebTextRendererFactory fontWithFamily:traits:size:]): Make font
   21451         using the font name we found, not the one we were looking
   21452         for. Since the compare is case-insensitive, it makes a
   21453         difference. Also, don't make the font twice.
   21454 
   21455 2003-09-04  Chris Blumenberg  <cblu (a] apple.com>
   21456 
   21457         Fixed: <rdar://problem/3316704>: Shockwave: getnetText steam is not functioning correctly
   21458 
   21459         Reviewed by mjs.
   21460 
   21461         * Plugins.subproj/WebBaseNetscapePluginStream.m:
   21462         (-[WebBaseNetscapePluginStream startStreamWithURL:expectedContentLength:lastModifiedDate:MIMEType:]): if the content length is unknown, use 0 instead of -1
   21463 
   21464 2003-09-04  Chris Blumenberg  <cblu (a] apple.com>
   21465 
   21466         Fixed: <rdar://problem/3286922>: Shockwave: Using HTTP to stream .mp3 or .swa files fails at ~50%
   21467 
   21468         Reviewed by mjs.
   21469 
   21470         * Plugins.subproj/WebBaseNetscapePluginStream.h: new deliveryData and reason ivars
   21471         * Plugins.subproj/WebBaseNetscapePluginStream.m:
   21472         (-[WebBaseNetscapePluginStream dealloc]): release deliveryData ivar
   21473         (-[WebBaseNetscapePluginStream startStreamWithURL:expectedContentLength:lastModifiedDate:MIMEType:]): set new reason ivar
   21474         (-[WebBaseNetscapePluginStream destroyStream]): new, calls NPP_StreamAsFile, NPP_DestroyStream and NPP_URLNotify
   21475         (-[WebBaseNetscapePluginStream destroyStreamWithReason:]): set the reason, call destroyStream
   21476         (-[WebBaseNetscapePluginStream receivedError:]): set deliveryData length to 0 so no more data is streamed, call destroyStreamWithReason
   21477         (-[WebBaseNetscapePluginStream finishedLoadingWithData:]): don't call NPP_StreamAsFile because this has to be called right before NPP_DestroyStream in destroyStream
   21478         (-[WebBaseNetscapePluginStream deliverData]): new, call NPP_WriteReady and NPP_Write and properly obey their returned values
   21479         (-[WebBaseNetscapePluginStream receivedData:]): call deliverData
   21480         * Plugins.subproj/WebNetscapePluginStream.m:
   21481         (-[WebNetscapePluginStream stop]): call receivedError here
   21482         (-[WebNetscapePluginConnectionDelegate connection:didFailWithError:]): don't call receivedError here because after the load is complete, stream is set to nil and receivedError can be called after the completed load
   21483 
   21484 2003-09-04  Chris Blumenberg  <cblu (a] apple.com>
   21485 
   21486         * Plugins.subproj/WebBaseNetscapePluginView.m:
   21487         (-[WebBaseNetscapePluginView postURL:target:len:buf:file:]): Fixed typo in newly added comment.
   21488 
   21489 2003-09-04  Chris Blumenberg  <cblu (a] apple.com>
   21490 
   21491         Fixed: <rdar://problem/3407328>: request headers at the start of the file passed to NPN_PostURL don't work for Acrobat plug-in?
   21492 
   21493         Reviewed by john.
   21494 
   21495         * Plugins.subproj/WebBaseNetscapePluginView.m:
   21496         (-[WebBaseNetscapePluginView postURL:target:len:buf:file:]): As documented, allow headers to be specified via NPP_PostURL when using a file.
   21497 
   21498 === Safari-97 ===
   21499 
   21500 2003-09-03  John Sullivan  <sullivan (a] apple.com>
   21501 
   21502         - fixed 3406411 -- infoseek.co.jp: many console errors about 
   21503         attempting to set non-screen font (HiraMinPro-W3)
   21504 
   21505         Reviewed by Ken
   21506 
   21507         * WebCoreSupport.subproj/WebTextRenderer.m:
   21508         (_drawGlyphs):
   21509         use ERROR instead of NSLog for the printing-font-used-on-screen
   21510         case, so it doesn't flood the world's console logs. We need to
   21511         investigate why this is happening also, but that can probably
   21512         be post-Panther.
   21513 
   21514 2003-09-01  John Sullivan  <sullivan (a] apple.com>
   21515 
   21516         - WebKit part of fix for 3402489 -- REGRESSION (7B48-7B55): Some         printed web pages are too small (width is half a page)
   21517 
   21518         This was a regression caused by the fix for 3378810.
   21519 
   21520         Reviewed by Maciej
   21521 
   21522         * WebView.subproj/WebHTMLView.m:
   21523         (-[WebHTMLView layoutToPageWidth:adjustingViewSize:]):
   21524         now takes adjustViewSize flag, and passes it down to
   21525         one of bridge's forceLayout calls.
   21526         (-[WebHTMLView layout]):
   21527         pass NO for adjustViewSize flag in this case
   21528         (-[WebHTMLView _setPrinting:pageWidth:adjustViewSize:]):
   21529         pass adjustViewSize flag down to layoutToPageWidth instead
   21530         of using it directly here; this is the wrong level to use
   21531         it directly since the bridge is no longer set up for
   21532         printing after the layoutToPageWidth call completes.
   21533 
   21534 2003-08-30  Maciej Stachowiak  <mjs (a] apple.com>
   21535 
   21536         Reviewed by John.
   21537 
   21538         - fixed 3401709 - [WebView searchFor:] with wrap:NO hangs if the search fails
   21539         * WebView.subproj/WebView.m:
   21540         (-[WebView searchFor:direction:caseSensitive:wrap:]): Fix for
   21541         wrap:NO case as suggested by Darin.
   21542 
   21543 === Safari-96 ===
   21544 
   21545 2003-08-29  Richard Williamson   <rjw (a] apple.com>
   21546 
   21547         Fixed 3401334.  Use IB document key when checking for reference removal on instances of WebPreferences.
   21548 
   21549         Also removed _userDefaultsKeysForIB, no longer needed by IB.
   21550 
   21551         Reviewed by John.
   21552 
   21553         * WebView.subproj/WebPreferences.m:
   21554         (+[WebPreferences _removeReferenceForIdentifier:]):
   21555         (-[WebPreferences _postPreferencesChangesNotification]):
   21556         * WebView.subproj/WebPreferencesPrivate.h:
   21557 
   21558 2003-08-29  Richard Williamson   <rjw (a] apple.com>
   21559 
   21560         Fixed 3400807.  Don't release state associated with the current b/f item.  We shouldn't normally have page cache state associated with the current item (3401376).  This fix guarantees that we won't prematurely release the page cache state for the current
   21561 
   21562 
   21563  item.
   21564 
   21565         Reviewed byJohn Sullivan.
   21566 
   21567         * History.subproj/WebBackForwardList.m:
   21568         (-[WebBackForwardList _clearPageCache]):
   21569 
   21570 2003-08-28  Richard Williamson   <rjw (a] apple.com>
   21571 
   21572         Fixed 3399736.  Fixed several problems with WebView/WebPreferences
   21573         interaction.
   21574 
   21575         Reviewed by Eric Seymour.
   21576 
   21577         * Misc.subproj/WebKitLogging.h:
   21578         * Misc.subproj/WebKitLogging.m:
   21579         Added debug logging.
   21580 
   21581         * WebCoreSupport.subproj/WebTextRenderer.m:
   21582         (_drawGlyphs): Checkin for 3398229 below.
   21583 
   21584         * WebView.subproj/WebPreferences.m:
   21585         (-[WebPreferences initWithIdentifier:]):
   21586         (-[WebPreferences initWithCoder:]):
   21587         (-[WebPreferences encodeWithCoder:]):
   21588         (+[WebPreferences standardPreferences]):
   21589         (+[WebPreferences _getInstanceForIdentifier:]):
   21590         (+[WebPreferences _setInstance:forIdentifier:]):
   21591         (+[WebPreferences _concatenateKeyWithIBCreatorID:]):
   21592         * WebView.subproj/WebView.m:
   21593         (-[WebView _commonInitializationWithFrameName:groupName:]):
   21594         (-[WebView initWithCoder:]):
   21595         (-[WebView encodeWithCoder:]):
   21596 
   21597 2003-08-27  Richard Williamson   <rjw (a] apple.com>
   21598 
   21599         Fixed 3398229.  When we request a font from NSFont by name we should use a case specific name.  We do case insensitve comparsion, but once a match is found we should use the actual font name, not the requested name.  Two layout tests are still failing, b
   21600 
   21601 
   21602 ut I don't think the failures are font related.
   21603 
   21604         Reviewed by Hyatt.
   21605 
   21606         * WebCoreSupport.subproj/WebTextRendererFactory.m:
   21607         (-[WebTextRendererFactory fontWithFamily:traits:size:]):
   21608 
   21609 === Safari-95 ===
   21610 
   21611 2003-08-27  Richard Williamson   <rjw (a] apple.com>
   21612 
   21613         Fixed 3397235.  WebView wasn't archiving useBackForwardList.
   21614 
   21615         Reviewed by Eric Seymour.
   21616 
   21617         * WebView.subproj/WebView.m:
   21618         (-[WebView initWithCoder:]):
   21619         (-[WebView encodeWithCoder:]):
   21620 
   21621 2003-08-26  Richard Williamson   <rjw (a] apple.com>
   21622 
   21623         Fixed 3385478.  Look for an exact match for font names (using PS names)        before matching on family names.
   21624 
   21625         Also added logging to help debug now resolved binding problem.
   21626 
   21627         Reviewed by Maciej.
   21628 
   21629         * Misc.subproj/WebKitLogging.h:
   21630         * Misc.subproj/WebKitLogging.m:
   21631         * WebCoreSupport.subproj/WebTextRendererFactory.m:
   21632         (-[WebTextRendererFactory fontWithFamily:traits:size:]):
   21633         * WebView.subproj/WebView.m:
   21634         (-[WebView addObserver:forKeyPath:options:context:]):
   21635         (-[WebView removeObserver:forKeyPath:]):
   21636 
   21637 2003-08-26  Darin Adler  <darin (a] apple.com>
   21638 
   21639         Reviewed by Maciej.
   21640 
   21641         - fixed 3310943 -- REGRESSION (Panther): textareas in forms sometimes draw blank (bugreporter)
   21642 
   21643         There are two fixes here. The more elegant and slightly faster one that requires a new AppKit,
   21644         and the less elegant one that works without AppKit support. By including both we don't have to
   21645         worry about timing of submission of WebKit vs. AppKit but we get the good, elegant fix. Later,
   21646         we can delete the less elegant fix.
   21647 
   21648         * WebView.subproj/WebClipView.m:
   21649         (+[WebClipView initialize]): Set up a boolean global so we only hav to do the "does AppKit support
   21650         _focusRingVisibleRect" check one time.
   21651         (-[WebClipView resetAdditionalClip]): Only do the renewGState thing if we don't have the
   21652         _focusRingVisibleRect method, but if we do the renewGState thing, do it to self and all descendants
   21653         using _web_renewGStateDeep.
   21654         (-[WebClipView setAdditionalClip:]): Ditto.
   21655         (-[WebClipView visibleRect]): Only limit this based on the additional clip if we don't have the
   21656         _focusRingVisibleRect method.
   21657         (-[WebClipView _focusRingVisibleRect]): Override the new method. Harmless if it's an old AppKit
   21658         that doesn't have the method yet.
   21659         (-[NSView _web_renewGStateDeep]): Implemented this helper method. We can get rid of it once we
   21660         are entirely on the new AppKit.
   21661 
   21662 2003-08-26  Darin Adler  <darin (a] apple.com>
   21663 
   21664         Reviewed by Maciej.
   21665 
   21666         - fixed 3321247 -- window size box disappears from Help window (caused by WebKit NSView hackery)
   21667 
   21668         * WebView.subproj/WebHTMLViewPrivate.m:
   21669         (-[WebHTMLView _recursiveDisplayRectIfNeededIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:topView:]),
   21670         (-[WebHTMLView _recursiveDisplayAllDirtyWithLockFocus:visRect:]):
   21671         Don't propagate dirty rects at all. This was causing problems because now the AppKit uses
   21672         dirty regions, not dirty rects. In AppKit-722 and newer, _setDrawsDescendants: takes care of this
   21673         for us so we don't have to do anything at all.
   21674 
   21675 2003-08-26  Darin Adler  <darin (a] apple.com>
   21676 
   21677         Reviewed by John.
   21678 
   21679         - fixed 3392650 -- REGRESSION?: assertion fails trying Apple-hosted page load test while not on Apple network
   21680 
   21681         * WebView.subproj/WebFramePrivate.m: (-[WebFrame _isLoadComplete]):
   21682         Stop loading the provisional data source before blowing it away, in case
   21683         there are some callbacks that haven't occurred yet. It's a waste of time to
   21684         try to handle those additional callbacks, and can lead to failed assertions
   21685         since the data source won't be hooked up to any frame any more.
   21686 
   21687 2003-08-25  Richard Williamson   <rjw (a] apple.com>
   21688 
   21689         Fix for 3391609.  Our rounding hack wasn't correctly reflected in the selection point
   21690         code.  Piggy-backed on this fix are fixes for selection of letter-spacing, word-spacing
   21691         and justified text.
   21692 
   21693         Reviewed by Hyatt.
   21694 
   21695         * WebCoreSupport.subproj/WebTextRenderer.m:
   21696         (initializeCharacterWidthIterator):
   21697         (widthAndGlyphForSurrogate):
   21698         (widthForNextCharacter):
   21699         (-[WebTextRenderer _CG_floatWidthForRun:style:widths:fonts:glyphs:startGlyph:endGlyph:numGlyphs:]):
   21700 
   21701 2003-08-25  John Sullivan  <sullivan (a] apple.com>
   21702 
   21703         - fixed 3391264 -- REGRESSION (Panther): Back/Forward buttons not
   21704          updating immediately after page load
   21705 
   21706         The buttons are updated in response to window update notifications.
   21707         Jaguar was sending so many extra bogus notifications that it
   21708         masked the fact that we weren't ensuring that these notifications
   21709         were sent at all in the case of non-event-based interesting
   21710         changes that might affect menu items/toolbar items/etc.
   21711 
   21712         Reviewed by Richard
   21713 
   21714         * WebView.subproj/WebViewPrivate.m:
   21715         (-[WebView _didStartProvisionalLoadForFrame:]):
   21716         call -[NSApp setWindowsNeedUpdate:YES] so window update notices
   21717         will be sent
   21718         (-[WebView _didCommitLoadForFrame:]):
   21719         ditto
   21720         (-[WebView _didFinishLoadForFrame:]):
   21721         ditto
   21722         (-[WebView _didFailLoadWithError:forFrame:]):
   21723         ditto
   21724         (-[WebView _didFailProvisionalLoadWithError:forFrame:]):
   21725         ditto
   21726 
   21727 2003-08-24  Darin Adler  <darin (a] apple.com>
   21728 
   21729         Reviewed by John.
   21730 
   21731         - fixed 3382179 -- REGRESSION: many images scroll down while loading (e.g., homepage.mac.com slide show)
   21732 
   21733         * WebCoreSupport.subproj/WebImageRenderer.m:
   21734         (-[WebImageRenderer drawClippedToValidInRect:fromRect:]): While loading, always draw one less line than
   21735         the number NSImage says we have, since that last line is a partial line and draws unwanted white. This
   21736         is not what the bug report complains about, but is a longstanding and very minor issue. Remove the code
   21737         that adjust the Y origin. This is what the bug report is about. That adjustment is incorrect and was
   21738         unknowingly compensating for some kind of NSImage bug that is now fixed.
   21739         (-[WebImageRenderer tileInRect:fromPoint:]): Added an assertion that the WebImageRenderer is flipped.
   21740         The code does assume that it's flipped.
   21741 
   21742 2003-08-22  John Sullivan  <sullivan (a] apple.com>
   21743         - fixed 3385837 -- REGRESSION: can't paste link from Safari into 
   21744         Keynote (paste at top level, not into text)
   21745 
   21746         Reviewed by Darin
   21747 
   21748         The problem was that we were using a single list of pasteboard
   21749         types for both "types we can read" and "types we can write", but
   21750         NSFilenamesPBoardType wasn't being written to, creating a bad
   21751         pasteboard. The fix is to split this list in two. We could do
   21752         this a little more elegantly if we weren't paranoid about 
   21753         last-minute SPI changes breaking compatibility with Sherlock or
   21754         some other internal client.
   21755 
   21756         * Misc.subproj/WebNSPasteboardExtras.h:
   21757         add new _web_writableDragTypesForURL, commented various methods
   21758         better.
   21759 
   21760         * Misc.subproj/WebNSPasteboardExtras.m:
   21761         (+[NSPasteboard _web_writableDragTypesForURL]):
   21762         implement _web_writableDragTypesForURL; it's just like
   21763         _web_dragTypesForURL but without the NSFilenamesPBoardType
   21764         (-[NSPasteboard _web_writeURL:andTitle:withOwner:]):
   21765         use _web_writableDragTypesForURL
   21766 
   21767         * Misc.subproj/WebNSViewExtras.m:
   21768         (-[NSView _web_dragPromisedImage:rect:URL:title:event:]):
   21769         use _web_writableDragTypesForURL
   21770 
   21771 2003-08-22  Darin Adler  <darin (a] apple.com>
   21772 
   21773         Reviewed by Dave.
   21774 
   21775         - fixed 3386051 -- REGRESSION: text "too dark" after the page is deactivated and reactivated (bugweb)
   21776 
   21777         Cached clips were causing us to draw nothing for the top frames of framesets, resulting in darkened
   21778         text because we draw anti-aliased text twice without drawing a background.
   21779 
   21780         * WebView.subproj/WebClipView.m:
   21781         (-[WebClipView resetAdditionalClip]): Invalidate cached graphics state when changing the visible rect.
   21782         (-[WebClipView setAdditionalClip:]): Ditto.
   21783 
   21784 2003-08-21  Darin Adler  <darin (a] apple.com>
   21785 
   21786         * WebView.subproj/WebHTMLView.m: (-[WebHTMLView _setPrinting:pageWidth:adjustViewSize:]):
   21787         Tweak to printing fix: Be sure to call adjustViewSize after applying styles and doing layout.
   21788 
   21789 2003-08-21  Richard Williamson   <rjw (a] apple.com>
   21790 
   21791         Fixed 3378810.  Avoid resizing frame from drawRect: when printing.  This will corrupt the graphics context.
   21792 
   21793         Reviewed by Hyatt.
   21794 
   21795         * WebView.subproj/WebHTMLView.m:
   21796         (-[WebHTMLView layoutToPageWidth:]):
   21797         (-[WebHTMLView drawRect:]):
   21798         (-[WebHTMLView _setPrinting:pageWidth:adjustViewSize:]):
   21799         (-[WebHTMLView beginDocument]):
   21800         (-[WebHTMLView endDocument]):
   21801 
   21802 === Safari-94 ===
   21803 
   21804 2003-08-21  John Sullivan  <sullivan (a] apple.com>
   21805 
   21806         - fixed 3387950 -- REGRESSION (85-89): Standalone image in Safari prints much 
   21807         smaller than in Jaguar
   21808 
   21809         Reviewed by Chris.
   21810 
   21811         * WebView.subproj/WebImageView.m:
   21812         (-[WebImageView adjustFrameSize]):
   21813         renamed from setFrameSizeUsingImage; now sets the frame size to exactly
   21814         the image size (as it did in Jaguar always) when we're not drawing to
   21815         the screen.
   21816         (-[WebImageView setFrameSize:]):
   21817         updated for name change
   21818         (-[WebImageView layout]):
   21819         ditto
   21820         (-[WebImageView beginDocument]):
   21821         adjust frame size (before printing)
   21822         (-[WebImageView endDocument]):
   21823         adjust frame size (after printing)
   21824 
   21825 2003-08-19  Richard Williamson   <rjw (a] apple.com>
   21826 
   21827         Fixed 3383623 (and 3384896).  Remove our unbeknownst work-around for an NSImage bug that incorrectly flipped y coordinate when drawing a partial rect within the image.  This has been fixed in Panther, making our work-around no longer necessary.
   21828 
   21829         Reviewed by Darin.
   21830 
   21831         * WebCoreSupport.subproj/WebImageRenderer.m:
   21832         (-[WebImageRenderer tileInRect:fromPoint:]):
   21833         * WebKit.pbproj/project.pbxproj:
   21834 
   21835 2003-08-18  Richard Williamson  <rjw (a] apple.com>
   21836 
   21837         Fixed 3140065.  Bidi neutrals in RTL runs are now handled correctly.  Still have
   21838         problem with bidi neutrals at directional boundaries 3382926.
   21839 
   21840         Reviewed by Maciej.
   21841 
   21842         * Misc.subproj/WebUnicode.h:
   21843         * Misc.subproj/WebUnicode.m:
   21844         (shapedString):
   21845         * WebCoreSupport.subproj/WebTextRenderer.m:
   21846         (-[WebTextRenderer _CG_floatWidthForRun:style:widths:fonts:glyphs:startGlyph:endGlyph:numGlyphs:]):
   21847 
   21848 2003-08-18  Darin Adler  <darin (a] apple.com>
   21849 
   21850         Reviewed by Maciej.
   21851 
   21852         - fixed 3299893 -- oncontextmenu support
   21853 
   21854         * WebView.subproj/WebHTMLView.m:
   21855         (-[WebHTMLView menuForEvent:]): Call sendContextMenuEvent: on the bridge, and
   21856         don't show a menu if the event is handled over in WebCore.
   21857         (-[WebHTMLView mouseDown:]): Don't send a mouse down event in the case where we
   21858         already sent a context menu event and decided not to put up a real context menu.
   21859 
   21860 2003-08-18  Richard Williamson  <rjw (a] apple.com>
   21861 
   21862         Fix build problem from last checkin.
   21863 
   21864         Reviewed by Darin.
   21865 
   21866         * WebCoreSupport.subproj/WebImageRenderer.m:
   21867         (-[WebImageRenderer initWithData:MIMEType:]):
   21868         (-[WebImageRenderer initWithContentsOfFile:]):
   21869 
   21870 2003-08-17  Darin Adler  <darin (a] apple.com>
   21871 
   21872         Reviewed by Maciej.
   21873 
   21874         - fixed 3376522 -- REGRESSION: uncaught exception from bad .ico causes crash (login window at 34sp.com)
   21875 
   21876         I added exception handling in all the places we load images with NSImage.
   21877 
   21878         * Misc.subproj/WebIconDatabase.m:
   21879         (-[WebIconDatabase _iconsForIconURLString:]): Add exception handler.
   21880         * Misc.subproj/WebIconLoader.m:
   21881         (-[WebIconLoader connectionDidFinishLoading:]): Add exception handler.
   21882         * WebCoreSupport.subproj/WebImageRenderer.m:
   21883         (-[WebImageRenderer initWithData:MIMEType:]): Add exception handler.
   21884         (-[WebImageRenderer initWithContentsOfFile:]): Add exception handler.
   21885         (-[WebImageRenderer incrementalLoadWithBytes:length:complete:]): Add exception handler.
   21886 
   21887 2003-08-15  Richard Williamson  <rjw (a] apple.com>
   21888 
   21889         Fixed 3378530.  Ensure that line is always drawn within bounds
   21890         of element.
   21891 
   21892         Reviewed by Chris.
   21893 
   21894         * WebCoreSupport.subproj/WebTextRenderer.m:
   21895         (-[WebTextRenderer drawLineForCharacters:yOffset:withWidth:withColor:]):
   21896 
   21897 2003-08-15  Richard Williamson  <rjw (a] apple.com>
   21898 
   21899         Fixed 3379439.  Remove checks for CG symbols.  No longer needed.
   21900 
   21901         Reviewed by Darin.
   21902 
   21903         * WebCoreSupport.subproj/WebTextRendererFactory.m:
   21904         (+[WebTextRendererFactory createSharedFactory]):
   21905 
   21906 === Safari-93 ===
   21907 
   21908 2003-08-14  Vicki Murley  <vicki (a] apple.com>
   21909 
   21910         Reviewed by John. 
   21911 
   21912         * WebKit.pbproj/project.pbxproj: deleted WebKit.order from the project.
   21913 
   21914 2003-08-14  Vicki Murley  <vicki (a] apple.com>
   21915 
   21916         Reviewed by John. 
   21917 
   21918         * WebKit.order: Removed. We now point to the WebKit order file in /AppleInternal/OrderFiles.
   21919         * WebKit.pbproj/project.pbxproj: set sectorder flag to point to /AppleInternal/OrderFiles/WebKit.order
   21920 
   21921 2003-08-14  Darin Adler  <darin (a] apple.com>
   21922 
   21923         Reviewed by Chris.
   21924 
   21925         - fixed 3344259 -- flipped image when copying from Safari in 1000s of colors mode
   21926 
   21927         The workaround is to turn off the NSImage cache. Andrew says this won't have any
   21928         practical repercussions other than making the bug go away.
   21929         
   21930         Seems to have a side effect of speeding up the cvs-base page load test!
   21931 
   21932         * WebCoreSupport.subproj/WebImageRenderer.m:
   21933         (-[WebImageRenderer initWithMIMEType:]): Set mode to NSImageCacheNever.
   21934         (-[WebImageRenderer initWithData:MIMEType:]): Ditto.
   21935         (-[WebImageRenderer initWithContentsOfFile:]): Ditto.
   21936         (-[WebImageRenderer _adjustSizeToPixelDimensions]): Don't set mode to NSImageCacheDefault.
   21937 
   21938 2003-08-14  Ken Kocienda  <kocienda (a] apple.com>
   21939 
   21940         Reviewed by Darin
   21941 
   21942         Fix for this bug:
   21943 
   21944         <rdar://problem/3375042>: Change usages of NSURL absoluteString in WebKit 
   21945         to use improved variants
   21946 
   21947         * History.subproj/WebHistoryItem.m:
   21948         (-[WebHistoryItem initWithURL:title:]): Use data-as-string.
   21949         (-[WebHistoryItem initWithURL:target:parent:title:]): Use data-as-string.
   21950         (-[WebHistoryItem setURL:]): Use data-as-string.
   21951         * History.subproj/WebHistoryPrivate.m:
   21952         (-[WebHistoryPrivate addItem:]): Remove FIX_VISITED ifdef
   21953         (-[WebHistoryPrivate removeItem:]): Ditto
   21954         (-[WebHistoryPrivate containsURL:]): Ditto. Use data-as-string.
   21955         (-[WebHistoryPrivate itemForURL:]): Ditto. Ditto.
   21956         (-[WebHistoryPrivate loadFromURL:error:]): Fix log message to URL.
   21957         (-[WebHistoryPrivate _saveHistoryGuts:URL:error:]): Ditto.
   21958         (-[WebHistoryPrivate saveToURL:error:]): Ditto.
   21959         * History.subproj/WebURLsWithTitles.m:
   21960         (+[WebURLsWithTitles writeURLs:andTitles:toPasteboard:]): Use visible-string.
   21961         * Misc.subproj/WebIconLoader.m:
   21962         (-[WebIconLoader connectionDidFinishLoading:]): Use data-as-string.
   21963         * Misc.subproj/WebKitErrors.m:
   21964         (+[NSError _webKitErrorWithDomain:code:URL:]): Added new convenience that takes
   21965         a URL instead of a URL string.
   21966         (-[NSError _initWithPluginErrorCode:contentURL:pluginPageURL:pluginName:MIMEType:]):
   21967         Added new convenience that takes URLs instead of a URL stringis.
   21968         * Misc.subproj/WebKitErrorsPrivate.h: Declared new conveniences.
   21969         * Misc.subproj/WebNSPasteboardExtras.m:
   21970         (-[NSPasteboard _web_writeURL:andTitle:withOwner:types:]): Use visible-string.
   21971         * Misc.subproj/WebNSURLExtras.h:
   21972         * Misc.subproj/WebNSURLExtras.m:
   21973         (-[NSURL _web_originalDataAsString]): Added.
   21974         (-[NSURL _webkit_isJavaScriptURL]): Use data-as-string.
   21975         (-[NSURL _webkit_scriptIfJavaScriptURL]): Ditto
   21976         (-[NSURL _webkit_isFTPDirectoryURL]): Ditto
   21977         (-[NSURL _webkit_shouldLoadAsEmptyDocument]): Ditto. Also use _web_isEmpty.
   21978         * Plugins.subproj/WebBaseNetscapePluginView.m:
   21979         (-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:]): Use data-as-string.
   21980         * Plugins.subproj/WebNetscapePluginDocumentView.m:
   21981         (-[WebNetscapePluginDocumentView setDataSource:]): Use new error convenience.
   21982         * Plugins.subproj/WebNetscapePluginStream.m:
   21983         (-[WebNetscapePluginConnectionDelegate connection:didReceiveResponse:]): Ditto.
   21984         * WebCoreSupport.subproj/WebBridge.m:
   21985         (-[WebBridge requestedURLString]): Use data-as-string.
   21986         * WebCoreSupport.subproj/WebSubresourceClient.m:
   21987         (+[WebSubresourceClient startLoadingResource:withURL:referrer:forDataSource:]): Use new error convenience.
   21988         * WebView.subproj/WebBaseResourceHandleDelegate.m:
   21989         (-[WebBaseResourceHandleDelegate cancelledError]): Ditto.
   21990         * WebView.subproj/WebDataProtocol.m:
   21991         (-[WebDataProtocol startLoading]): Ditto.
   21992         * WebView.subproj/WebDataSourcePrivate.m:
   21993         (-[WebDataSource _stopLoadingInternal]): Ditto.
   21994         (-[WebDataSource _updateIconDatabaseWithURL:]): Use data-as-string.
   21995         (-[WebDataSource _loadIcon]): Ditto.
   21996         * WebView.subproj/WebFramePrivate.m:
   21997         (-[WebFrame _createItem:]): Use data-as-string.
   21998         (-[WebFrame _transitionToCommitted:]): Fix log message to use URL.
   21999         (-[WebFrame _purgePageCache]): Use _web_isEmpty
   22000         (-[WebFrame _setState:]): Fix log message to use URL.
   22001         (-[WebFrame _handleUnimplementablePolicyWithErrorCode:forURL:]): Use new error convenience.
   22002         (-[WebFrame _loadItem:withLoadType:]): Fix log message to use URL.
   22003         (-[WebFrame _checkNavigationPolicyForRequest:dataSource:formState:andCall:withSelector:]):
   22004         (-[WebFrame _continueLoadRequestAfterNavigationPolicy:formState:]): Fix log messages to use URL.
   22005         (-[WebFrame _shouldTreatURLAsSameAsCurrent:]): Use data-as-string.
   22006         * WebView.subproj/WebHTMLViewPrivate.m:
   22007         (-[WebHTMLView _dragImageForLinkElement:]): Use visible-string.
   22008         * WebView.subproj/WebMainResourceClient.m:
   22009         (-[WebMainResourceClient interruptForPolicyChangeError]): Use new error convenience.
   22010         * WebView.subproj/WebPreferences.m:
   22011         (-[WebPreferences setUserStyleSheetLocation:]): Use data-as-string.
   22012         * WebView.subproj/WebView.m:
   22013         (-[WebView mainFrameURL]): Use data-as-string.
   22014         (-[WebView mainFrameIcon]): Use data-as-string.
   22015         * WebView.subproj/WebViewPrivate.m:
   22016         (-[WebView _updateWebCoreSettingsFromPreferences:]): Use data-as-string.
   22017 
   22018 2003-08-12  Maciej Stachowiak  <mjs (a] apple.com>
   22019 
   22020         Reviewed by Ken.
   22021 
   22022         - fixed 3365242 - non-repro abort in HTMLTokenizer at ajc.com
   22023         * WebView.subproj/WebDataSourcePrivate.m:
   22024         (-[WebDataSource _receivedData:]): ref the data source around
   22025         processing the data and afterwards, to avoid crashing if a script
   22026         in this chunk of data made the frame go away.
   22027 
   22028 2003-08-13  Richard Williamson   <rjw (a] apple.com>
   22029 
   22030         Fixed 3376077.  Override automaticallyNotifiesObserversForKey: to
   22031         prevent unnecessary additional notifications from being sent.  Also
   22032         added development-only logging (bulk of the change).
   22033 
   22034         Reviewed by Chris.
   22035 
   22036         * Misc.subproj/WebKitLogging.h:
   22037         * Misc.subproj/WebKitLogging.m:
   22038         * WebView.subproj/WebDataSourcePrivate.m:
   22039         (-[WebDataSource _setTitle:]):
   22040         (-[WebDataSource _updateIconDatabaseWithURL:]):
   22041         * WebView.subproj/WebViewPrivate.h:
   22042         * WebView.subproj/WebViewPrivate.m:
   22043         (-[WebView _didChangeValueForKey:]):
   22044         (-[WebView _willChangeValueForKey:]):
   22045         (-[WebView _progressStarted]):
   22046         (-[WebView _progressCompleted]):
   22047         (-[WebView _incrementProgressForConnection:data:]):
   22048         (+[WebView automaticallyNotifiesObserversForKey:]):
   22049         (-[WebView _willChangeBackForwardKeys]):
   22050         (-[WebView _didChangeBackForwardKeys]):
   22051         (-[WebView _didStartProvisionalLoadForFrame:]):
   22052         (-[WebView _didCommitLoadForFrame:]):
   22053         (-[WebView _didFinishLoadForFrame:]):
   22054         (-[WebView _didFailLoadWithError:forFrame:]):
   22055         (-[WebView _didFailProvisionalLoadWithError:forFrame:]):
   22056 
   22057 2003-08-13  Chris Blumenberg  <cblu (a] apple.com>
   22058 
   22059         Fixed: <rdar://problem/3347134>: After first successful POST in Flash, Safari does not repeat POST and gives cached reply
   22060 
   22061         Reviewed by kocienda.
   22062 
   22063         * Plugins.subproj/WebBaseNetscapePluginView.m:
   22064         (-[WebBaseNetscapePluginView _postURLNotify:target:len:buf:file:notifyData:allowHeaders:]): call [request setCachePolicy:NSURLRequestReloadIgnoringCacheData]
   22065 
   22066 2003-08-13  Ken Kocienda  <kocienda (a] apple.com>
   22067 
   22068         Reviewed by Darin
   22069 
   22070         Fix for this bug:
   22071 
   22072         <rdar://problem/3366441>: URL strings with UTF-8 characters 
   22073         processed improperly for display by WebKit
   22074 
   22075         * Misc.subproj/WebNSURLExtras.h:
   22076         * Misc.subproj/WebNSURLExtras.m:
   22077         (isHexDigit): Added
   22078         (hexDigitValue): Added
   22079         (-[NSURL _web_userVisibleString]): Added. Produces a string that
   22080         is suitable for display to a user in the UI.
   22081         (-[NSURL _web_isEmpty]): Convenience to check for an empty URL
   22082         * WebCoreSupport.subproj/WebBridge.m:
   22083         (-[WebBridge requestedURLString]): Now calls _web_userVisibleString
   22084 
   22085 2003-08-13  Ken Kocienda  <kocienda (a] apple.com>
   22086 
   22087         Reviewed by Darin
   22088 
   22089         Fix for this bug:
   22090 
   22091         <rdar://problem/3374458>: Choose UTF-8 for encoding when calling 
   22092         CFURLCreateAbsoluteURLWithBytes in WebKit
   22093 
   22094         Calling CFURLCreateAbsoluteURLWithBytes with ISO Latin 1 string
   22095         encoding results in some issues when trying to decode a URL path in
   22096         preparation for doing file I/O. Instead of doing a redecoding step
   22097         whenever a path is needed to perform I/O, use UTF-8 as the encoding
   22098         right from the start. This will mean that illegal UTF-8 sequences will
   22099         be rejected by CFURLCreateAbsoluteURLWithBytes. However, we can work
   22100         around this by falling back on ISO Latin1 in this case. The end result
   22101         is that existing code throughout the URL loading system can remain
   22102         unchanged and simply call the path method on NSURL as it does now and
   22103         get the right result for its I/O requirements.
   22104 
   22105         * Misc.subproj/WebNSURLExtras.m:
   22106         (+[NSURL _web_URLWithData:relativeToURL:])
   22107 
   22108 2003-08-13  Ken Kocienda  <kocienda (a] apple.com>
   22109 
   22110         Reviewed by Darin
   22111 
   22112         Fix for this bug:
   22113 
   22114         <rdar://problem/3374487>: URLs with UTF-8 escape sequences can't be accessed         
   22115         when typed in the Safari location bar
   22116 
   22117         * Misc.subproj/WebNSPasteboardExtras.m:
   22118         (-[NSPasteboard _web_bestURL]): Call _web_URLWithUserTypedString: to make a
   22119         URL from this type of string.
   22120         * Misc.subproj/WebNSURLExtras.h:
   22121         * Misc.subproj/WebNSURLExtras.m:
   22122         (hexDigit): Added.
   22123         (+[NSURL _web_URLWithUserTypedString:]): Added. Creates a URL from a string
   22124         that is typed in a user, for example, in the Safari location bar.
   22125 
   22126 2003-08-12  John Sullivan  <sullivan (a] apple.com>
   22127 
   22128         - fixed 3369505 -- leaks of NSCFTimer after running through the 
   22129         cvs-base test suite
   22130 
   22131         Reviewed by Richard
   22132 
   22133         * WebView.subproj/WebFrame.m:
   22134         (-[WebFrame stopLoading]):
   22135         release timer before nil'ing it out
   22136 
   22137 2003-08-12  Ed Voas  <voas (a] apple.com>
   22138 
   22139         Reviewed by Richard.
   22140 
   22141                 Make sure to override the standard behavior for ordering windows to do nothing for Carbon stuff.
   22142 
   22143         * Carbon.subproj/CarbonWindowAdapter.m:
   22144         (-[CarbonWindowAdapter _reallyDoOrderWindow:relativeTo:findKey:forCounter:force:isModal:]):
   22145 
   22146 2003-08-11  Chris Blumenberg  <cblu (a] apple.com>
   22147 
   22148         Fixed: <rdar://problem/3163589>: Macromedia Flash 6 cannot take Asian text entry in Safari
   22149 
   22150         Revidewed by darin.
   22151 
   22152         * Plugins.subproj/WebBaseNetscapePluginView.m:
   22153         (-[WebBaseNetscapePluginView installKeyEventHandler]): new
   22154         (-[WebBaseNetscapePluginView removeKeyEventHandler]): new
   22155         (-[WebBaseNetscapePluginView becomeFirstResponder]): call installKeyEventHandler
   22156         (-[WebBaseNetscapePluginView resignFirstResponder]): call removeKeyEventHandler
   22157         (-[WebBaseNetscapePluginView keyUp:]): call TSMProcessRawKeyEvent so key events go through the machinery and UI that plug-ins expect
   22158         (-[WebBaseNetscapePluginView keyDown:]): call TSMProcessRawKeyEvent so key events go through the machinery and UI that plug-ins expect
   22159         (TSMEventHandler): turn the TSM event into a series of EventRecords and pass them to the plug-in
   22160         (-[WebBaseNetscapePluginView stop]): call removeKeyEventHandler because resignFirstResponder may not get called
   22161 
   22162 2003-08-08  Richard Williamson  <rjw (a] apple.com>
   22163         Lots of healthy cleanup.  Introduced width and shaping iterators
   22164         to simplify code and remove allocations for large text runs.  Should
   22165         go further and make more use of these in the future (post panther).
   22166 
   22167         Fixed 3369608.  Crash in -[WebTextRenderer _CG_drawRun:style:atPoint:] at lovepucca.net
   22168         Fixed 3118050.  Crash selecting text at http://www.faqs.org/rfcs/rfc2849.html (SELECTION)
   22169         Fixed 3371115.  Can't correctly select text that contains surrogate pairs
   22170 
   22171         Reviewed by darin.
   22172 
   22173         * Misc.subproj/WebUnicode.h:
   22174         * Misc.subproj/WebUnicode.m:
   22175         (prevChar):
   22176         (nextChar):
   22177         (prevLogicalCharJoins):
   22178         (nextLogicalCharJoins):
   22179         (glyphVariantLogical):
   22180         (hasShapeForNextCharacter):
   22181         (shapeForNextCharacter):
   22182         (initializeCharacterShapeIterator):
   22183         (shapedString):
   22184         * WebCoreSupport.subproj/WebTextRenderer.h:
   22185         * WebCoreSupport.subproj/WebTextRenderer.m:
   22186         (initializeCharacterWidthIterator):
   22187         (widthAndGlyphForSurrogate):
   22188         (widthForNextCharacter):
   22189         (-[WebTextRenderer _CG_floatWidthForRun:style:widths:fonts:glyphs:startGlyph:endGlyph:numGlyphs:]):
   22190         (-[WebTextRenderer _CG_pointToOffset:style:position:reversed:]):
   22191 
   22192         Just formatting changed here
   22193         * WebView.subproj/WebHTMLViewPrivate.m:
   22194         (-[WebHTMLView _dragImageForLinkElement:]):
   22195 
   22196 2003-08-08  Darin Adler  <darin (a] apple.com>
   22197 
   22198         Reviewed by Maciej.
   22199 
   22200         - fixed 3368236 -- NSURL exception going back at http://derstandard.at/
   22201 
   22202         * WebView.subproj/WebFramePrivate.m: (-[WebFrame _createItem:]): Put "about:blank" in
   22203         the back/forward item if there is no URL (which happens because there is no data source
   22204         because the frame has never successfully loaded anything). Perhaps we can do better
   22205         some day, but this avoids all the major bad effects in a safe way.
   22206 
   22207         * English.lproj/StringsNotToBeLocalized.txt: Update for recent changes.
   22208 
   22209 === Safari-92 ===
   22210 
   22211 2003-08-07  Richard Williamson   <rjw (a] apple.com>
   22212 
   22213         Fixed 3362939.  Checked flippyness of view and adjust y coord accordingly.
   22214 
   22215         Reviewed by John.
   22216 
   22217         * Misc.subproj/WebKitNSStringExtras.m:
   22218 
   22219 2003-08-07  Chris Blumenberg  <cblu (a] apple.com>
   22220 
   22221         Fixed: <rdar://problem/3330742>: 1.0 Safari fails to send NPP_URLNotify with the error of NPRES_NETWORK_ERR to Flash
   22222 
   22223         Reviewed by darin.
   22224 
   22225         * Plugins.subproj/WebBaseNetscapePluginStream.m:
   22226         (-[WebBaseNetscapePluginStream destroyStreamWithReason:]): call NPP_URLNotify so we cover both the failure and successful cases
   22227         (-[WebBaseNetscapePluginStream finishedLoadingWithData:]): have destroyStreamWithReason call NPP_URLNotify
   22228 
   22229 2003-08-07  Ken Kocienda  <kocienda (a] apple.com>
   22230 
   22231         Reviewed by Darin
   22232         Fix for this bug:
   22233 
   22234         <rdar://problem/3368552>: Fix inappropriate use of NSURL creation methods in WebKit
   22235 
   22236         Change calls to URLWithString: or URLWithString:relativeToURL to
   22237         _web_URLWithDataAsString: and _web_URLWithDataAsString:relativeToURL,
   22238         respectively.
   22239 
   22240         * WebView.subproj/WebFramePrivate.m:
   22241         (-[WebFrame _loadItem:withLoadType:]):
   22242         (-[WebFrame _loadURL:intoChild:]):
   22243         * WebView.subproj/WebPreferences.m:
   22244         (-[WebPreferences userStyleSheetLocation]):
   22245         * WebView.subproj/WebView.m:
   22246         (-[WebView takeStringURLFrom:]):
   22247         (-[WebView setMainFrameURL:]):
   22248 
   22249 2003-08-06  Darin Adler  <darin (a] apple.com>
   22250 
   22251         Reviewed by Richard.
   22252 
   22253         - fixed 3347114 -- remove vestiges of posing, including init routine, from WebKit
   22254 
   22255         * WebView.subproj/WebHTMLViewPrivate.m: Removed WebNSTextView, WebNSView, and WebNSWindow,
   22256         removed the code to have them pose as NSTextView, NSView, and NSWindow, and removed excess
   22257         imports that are no longer needed.
   22258 
   22259 2003-08-06  Richard Williamson   <rjw (a] apple.com>
   22260 
   22261         Fixed 3365378.  Edge case text run > 1024 hit by JS generated string.  We weren't correctly checking size of string length.  Used /2 instead of *2.
   22262 
   22263         Reviewed by Vicki (and Dan!).
   22264 
   22265         * WebCoreSupport.subproj/WebTextRenderer.m:
   22266         (-[WebTextRenderer _CG_drawHighlightForRun:style:atPoint:]):
   22267         (-[WebTextRenderer _CG_drawRun:style:atPoint:]):
   22268 
   22269 2003-08-06  Richard Williamson   <rjw (a] apple.com>
   22270 
   22271         Fixed 3348630.  Pick up about 1% by moving implementation of _unicodeDirection to WebCore and inlining.
   22272 
   22273         Reviewed by Ken.
   22274 
   22275         * Misc.subproj/WebUnicode.h:
   22276         * Misc.subproj/WebUnicode.m:
   22277         (_unicodeDirection):
   22278         (_unicodeJoining):
   22279         (_unicodeMirrored):
   22280         (WebKitInitializeUnicode):
   22281         * Misc.subproj/WebUnicodeTables.m:
   22282 
   22283 2003-08-06  Chris Blumenberg  <cblu (a] apple.com>
   22284 
   22285         Fixed: <rdar://problem/3161102>: Avoid retain cycles by destroying plug-ins in the page cache before dealloc
   22286 
   22287         Reviewed by rjw.
   22288 
   22289         * History.subproj/WebHistoryItemPrivate.h: added declaration for [WebBackForwardList _clearPageCache]
   22290         * WebView.subproj/WebViewPrivate.m:
   22291         (-[WebView _close]): clear the page cache when we are closing the web view so we call destroy on all the plug-ins on the page cache to break any retain cycles.
   22292 
   22293 2003-08-04  Chris Blumenberg  <cblu (a] apple.com>
   22294 
   22295         Fixed: <rdar://problem/3106525>: Results of JavaScript requests are not returned to plug-ins
   22296 
   22297         Reviewed by darin.
   22298 
   22299         * Plugins.subproj/WebBaseNetscapePluginStream.h:
   22300         * Plugins.subproj/WebBaseNetscapePluginStream.m:
   22301         (-[WebBaseNetscapePluginStream setNotifyData:]): new
   22302         (-[WebBaseNetscapePluginStream startStreamWithURL:expectedContentLength:lastModifiedDate:MIMEType:]): renamed from setResponse
   22303         (-[WebBaseNetscapePluginStream startStreamWithResponse:]): new
   22304         (-[WebBaseNetscapePluginStream receivedData:]): tweak
   22305         (-[WebBaseNetscapePluginStream destroyStreamWithReason:]): tweak
   22306         (-[WebBaseNetscapePluginStream finishedLoadingWithData:]): tweak
   22307         * Plugins.subproj/WebBaseNetscapePluginView.m:
   22308         (-[WebBaseNetscapePluginView evaluateJavaScriptPluginRequest:targetFrame:]): new
   22309         (-[WebBaseNetscapePluginView loadPluginRequest:]): call evaluateJavaScriptPluginRequest::
   22310         (-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:]): call loadPluginRequest for JS requests
   22311         * Plugins.subproj/WebNetscapePluginRepresentation.m:
   22312         (-[WebNetscapePluginRepresentation receivedData:withDataSource:]): call renamed startStreamWithResponse
   22313         * Plugins.subproj/WebNetscapePluginStream.m:
   22314         (-[WebNetscapePluginStream initWithRequest:pluginPointer:notifyData:]): call setNotifyData
   22315         (-[WebNetscapePluginConnectionDelegate connection:didReceiveResponse:]): call renamed startStreamWithResponse
   22316 
   22317 2003-08-05  Ken Kocienda  <kocienda (a] apple.com>
   22318 
   22319         Reviewed by Richard
   22320 
   22321         Plugins in WebKit need to store URLs in the form of "C-style" strings. 
   22322         Create and use a new, improved method to make these strings, and do 
   22323         not traverse through the NSURL absoluteString method, since that can i
   22324         introduce errors.
   22325 
   22326         * Misc.subproj/WebNSURLExtras.h: Added _web_URLCString method.
   22327         * Misc.subproj/WebNSURLExtras.m:
   22328         (-[NSURL _web_URLCString]): Added.
   22329         * Plugins.subproj/WebBaseNetscapePluginStream.m:
   22330         (-[WebBaseNetscapePluginStream setResponse:]): Call new _web_URLCString method.
   22331         (-[WebBaseNetscapePluginStream finishedLoadingWithData:]): Ditto.
   22332         * Plugins.subproj/WebBaseNetscapePluginView.m:
   22333         (-[WebBaseNetscapePluginView frameStateChanged:]): Ditto.
   22334         (-[WebBaseNetscapePluginView loadPluginRequest:]): Ditto.
   22335 
   22336 2003-08-05  Ken Kocienda  <kocienda (a] apple.com>
   22337 
   22338         Reviewed by John
   22339 
   22340         Fix for this bug:
   22341 
   22342         <rdar://problem/3365035>: Modify WebNSURLExtras to call improved NSURL creation API
   22343 
   22344         * Misc.subproj/WebNSURLExtras.m:
   22345         (+[NSURL _web_URLWithDataAsString:]): Call through to _web_URLWithDataAsString:relativeToURL:.
   22346         (+[NSURL _web_URLWithDataAsString:relativeToURL:]): Call through to _web_URLWithData:relativeToURL:.
   22347         (+[NSURL _web_URLWithData:]): Ditto.
   22348         (+[NSURL _web_URLWithData:relativeToURL:]): Call CFURLCreateAbsoluteURLWithBytes API in
   22349         CoreFoundation.
   22350         (-[NSURL _web_originalData]): Use CFURLGetBytes API in CoreFoundation. Also make sure
   22351         that a relative URL is resolved against its base.
   22352         (-[NSURL _web_displayableString]): Call _web_originalData to get bytes to use
   22353         to create the string.
   22354         (-[NSURL _web_URLStringLength]): Use CFURLGetBytes API in CoreFoundation.
   22355 
   22356 2003-08-04  Richard Williamson  <rjw (a] apple.com>
   22357 
   22358         Fixed 3363011.  Pass b/f related key down events to super if b/f is disabled.
   22359 
   22360         Reviewed by Chris.
   22361 
   22362         * WebView.subproj/WebFrameView.m:
   22363         (-[WebFrameView keyDown:]):
   22364 
   22365 
   22366         Fixed 3363345.  Retain static array used by IB to present WebView's bindable keys.
   22367 
   22368         Review by Maciej
   22369 
   22370         * WebView.subproj/WebViewPrivate.m:
   22371         (-[WebView _declaredKeys]):
   22372 
   22373 2003-08-04  Ken Kocienda  <kocienda (a] apple.com>
   22374 
   22375         Reviewed by Darin
   22376 
   22377         Fix for this bug:
   22378 
   22379         <rdar://problem/3363318>: REGRESSION: Plug-in content doesn't show up, animate etc
   22380 
   22381         WebNetscapePluginConnectionDelegate must implement this method:
   22382 
   22383         - (void)connection:(NSURLConnection *)con didReceiveData:(NSData *)data lengthReceived:(long long)lengthReceived
   22384 
   22385         * Plugins.subproj/WebNetscapePluginStream.m:
   22386         (-[WebNetscapePluginConnectionDelegate connection:didReceiveData:lengthReceived:])
   22387 
   22388 2003-08-04  Darin Adler  <darin (a] apple.com>
   22389 
   22390         Reviewed by Richard.
   22391 
   22392         - fixed 3298153 -- get "screen font while printing" error, bad stuff happens after that (Sherlock, Safari)
   22393 
   22394         * WebView.subproj/WebHTMLView.m: (-[WebHTMLView drawRect:]):
   22395         If we find ourselves in drawRect with the wrong printing mode, that usually
   22396         means we're being printed as part of some larger print process, so do the
   22397         layout in printing mode.
   22398 
   22399 2003-08-04  Chris Blumenberg  <cblu (a] apple.com>
   22400 
   22401         Fixed: <rdar://problem/3360977>: REGRESSION (7B28-7B29): main webview rejects drop of doc icon from BBEdit
   22402 
   22403         Reviewed by darin.
   22404 
   22405         * Misc.subproj/WebNSPasteboardExtras.m:
   22406         (+[NSPasteboard _web_dragTypesForURL]): we handle NSFilenamesPboardType
   22407         * WebKit.pbproj/project.pbxproj:
   22408 
   22409 2003-08-04  Richard Williamson   <rjw (a] apple.com>
   22410 
   22411         Fixed 3223989.  Pass key down events to super if scrolling is disabled.
   22412 
   22413         Reviewed by Chris (Welcome back!).
   22414 
   22415         * WebView.subproj/WebFrameView.m:
   22416         (-[WebFrameView keyDown:]):
   22417 
   22418 2003-08-01  Richard Williamson   <rjw (a] apple.com>
   22419 
   22420         Fixed 3095376.  Implemented correct selection behavior for rtl scripts.
   22421         We still use our Arabic and Hebrew layout scheme.
   22422 
   22423         Fixed 3360487.  Implemented selection of ATSU rendered code.
   22424 
   22425         Fixed 3360242.        Return nil from _bodyBackgroundColor when no 
   22426         background color specified.  This was requested by Doug D.
   22427 
   22428         Reviewed by Maciej.
   22429 
   22430         * WebCoreSupport.subproj/WebTextRenderer.m:
   22431         (-[WebTextRenderer drawHighlightForRun:style:atPoint:]):
   22432         (-[WebTextRenderer _CG_drawHighlightForRun:style:atPoint:]):
   22433         (-[WebTextRenderer drawRun:style:atPoint:]):
   22434         (-[WebTextRenderer _CG_drawRun:style:atPoint:]):
   22435         (-[WebTextRenderer _CG_floatWidthForRun:style:widths:fonts:glyphs:startGlyph:endGlyph:numGlyphs:]):
   22436         (-[WebTextRenderer _ATSU_drawHighlightForRun:style:atPoint:]):
   22437         (-[WebTextRenderer _ATSU_drawRun:style:atPoint:]):
   22438         (-[WebTextRenderer pointToOffset:style:position:reversed:]):
   22439         (-[WebTextRenderer _ATSU_pointToOffset:style:position:reversed:]):
   22440         (-[WebTextRenderer _CG_pointToOffset:style:position:reversed:]):
   22441 
   22442 2003-08-01  Maciej Stachowiak  <mjs (a] apple.com>
   22443 
   22444         Reviewed by Darin.
   22445 
   22446         - fixed 3339255 - REGRESSION (73-85): javascript failure at gia.apple.com
   22447 
   22448         * WebView.subproj/WebFramePrivate.m:
   22449         (-[WebFrame _setState:]): When going to provisional state, tell the bridge that
   22450         a provisional load started, so it can cancel any pending redirects.
   22451 
   22452 === Safari-91 ===
   22453 
   22454 2003-07-31  Richard Williamson   <rjw (a] apple.com>
   22455 
   22456         Make sure width is initialized for monospace optimizations.
   22457         Reviewed by Vicki.
   22458 
   22459         * WebCoreSupport.subproj/WebTextRenderer.m:
   22460         (-[WebTextRenderer checkSelectionPoint:style:position:reversed:]):
   22461 
   22462 2003-07-31  Richard Williamson   <rjw (a] apple.com>
   22463 
   22464         Fixed 3359152.  SPI to get the background color for a frame.
   22465 
   22466         Reviewed by hyatt.
   22467 
   22468         * WebCoreSupport.subproj/WebTextRenderer.m:
   22469         (-[WebTextRenderer checkSelectionPoint:style:position:reversed:]):
   22470         * WebView.subproj/WebFramePrivate.h:
   22471         * WebView.subproj/WebFramePrivate.m:
   22472         (-[WebFrame _bodyBackgroundColor]):
   22473 
   22474 2003-07-31  Richard Williamson   <rjw (a] apple.com>
   22475 
   22476         Fixed 3358870.  Fall back on 'user defaults' values when a value
   22477         in a custom instance of WebPreferences hasn't been overriden.
   22478 
   22479         Reviewed by Eric Seymour.
   22480 
   22481         * WebView.subproj/WebPreferences.m:
   22482         (-[WebPreferences _stringValueForKey:]):
   22483         (-[WebPreferences _integerValueForKey:]):
   22484         (-[WebPreferences _boolValueForKey:]):
   22485 
   22486 2003-07-30  Richard Williamson   <rjw (a] apple.com>
   22487 
   22488         Preparation for 3095376.
   22489 
   22490         Reviewed by Maciej.
   22491 
   22492         * Misc.subproj/WebKitNSStringExtras.m:
   22493         (-[NSString _web_widthWithFont:]):
   22494         * Misc.subproj/WebStringTruncator.m:
   22495         (stringWidth):
   22496         * WebCoreSupport.subproj/WebTextRenderer.m:
   22497         (shouldUseATSU):
   22498         (-[WebTextRenderer widthForCharacters:length:]):
   22499         (-[WebTextRenderer drawRun:style:atPoint:]):
   22500         (-[WebTextRenderer _CG_drawRun:style:atPoint:]):
   22501         (-[WebTextRenderer floatWidthForCharacters:stringLength:characterPosition:]):
   22502         (-[WebTextRenderer floatWidthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:]):
   22503         (-[WebTextRenderer floatWidthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:withPadding:widths:letterSpacing:wordSpacing:smallCaps:fontFamilies:]):
   22504         (-[WebTextRenderer floatWidthForRun:style:widths:]):
   22505         (-[WebTextRenderer _floatWidthForRun:style:widths:fonts:glyphs:startGlyph:endGlyph:numGlyphs:]):
   22506         (-[WebTextRenderer _CG_floatWidthForRun:style:widths:fonts:glyphs:startGlyph:endGlyph:numGlyphs:]):
   22507         (-[WebTextRenderer _createATSUTextLayoutForRun:]):
   22508         (-[WebTextRenderer _trapezoidForRun:style:atPoint:]):
   22509         (-[WebTextRenderer _ATSU_floatWidthForRun:style:]):
   22510         (-[WebTextRenderer _ATSU_drawRun:style:atPoint:]):
   22511         (-[WebTextRenderer checkSelectionPoint:style:position:reversed:]):
   22512 
   22513 2003-07-30  Richard Williamson   <rjw (a] apple.com>
   22514 
   22515         Fixed 3356518.  Added private method called by IB to ensure
   22516         that autoresizeSubviews flag is turned on correctly.
   22517 
   22518         Reviewed by mjs.
   22519 
   22520         * WebView.subproj/WebViewPrivate.m:
   22521         (-[WebView _finishedMakingConnections]):
   22522 
   22523 2003-07-28  Richard Williamson   <rjw (a] apple.com>
   22524 
   22525         Fixed 3323866.  Provide SPI to IB to enable scoping of preferences
   22526         values on a document-by-document basis.
   22527 
   22528         Reviewed by Maciej.
   22529 
   22530         * WebView.subproj/WebPreferences.m:
   22531         (-[WebPreferencesPrivate dealloc]):
   22532         (-[WebPreferences initWithIdentifier:]):
   22533         (-[WebPreferences initWithCoder:]):
   22534         (+[WebPreferences _userDefaultsKeysForIB]):
   22535         (+[WebPreferences _setIBCreatorID:]):
   22536         (+[WebPreferences _IBCreatorID]):
   22537         (-[WebPreferences _concatenateKeyWithIBCreatorID:]):
   22538         * WebView.subproj/WebPreferencesPrivate.h:
   22539 
   22540 2003-07-28  Darin Adler  <darin (a] apple.com>
   22541 
   22542         Reviewed by Maciej.
   22543 
   22544         - fixed 3344647 -- reachedTerminalState assertion in WebBaseResourceHandleDelegate.m
   22545 
   22546         * WebView.subproj/WebMainResourceClient.m: (-[WebMainResourceClient cancelWithError:]):
   22547         Use [super cancelWithError:] rather than [self receivedError:]. I checked carefully to
   22548         see that this code now does everything the old code did (and a bit more).
   22549 
   22550 2003-07-28  Richard Williamson   <rjw (a] apple.com>
   22551 
   22552         Fixed 3341859. 
   22553             Check that the WebHTMLView is initialized in viewWillMoveToWindow: and
   22554         viewDidMoveToWindow.  Don't do anything if we aren't initialized.  This
   22555         happens when decoding a WebView.  When WebViews are decoded their subviews
   22556             are created by initWithCoder: and so won't be normally initialized.  The 
   22557         stub views are discarded by WebView.
   22558 
   22559         Reviewed by John.
   22560 
   22561         * WebView.subproj/WebHTMLView.m:
   22562         (-[WebHTMLView viewWillMoveToWindow:]):
   22563         (-[WebHTMLView viewDidMoveToWindow]):
   22564 
   22565 2003-07-28  Darin Adler  <darin (a] apple.com>
   22566 
   22567         Reviewed by John.
   22568 
   22569         - fixed 3279864 -- remove class_poseAs calls from WebKit
   22570 
   22571         * WebView.subproj/WebHTMLView.m: (-[WebHTMLView initWithFrame:]):
   22572         Call _setDrawsOwnDescendants, if we have a new enough AppKit.
   22573         * WebView.subproj/WebHTMLViewPrivate.m: (+[WebHTMLView load]):
   22574         Don't pose as NSView, if we have a new enough AppKit.
   22575 
   22576 2003-07-28  Ken Kocienda  <kocienda (a] apple.com>
   22577 
   22578         Reviewed by John
   22579 
   22580         Fix for this bug:
   22581 
   22582         <rdar://problem/3336933>: REGRESSION (Panther): Mozilla build downloaded
   22583         with wrong extension, bad file size (gzip)
   22584 
   22585         Use new delegate methods that allow for the correct reporting
   22586         of progress in cases where Foundation-level content decoding         has been performed on data received
   22587 
   22588         * WebCoreSupport.subproj/WebSubresourceClient.m:
   22589         (-[WebSubresourceClient connection:didReceiveData:lengthReceived:]):
   22590         * WebView.subproj/WebBaseResourceHandleDelegate.m:
   22591         (-[WebBaseResourceHandleDelegate connection:didReceiveData:]):
   22592         (-[WebBaseResourceHandleDelegate connection:didReceiveData:lengthReceived:]):
   22593         * WebView.subproj/WebMainResourceClient.m:
   22594         (-[WebMainResourceClient connection:didReceiveData:lengthReceived:]):
   22595 
   22596 2003-07-28  Darin Adler  <darin (a] apple.com>
   22597 
   22598         Reviewed by Richard.
   22599 
   22600         - fixed leak of WebDataRequestParameters objects
   22601 
   22602         * WebView.subproj/WebDataProtocol.m:
   22603         (-[NSMutableURLRequest _webDataRequestParametersForWriting]):
   22604         Release the WebDataRequestParameters object after putting it in the dictionary.
   22605 
   22606 2003-07-28  John Sullivan  <sullivan (a] apple.com>
   22607 
   22608         - fixed 3236815 -- bitmap TIFFs at > 72 dpi are scaled incorrectly 
   22609         in Safari when viewed standalone (uspto.gov)
   22610 
   22611         Reviewed by Darin
   22612 
   22613         * WebCoreSupport.subproj/WebImageRenderer.m:
   22614         (-[WebImageRenderer _adjustSizeToPixelDimensions]):
   22615         call setScalesWhenResized:YES
   22616 
   22617 2003-07-25  Richard Williamson   <rjw (a] apple.com>
   22618 
   22619         Fixed 3344519.  Prevent infinite recursion attempting font substitution.
   22620 
   22621         Reviewed by Darin.
   22622 
   22623         * WebCoreSupport.subproj/WebTextRenderer.m:
   22624         (-[WebTextRenderer _floatWidthForRun:style:applyRounding:attemptFontSubstitution:widths:fonts:glyphs:startGlyph:endGlyph:numGlyphs:]):
   22625 
   22626 2003-07-25  Maciej Stachowiak  <mjs (a] apple.com>
   22627 
   22628         Reviewed by John.
   22629 
   22630         - fixed 3280582 - REGRESSION (74-85): authentication sheet doesn't state that previous login was incorrect
   22631 
   22632         * Panels.subproj/WebAuthenticationPanel.m:
   22633         (-[WebAuthenticationPanel setUpForChallenge:]): Use chall, the
   22634         parameter, not challenge, the not-yet-set ivar so we get the right
   22635         failure count &c.
   22636 
   22637 2003-07-25  Richard Williamson   <rjw (a] apple.com>
   22638 
   22639         Use 11 point bold, instead of 12 point bold to draw dragged link
   22640         labels.  This matches the text drawn in the bookmarks bar.
   22641 
   22642         Reviewed by John.
   22643 
   22644         * WebView.subproj/WebHTMLViewPrivate.m:
   22645         (-[WebHTMLView _dragImageForLinkElement:]):
   22646 
   22647 2003-07-24  Richard Williamson   <rjw (a] apple.com>
   22648 
   22649         Fixed 3279910.  Change the way we draw dragged link to use
   22650         WebKit's measurement and drawing.  Also made the look match
   22651         the bookmarks bar text.
   22652 
   22653         Reviewed by Maciej.
   22654 
   22655         * Misc.subproj/WebKitNSStringExtras.h:
   22656         * Misc.subproj/WebKitNSStringExtras.m:
   22657         (-[NSString _web_drawDoubledAtPoint:withTopColor:bottomColor:font:]):
   22658         * WebView.subproj/WebHTMLViewPrivate.h:
   22659         * WebView.subproj/WebHTMLViewPrivate.m:
   22660         (-[WebHTMLView _dragImageForLinkElement:]):
   22661         (-[WebHTMLView _handleMouseDragged:]):
   22662 
   22663 2003-07-24  Richard Williamson   <rjw (a] apple.com>
   22664 
   22665         Removed unnecessary log.
   22666 
   22667         Reviewed by John.
   22668 
   22669         * WebCoreSupport.subproj/WebImageRendererFactory.m:
   22670         (-[WebImageRendererFactory imageRendererWithData:MIMEType:]):
   22671         Add another check to use ATSU for Limbu (Unicode 4.0) script.
   22672         Also made shouldUseATSU inline.
   22673 
   22674         * WebCoreSupport.subproj/WebTextRenderer.m:
   22675         (shouldUseATSU):
   22676 
   22677 === Safari-90 ===
   22678 
   22679 2003-07-23  Maciej Stachowiak  <mjs (a] apple.com>
   22680 
   22681         Build breakage fix:
   22682         Fix WebKit to build with the latest Foundation.
   22683         * Misc.subproj/WebNSURLExtras.h:
   22684         * Misc.subproj/WebNSURLExtras.m:
   22685         (-[NSURL _webkit_isJavaScriptURL]):
   22686         (-[NSURL _webkit_scriptIfJavaScriptURL]):
   22687         (-[NSURL _webkit_isFTPDirectoryURL]):
   22688         (-[NSString _webkit_isFTPDirectoryURL]):
   22689 
   22690 2003-07-23  Richard Williamson   <rjw (a] apple.com>
   22691 
   22692         Fixed 3311725:  Added support for key/value binding. 
   22693         (As a side effect also made icon loading work!  In 1.0
   22694         it doesn't work unless a secret preference value is set.)
   22695 
   22696         Reviewed by Ken.
   22697 
   22698         * Misc.subproj/WebIconDatabase.m:
   22699         (-[WebIconDatabase _createFileDatabase]):
   22700         * WebView.subproj/WebDataSourcePrivate.m:
   22701         (-[WebDataSource _startLoading:]):
   22702         (-[WebDataSource _setTitle:]):
   22703         (-[WebDataSource _updateIconDatabaseWithURL:]):
   22704         * WebView.subproj/WebFramePrivate.m:
   22705         (-[WebFrame _transitionToCommitted:]):
   22706         (-[WebFrame _isLoadComplete]):
   22707         * WebView.subproj/WebView.m:
   22708         (-[WebView setMainFrameURL:]):
   22709         (-[WebView mainFrameURL]):
   22710         (-[WebView isLoading]):
   22711         (-[WebView mainFrameTitle]):
   22712         (-[WebView mainFrameIcon]):
   22713         * WebView.subproj/WebViewPrivate.h:
   22714         * WebView.subproj/WebViewPrivate.m:
   22715         (-[WebView _progressStarted]):
   22716         (-[WebView _progressCompleted]):
   22717         (-[WebView _incrementProgressForConnection:data:]):
   22718         (-[WebView _completeProgressForConnection:]):
   22719         (-[WebView _declaredKeys]):
   22720         (-[WebView setObservationInfo:]):
   22721         (-[WebView observationInfo]):
   22722         (-[WebView _willChangeBackForwardKeys]):
   22723         (-[WebView _didChangeBackForwardKeys]):
   22724         (-[WebView _didStartProvisionalLoadForFrame:]):
   22725         (-[WebView _didCommitLoadForFrame:]):
   22726         (-[WebView _didFinishLoadForFrame:]):
   22727         (-[WebView _didFailLoadWithError:forFrame:]):
   22728         (-[WebView _didFailProvisionalLoadWithError:forFrame:]):
   22729 
   22730 2003-07-23  Richard Williamson   <rjw (a] apple.com>
   22731 
   22732         Fixed 3341119:  Crash when content contains nil (0x0) characters.
   22733 
   22734         Reviewed by Ken.
   22735 
   22736         * WebCoreSupport.subproj/WebTextRenderer.m:
   22737         (-[WebTextRenderer _CG_drawRun:style:atPoint:]):
   22738 
   22739 2003-07-23  Darin Adler  <darin (a] apple.com>
   22740 
   22741         Reviewed by John.
   22742 
   22743         - fixed 2/3 of 3279864 -- remove class_poseAs calls from WebKit (will also remove init routine)
   22744 
   22745         * WebView.subproj/WebHTMLViewPrivate.m: (+[WebHTMLView load]):
   22746         Only pose as NSTextView and NSWindow if we have an older AppKit.
   22747         If we have a new enough AppKit, the code in WebCore now takes care of things.
   22748 
   22749 2003-07-23  Richard Williamson   <rjw (a] apple.com>
   22750 
   22751         Fixed for 3259840.  Use ATSU for scripts we don't handle internally,
   22752         i.e.:  Syriac, Thaana, Devanagari, Bengali, Gurmukhi, Gujarati, Oriya, Tamil, Telugu, Kannada, Malayalam, Sinhala, Thai, Lao, Tibetan, Myanmar, Hangul Jamo, Khmer, Mongolian
   22753 
   22754         Also fixed issues with our rendering of Arabic.
   22755 
   22756         Changed the internal API to take WebCoreTextRun and WebCoreTextStyle
   22757         parameters instead of scads on individual parameters.  Much cleaner.
   22758 
   22759         Reviewed by Maciej.
   22760 
   22761         * Misc.subproj/WebKitNSStringExtras.m:
   22762         (-[NSString _web_widthWithFont:]):
   22763         * Misc.subproj/WebStringTruncator.m:
   22764         (stringWidth):
   22765         * WebCoreSupport.subproj/WebTextRenderer.h:
   22766         * WebCoreSupport.subproj/WebTextRenderer.m:
   22767         (shouldUseATSU):
   22768         (-[WebTextRenderer _setupFont:]):
   22769         (-[WebTextRenderer dealloc]):
   22770         (-[WebTextRenderer widthForCharacters:length:]):
   22771         (-[WebTextRenderer drawRun:style:atPoint:]):
   22772         (-[WebTextRenderer _CG_drawRun:style:atPoint:]):
   22773         (-[WebTextRenderer floatWidthForCharacters:stringLength:characterPosition:]):
   22774         (-[WebTextRenderer floatWidthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:]):
   22775         (-[WebTextRenderer floatWidthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:withPadding:applyRounding:attemptFontSubstitution:widths:letterSpacing:wordSpacing:smallCaps:fontFamilies:]):
   22776         (-[WebTextRenderer floatWidthForRun:style:applyRounding:attemptFontSubstitution:widths:]):
   22777         (-[WebTextRenderer _floatWidthForRun:style:applyRounding:attemptFontSubstitution:widths:fonts:glyphs:startGlyph:endGlyph:numGlyphs:]):
   22778         (-[WebTextRenderer _CG_floatWidthForRun:style:applyRounding:attemptFontSubstitution:widths:fonts:glyphs:startGlyph:endGlyph:numGlyphs:]):
   22779         (-[WebTextRenderer extendCharacterToGlyphMapToInclude:]):
   22780         (-[WebTextRenderer _initializeATSUStyle]):
   22781         (-[WebTextRenderer _createATSUTextLayoutForRun:]):
   22782         (-[WebTextRenderer _trapezoidForRun:style:atPoint:]):
   22783         (-[WebTextRenderer _ATSU_floatWidthForRun:style:]):
   22784         (-[WebTextRenderer _ATSU_drawRun:style:atPoint:]):
   22785 
   22786 2003-07-23  Ken Kocienda  <kocienda (a] apple.com>
   22787 
   22788         Reviewed by Darin
   22789         Removed dependency on Foundation NSURL_NSURLExtras file.
   22790         Copied the required methods from that file to WebNSURLExtras,
   22791         temporarily renaming the methods that are now in both
   22792         places to have a _webkit_ prefix. The names will be changed
   22793         back once every one is living on a Foundation version that
   22794         no longer contains these methods.
   22795 
   22796         The files below were changed in one of three ways:
   22797         1. Rename _web_URLWithString: to _web_URLWithDataAsString:
   22798         2. Tweak headers to depend on WebNSURLExtras instead of NSURL_NSURLExtras.
   22799         3. At call sites, tweak names of methods that moved to WebKit (_web_ -> _webkit_).
   22800 
   22801         * History.subproj/WebHistory.m:
   22802         * History.subproj/WebHistoryItem.m:
   22803         (-[WebHistoryItem URL]):
   22804         * History.subproj/WebHistoryPrivate.m:
   22805         * History.subproj/WebURLsWithTitles.m:
   22806         (+[WebURLsWithTitles URLsFromPasteboard:]):
   22807         * Misc.subproj/WebIconDatabase.m:
   22808         (-[WebIconDatabase _iconForFileURL:withSize:]):
   22809         * Misc.subproj/WebIconLoader.m:
   22810         * Misc.subproj/WebNSPasteboardExtras.m:
   22811         (-[NSPasteboard _web_bestURL]):
   22812         * Misc.subproj/WebNSURLExtras.h:
   22813         * Misc.subproj/WebNSURLExtras.m:
   22814         (ReleaseIfNotNULL):
   22815         (+[NSURL _web_URLWithDataAsString:]):
   22816         (+[NSURL _web_URLWithDataAsString:relativeToURL:]):
   22817         (+[NSURL _web_URLWithData:]):
   22818         (+[NSURL _web_URLWithData:relativeToURL:]):
   22819         (-[NSURL _web_originalData]):
   22820         (-[NSURL _web_displayableString]):
   22821         (-[NSURL _web_URLStringLength]):
   22822         (-[NSURL _webkit_canonicalize]):
   22823         (-[NSURL _webkit_URLByRemovingFragment]):
   22824         (-[NSURL _webkit_isJavaScriptURL]):
   22825         (-[NSURL _webkit_scriptIfJavaScriptURL]):
   22826         (-[NSURL _webkit_isFTPDirectoryURL]):
   22827         (-[NSURL _webkit_shouldLoadAsEmptyDocument]):
   22828         (isHexDigit):
   22829         (hexDigitValue):
   22830         (-[NSString _webkit_isJavaScriptURL]):
   22831         (-[NSString _webkit_stringByReplacingValidPercentEscapes]):
   22832         (-[NSString _webkit_scriptIfJavaScriptURL]):
   22833         * Misc.subproj/WebNSViewExtras.m:
   22834         * Panels.subproj/WebAuthenticationPanel.m:
   22835         * Plugins.subproj/WebBaseNetscapePluginView.m:
   22836         (-[WebBaseNetscapePluginView requestWithURLCString:]):
   22837         (-[WebBaseNetscapePluginView loadPluginRequest:]):
   22838         (-[WebBaseNetscapePluginView _postURLNotify:target:len:buf:file:notifyData:allowHeaders:]):
   22839         * Plugins.subproj/WebNullPluginView.m:
   22840         * WebCoreSupport.subproj/WebBridge.m:
   22841         (-[WebBridge requestedURLString]):
   22842         * WebCoreSupport.subproj/WebCookieAdapter.m:
   22843         (-[WebCookieAdapter cookiesForURL:]):
   22844         (-[WebCookieAdapter setCookies:forURL:policyBaseURL:]):
   22845         * WebKit.pbproj/project.pbxproj:
   22846         * WebView.subproj/WebDataSourcePrivate.m:
   22847         (-[WebDataSource _setTitle:]):
   22848         (-[WebDataSource _loadIcon]):
   22849         * WebView.subproj/WebFrame.m:
   22850         * WebView.subproj/WebFramePrivate.m:
   22851         (-[WebFrame _transitionToCommitted:]):
   22852         (-[WebFrame _shouldReloadForCurrent:andDestination:]):
   22853         (-[WebFrame _URLsMatchItem:]):
   22854         * WebView.subproj/WebFrameView.m:
   22855         * WebView.subproj/WebHTMLViewPrivate.m:
   22856         (-[WebHTMLView _elementAtPoint:]):
   22857         * WebView.subproj/WebMainResourceClient.m:
   22858         (-[WebMainResourceClient continueAfterContentPolicy:response:]):
   22859         (-[WebMainResourceClient loadWithRequest:]):
   22860         (-[WebMainResourceClient setDefersCallbacks:]):
   22861 
   22862 2003-07-22  Darin Adler  <darin (a] apple.com>
   22863 
   22864         * English.lproj/StringsNotToBeLocalized.txt: Update for recent changes.
   22865 
   22866 2003-07-21  Ken Kocienda  <kocienda (a] apple.com>
   22867 
   22868         Fixed build breaker.
   22869 
   22870         Removed glyphCountFromFont function. It was used only in an
   22871         ERROR function, which does not compile in on deployment
   22872         builds, causing a "defined, but not used warning".
   22873 
   22874         As this function is only a one-liner call into ATS, I 
   22875         replaced the usage in the ERROR call with a call to the 
   22876         ATS function directly.
   22877 
   22878         * WebCoreSupport.subproj/WebTextRenderer.m:
   22879         (-[WebTextRenderer initWithFont:usingPrinterFont:])
   22880 
   22881 2003-07-18  Richard Williamson   <rjw (a] apple.com>
   22882 
   22883         Fixed 3283594.  "Times RO" appears to have a corrupt regular variant.  Added
   22884         additional bullet proofing to catch corrupt fonts.  Also added a special case
   22885         hack to map "Times RO" to "Time New Roman" if the variant doesn't have valid
   22886         glyphs.
   22887 
   22888         Fixed 3319846.  The page mentioned in this bug required > 10 substitute fonts for
   22889         the same base font.  This triggered some buggy code that hasn't been exercise before.
   22890         Specifically the code that resizes the substitute fonts array was incorrect.
   22891 
   22892         Reviewed by mjs.
   22893 
   22894         * Misc.subproj/WebAssertions.h:  Added FATAL_ALWAYS macro that logs and CRASHES
   22895         even in deployment builds.
   22896 
   22897         * WebCoreSupport.subproj/WebTextRenderer.m:
   22898         (mapForSubstituteFont):
   22899         (widthFromMap):
   22900         (FillStyleWithAttributes):
   22901         (-[WebTextRenderer convertCharacters:length:toGlyphs:skipControlCharacters:]):
   22902         (-[WebTextRenderer convertUnicodeCharacters:length:toGlyphs:]):
   22903         (-[WebTextRenderer _computeWidthForSpace]):
   22904         (-[WebTextRenderer _setupFont:]):
   22905         (pathFromFont):
   22906         (glyphCountFromFont):
   22907         (-[WebTextRenderer initWithFont:usingPrinterFont:]):
   22908         (-[WebTextRenderer extendUnicodeCharacterToGlyphMapToInclude:]):
   22909         (-[WebTextRenderer extendCharacterToGlyphMapToInclude:]):
   22910 
   22911 2003-07-17  Darin Adler  <darin (a] apple.com>
   22912 
   22913         Reviewed by John.
   22914 
   22915         - fixed 3250608 -- REGRESSION (74-85): reproducible Safari crash in blinkCaretTimerAction
   22916 
   22917         * WebView.subproj/WebHTMLViewPrivate.m:
   22918         (-[WebNSTextView drawInsertionPointInRect:color:turnedOn:]):
   22919         Use NSView's setNeedsDisplayInRect: instead of the one in NSTextView.
   22920         This avoids the layout that the NSTextView version of the call might do.
   22921         By definition, we don't need layout to draw the insertion point, because we did
   22922         the layout to find where the insertion point should display. If we do the layout
   22923         we can end up recursing into the insertion point drawing code, which wreaks major
   22924         havoc. Still no idea why this happened less in version 74.
   22925 
   22926 2003-07-17  Ken Kocienda  <kocienda (a] apple.com>
   22927 
   22928         Reviewed by John
   22929 
   22930         * WebCoreSupport.subproj/WebBridge.m:
   22931         (-[WebBridge startLoadingResource:withURL:]): Now uses NSURL instead of NSString
   22932         (-[WebBridge objectLoadedFromCacheWithURL:response:size:]): Ditto
   22933         (-[WebBridge reportClientRedirectToURL:delay:fireDate:lockHistory:isJavaScriptFormAction:]):
   22934         Ditto
   22935         (-[WebBridge setIconURL:]): Ditto
   22936         (-[WebBridge setIconURL:withType:]): Ditto
   22937         (-[WebBridge createChildFrameNamed:withURL:renderPart:allowsScrolling:marginWidth:marginHeight:]): Ditto
   22938         (-[WebBridge userAgentForURL:]): Ditto
   22939         (-[WebBridge requestedURL]): Now returns string using _web_absoluteString
   22940         * WebView.subproj/WebDataSourcePrivate.m:
   22941         (-[WebDataSource _receivedError:complete:]): Now uses NSURL instead of NSString
   22942         * WebView.subproj/WebFramePrivate.m:
   22943         (-[WebFrame _opened]): Ditto
   22944         (-[WebFrame _continueFragmentScrollAfterNavigationPolicy:formState:]): Ditto
   22945         (-[WebFrame _loadURL:referrer:loadType:target:triggeringEvent:form:formValues:]): Ditto
   22946 
   22947 2003-07-17  Ken Kocienda  <kocienda (a] apple.com>
   22948 
   22949         * Misc.subproj/WebNSURLExtras.m:
   22950         (-[NSURL _web_URLStringLength]): Fix premature use of new CFURL API.
   22951         New code is ifdef'ed out for now until everyone has revved.
   22952 
   22953 2003-07-17  Ken Kocienda  <kocienda (a] apple.com>
   22954 
   22955         Reviewed by Darin
   22956 
   22957         * WebCoreSupport.subproj/WebBridge.m:
   22958         (-[WebBridge createWindowWithURL:frameName:]): Now uses NSURL in API instead of NSString
   22959         (-[WebBridge loadURL:referrer:reload:target:triggeringEvent:form:formValues:]): Ditto
   22960         (-[WebBridge postWithURL:referrer:target:data:contentType:triggeringEvent:form:formValues:]): Ditto
   22961         * WebKit.pbproj/project.pbxproj: Added WebNSURLExtras file
   22962         * WebView.subproj/WebDataSourcePrivate.m:
   22963         (-[WebDataSource _commitIfReady:]): Now uses NSURL in API instead of NSString
   22964 
   22965 2003-07-15  Richard Williamson   <rjw (a] apple.com>
   22966 
   22967         Fixed 3315952:  Add support for <IMG> in attributed string conversion.
   22968         Added RTFD pasteboard type.
   22969 
   22970         Reviewed by John.
   22971 
   22972         * WebView.subproj/WebHTMLViewPrivate.m:
   22973         (+[WebHTMLView _pasteboardTypes]):
   22974         (-[WebHTMLView _writeSelectionToPasteboard:]):
   22975 
   22976 2003-07-14  Darin Adler  <darin (a] apple.com>
   22977 
   22978         Reviewed by Maciej.
   22979 
   22980         - make some improvements to handling of the timer, inspired by some bug reports
   22981 
   22982         * WebView.subproj/WebFramePrivate.m:
   22983         (-[WebFramePrivate dealloc]): Instead of releasing the timer, assert it is nil.
   22984         (-[WebFrame _detachFromParent]): Invalidate and release the timer after finishing
   22985         dealing with self, in case the reference from the timer is the last one.
   22986         (-[WebFrame _timedLayout:]): Release the timer after doing all the other work,
   22987         in case the reference from the timer is the last one.
   22988         (-[WebFrame _setState:]): Release the timer after doing all the other work,
   22989         in case the reference from the timer is the last one.
   22990 
   22991 2003-07-14  Darin Adler  <darin (a] apple.com>
   22992 
   22993         Rolled out workaround to bug 3298153 -- get "screen font while printing"
   22994         error, bad stuff happens after that (Sherlock, Safari). It turns out the
   22995         real fix was on the WebCore side. Now that we have that fix we don't need
   22996         these extra calls to printerFont, which is a relatively slow call that
   22997         may need to look up a font by name each time it's called.
   22998 
   22999         * WebCoreSupport.subproj/WebTextRenderer.m: (_drawGlyphs):
   23000         Remove code to look up the printer font.
   23001 
   23002 2003-07-14  Maciej Stachowiak  <mjs (a] apple.com>
   23003 
   23004         Rolled in fix from Safari-89-branch
   23005     2003-07-12  Maciej Stachowiak  <mjs (a] apple.com>
   23006 
   23007         Try to fix OS build by making the Frameworks link in both SYMROOT
   23008         and DSTROOT, and at both build time and install time.
   23009 
   23010         * WebKit.pbproj/project.pbxproj:
   23011 
   23012 2003-07-14  Dave Hyatt  <hyatt (a] apple.com>
   23013 
   23014         Roll this change out.  It was a bad change that I only made
   23015         because I was using the opacity APIs wrong.
   23016         Reviewed by (nobody, just a straight backout of a previous checkin)
   23017 
   23018         * WebCoreSupport.subproj/WebImageRenderer.m:
   23019         (-[WebImageRenderer drawClippedToValidInRect:fromRect:]):
   23020 
   23021 2003-07-13  Darin Adler  <darin (a] apple.com>
   23022 
   23023         * WebKit.pbproj/project.pbxproj: Add command to prevent build from failing if symlink
   23024         creation fails.
   23025 
   23026 2003-07-13  Darin Adler  <darin (a] apple.com>
   23027 
   23028         Fixed symbolic link path as Matt Reda suggested.
   23029 
   23030         * WebKit.pbproj/project.pbxproj: Changed paths in both of Maciej's new build phases
   23031         to use Versions/Current instead of Versions/A.
   23032 
   23033 2003-07-13  Darin Adler  <darin (a] apple.com>
   23034 
   23035         Fixed DSTROOT path as Eric Weiss suggested.
   23036 
   23037         * WebKit.pbproj/project.pbxproj: Changed paths in both of Maciej's new build phases.
   23038 
   23039 2003-07-12  Maciej Stachowiak  <mjs (a] apple.com>
   23040 
   23041         Try to fix OS build by making the Frameworks link in both SYMROOT
   23042         and DSTROOT, and at both build time and install time.
   23043 
   23044         * WebKit.pbproj/project.pbxproj:
   23045 
   23046 2003-07-11  Dave Hyatt  <hyatt (a] apple.com>
   23047 
   23048         Make sure image compositing obeys the current global alpha that
   23049         is in effect, e.g., if someone has set an opacity within the
   23050         current layer.
   23051 
   23052         It's worth noting that I'm not even sure *why* this patch works,
   23053         but it does, even with nested opacity layers.
   23054         Reviewed by darin
   23055 
   23056         * WebCoreSupport.subproj/WebImageRenderer.m:
   23057         (-[WebImageRenderer drawClippedToValidInRect:fromRect:]):
   23058 
   23059 === Safari-89 ===
   23060 
   23061 2003-07-10  Richard Williamson   <rjw (a] apple.com>
   23062 
   23063         Fixed 3298153.  Force use of printer font when printing.
   23064 
   23065         Reviewed by Chris.
   23066 
   23067         * WebCoreSupport.subproj/WebTextRenderer.m:
   23068         (_drawGlyphs):
   23069 
   23070 2003-07-10  Chris Blumenberg  <cblu (a] apple.com>
   23071 
   23072         Fixed: <rdar://problem/3161102>: Avoid retain cycles by destroying plug-ins in the page cache before dealloc
   23073         Fixed: <rdar://problem/3320624>: WebElementImageAltStringKey is not exported :-(
   23074         Unspoof freebsd since we now handle gzip'd content.
   23075 
   23076         Reviewed by rjw.
   23077 
   23078         * History.subproj/WebHistoryItem.m:
   23079         (+[WebHistoryItem _destroyAllPluginsInPendingPageCaches]): new, destroys all plug-ins
   23080         (+[WebHistoryItem _releaseAllPendingPageCaches]): call _destroyAllPluginsInPendingPageCaches
   23081         * WebKit.exp: export WebElementImageAltStringKey
   23082         * WebView.subproj/WebUserAgentSpoofTable.c: unspoof freebsd
   23083         (hash):
   23084         (_web_findSpoofTableEntry):
   23085         * WebView.subproj/WebUserAgentSpoofTable.gperf: unspoof freebsd
   23086 
   23087 2003-07-10  John Sullivan  <sullivan (a] apple.com>
   23088 
   23089         Reviewed by Chris
   23090 
   23091         * WebCoreSupport.subproj/WebImageRenderer.m:
   23092         (-[WebImageRenderer incrementalLoadWithBytes:length:complete:]):
   23093         fixed copy/paste error in comment that I stumbled across
   23094 
   23095 2003-07-09  Richard Williamson   <rjw (a] apple.com>
   23096 
   23097         Fixed 3141257.  Animate multiple copies of the same
   23098         image on the same page.
   23099 
   23100         Reviewed by hyatt.
   23101 
   23102         * WebCoreSupport.subproj/WebImageRenderer.h:
   23103         * WebCoreSupport.subproj/WebImageRenderer.m:
   23104         (+[WebImageRenderer stopAnimationsInView:]):
   23105         (-[WebImageRenderer retainOrCopyIfNeeded]):
   23106         (-[WebImageRenderer copyWithZone:]):
   23107         (-[WebImageRenderer incrementalLoadWithBytes:length:complete:]):
   23108         (-[WebImageRenderer dealloc]):
   23109         (-[WebImageRenderer repetitionCount]):
   23110         (-[WebImageRenderer scheduleFrame]):
   23111         (-[WebImageRenderer beginAnimationInRect:fromRect:]):
   23112         * WebCoreSupport.subproj/WebImageRendererFactory.h:
   23113         * WebCoreSupport.subproj/WebImageRendererFactory.m:
   23114         (-[WebImageRendererFactory imageRendererWithMIMEType:]):
   23115         (-[WebImageRendererFactory imageRendererWithData:MIMEType:]):
   23116         (-[WebImageRendererFactory imageRendererWithBytes:length:MIMEType:]):
   23117 
   23118 2003-07-09  Chris Blumenberg  <cblu (a] apple.com>
   23119 
   23120         Fixed: <rdar://problem/3229364>: user stylesheet path should be stored relative to home directory
   23121 
   23122         Reviewed by john.
   23123 
   23124         * Misc.subproj/WebKitNSStringExtras.h:
   23125         * Misc.subproj/WebKitNSStringExtras.m:
   23126         (-[NSString _web_stringByAbbreviatingWithTildeInPath]): new, handles home directories that have symlinks in path
   23127         * WebView.subproj/WebPreferences.m:
   23128         (-[WebPreferences userStyleSheetLocation]): converts path string or URL string to URL
   23129         (-[WebPreferences setUserStyleSheetLocation:]): converts URL to path string or URL string
   23130 
   23131 2003-07-08  Darin Adler  <darin (a] apple.com>
   23132 
   23133         Reviewed by John.
   23134 
   23135         - fixed 3125264 -- nuke NSImage workaround when we drop Jaguar support
   23136 
   23137         * Misc.subproj/WebNSImageExtras.m: Removed the workaround.
   23138 
   23139         - removed other Jaguar-specific code
   23140 
   23141         * WebCoreSupport.subproj/WebImageRenderer.m: Remove workaround for improper
   23142         handling of GIF animation loops with no loop counting, bug 3090341.
   23143 
   23144         * WebView.subproj/WebHTMLViewPrivate.m: Remove workaround for problem extracting
   23145         scroll wheel events without also getting all others, which caused jumping around
   23146         if you used the scroll wheel while moving the mouse, bug 3245425.
   23147 
   23148         * Misc.subproj/WebKitErrorsPrivate.h: Remove Jaguar-only import of <NSError.h>.
   23149         * Plugins.subproj/WebNetscapePluginPackage.m: Remove Jaguar-only side of #if.
   23150         * Plugins.subproj/WebNetscapePluginRepresentation.m: Remove Jaguar-only import
   23151         of <NSError.h>.
   23152         * WebKit/Plugins.subproj/WebPluginPackage.m: Remove unnecessary import of <NSError.h>.
   23153         * Plugins.subproj/WebPluginPackage.m: Remove Jaguar-only side of #if.
   23154         * WebCoreSupport.subproj/WebSubresourceClient.m: Remove Jaguar-only import
   23155         of <NSError.h>.
   23156         * WebView.subproj/WebDefaultFrameLoadDelegate.m: Remove Jaguar-only import
   23157         of <NSError.h>.
   23158         * WebView.subproj/WebImageRepresentation.m: Remove Jaguar-only import
   23159         of <NSError.h>.
   23160 
   23161         * WebKit/English.lproj/StringsNotToBeLocalized.txt: Updated for this and other recent changes.
   23162 
   23163 2003-07-08  Chris Blumenberg  <cblu (a] apple.com>
   23164 
   23165         Fixed: <rdar://problem/3134494>: no progressive loading for standalone images
   23166         Fixed: <rdar://problem/3280633>: exception raised (attempt to create array with nil element) when dragging image out of HTML
   23167 
   23168         Reviewed by rjw.
   23169 
   23170         * Misc.subproj/WebNSViewExtras.h:
   23171         * Misc.subproj/WebNSViewExtras.m:
   23172         (-[NSView _web_dragPromisedImage:rect:URL:title:event:]): don't take a file type since this can now be gotten from the image
   23173         * WebCoreSupport.subproj/WebImageRenderer.h:
   23174         * WebCoreSupport.subproj/WebImageRenderer.m:
   23175         (-[WebImageRenderer _adjustSizeToPixelDimensions]): new method that rjw factored from incrementalLoadWithBytes::: 
   23176         (-[WebImageRenderer incrementalLoadWithBytes:length:complete:]): call _adjustSizeToPixelDimensions so we have the correct image size as the image loads
   23177         (-[WebImageRenderer MIMEType]): new accessor
   23178         * WebView.subproj/WebHTMLViewPrivate.m:
   23179         (-[WebHTMLView _handleMouseDragged:]): use renamed _web_dragPromisedImage
   23180         * WebView.subproj/WebImageRepresentation.h:
   23181         * WebView.subproj/WebImageRepresentation.m:
   23182         (-[WebImageRepresentation doneLoading]): new
   23183         (-[WebImageRepresentation setDataSource:]): create the image here
   23184         (-[WebImageRepresentation receivedData:withDataSource:]): pass data to image
   23185         (-[WebImageRepresentation receivedError:withDataSource:]): complete image loading
   23186         (-[WebImageRepresentation finishedLoadingWithDataSource:]): complete image loading
   23187         * WebView.subproj/WebImageView.h:
   23188         * WebView.subproj/WebImageView.m:
   23189         (-[WebImageView initWithFrame:]): call setAutoresizingMask so setFrameSize is called often enough
   23190         (-[WebImageView dealloc]): tweak
   23191         (-[WebImageView haveCompleteImage]): new
   23192         (-[WebImageView drawingRect]): new
   23193         (-[WebImageView drawRect:]): fill white then draw the image so we never show the previous page
   23194         (-[WebImageView setFrameSizeUsingImage]): new, ensures that the view always fills the content area (so we draw over the previous page) and that the view is at least as large as the image.
   23195         (-[WebImageView setFrameSize:]): call setFrameSizeUsingImage
   23196         (-[WebImageView layout]): call setFrameSizeUsingImage
   23197         (-[WebImageView setDataSource:]): store the rep
   23198         (-[WebImageView dataSourceUpdated:]): call setNeedsLayout and setNeedsDisplay
   23199         (-[WebImageView viewDidMoveToWindow]): tweak
   23200         (-[WebImageView validateUserInterfaceItem:]): only allow copy if haveCompleteImage
   23201         (-[WebImageView writeImageToPasteboard:]): only writeImageToPasteboard if haveCompleteImage
   23202         (-[WebImageView writeSelectionToPasteboard:types:]): tweak
   23203         (-[WebImageView menuForEvent:]): tweak
   23204         (-[WebImageView mouseDragged:]): only allow drag if haveCompleteImage
   23205         (-[WebImageView namesOfPromisedFilesDroppedAtDestination:]): tweak
   23206 
   23207 2003-07-08  Dave Hyatt  <hyatt (a] apple.com>
   23208 
   23209         Change minimum font size pref value back to 9. This change
   23210         has been made in conjunction with associated WebCore changes
   23211         that allow us to institute a minimum font size safely without
   23212         the need for a visible GUI pref.
   23213         Reviewed by darin
   23214 
   23215         * WebView.subproj/WebPreferences.m:
   23216         (+[WebPreferences initialize]):
   23217 
   23218 2003-07-07  Maciej Stachowiak  <mjs (a] apple.com>
   23219 
   23220         Reviewed by John.
   23221 
   23222         - fixed 3295916 - b/c JavaScriptCore and WebCore are installing in wrong location, private headers are public
   23223 
   23224         * WebKit.pbproj/project.pbxproj: Make a link from Frameworks to Versions/A/Frameworks.
   23225 
   23226 === Safari-88 ===
   23227 
   23228 2003-07-07  Darin Adler  <darin (a] apple.com>
   23229 
   23230         Reviewed by Dave.
   23231 
   23232         - fix compile error from B&I Panther build; really, this time
   23233 
   23234         * WebCoreSupport.subproj/WebTextRenderer.m:
   23235         (-[WebTextRenderer extendUnicodeCharacterToGlyphMapToInclude:]): Use unsigned, not int.
   23236         (-[WebTextRenderer extendCharacterToGlyphMapToInclude:]): Ditto.
   23237 
   23238 2003-07-06  Darin Adler  <darin (a] apple.com>
   23239 
   23240         - fix compile error from B&I Panther build
   23241 
   23242         * WebCoreSupport.subproj/WebTextRenderer.m:
   23243         (-[WebTextRenderer extendUnicodeCharacterToGlyphMapToInclude:]): Rearrange code so that we won't get
   23244         a warning if numGlyphs type is either signed or unsigned. We don't want to depend on the new ATS
   23245         headers or the old ones; this is compatible with both.
   23246         (-[WebTextRenderer extendCharacterToGlyphMapToInclude:]): Ditto.
   23247 
   23248 2003-07-03  Darin Adler  <darin (a] apple.com>
   23249 
   23250         * WebCoreSupport.subproj/WebImageRenderer.m: Remove obsolete comment.
   23251 
   23252 2003-07-03  Chris Blumenberg  <cblu (a] apple.com>
   23253 
   23254         Fixed: <rdar://problem/3206011>: Don't accepts drags when showing dialogs or sheets
   23255 
   23256         Reviewed by john.
   23257 
   23258         * Misc.subproj/WebNSViewExtras.m:
   23259         (-[NSView _web_dragOperationForDraggingInfo:]):
   23260 
   23261 2003-07-03  Chris Blumenberg  <cblu (a] apple.com>
   23262 
   23263         Fixed: <rdar://problem/3291566>: Aborting standalone image load makes image directory page unusable
   23264 
   23265         Reviewed by john.
   23266 
   23267         * WebKit.pbproj/project.pbxproj: Xcode-ified WebKit.pbproj
   23268         * WebView.subproj/WebImageView.h:
   23269         * WebView.subproj/WebImageView.m:
   23270         (-[WebImageView drawRect:]): layout if we need to, fill with white if we don't have an image yet
   23271         (-[WebImageView setNeedsLayout:]): set the bit
   23272         (-[WebImageView layout]): if we don't have an image, the frame size is the visible area so we draw white over the previous web page
   23273 
   23274 2003-07-02  Maciej Stachowiak  <mjs (a] apple.com>
   23275 
   23276         Reviewed by Ken.
   23277 
   23278         - fixed 3304992 - REGRESSION: Every GET on an authenticated site requires a login (genentech)
   23279 
   23280         I fixed this by adding a per-window queue of waiting
   23281         authentication requests. Before going to a later item in the
   23282         queue, the auth handler checks if there's already a credential
   23283         available to handle it, and if so uses that as the answer instead of
   23284         prompting.
   23285 
   23286         * Panels.subproj/WebPanelAuthenticationHandler.h:
   23287         * Panels.subproj/WebPanelAuthenticationHandler.m:
   23288         (-[NSMutableDictionary _web_setObject:forUncopiedKey:]):
   23289         (-[WebPanelAuthenticationHandler init]):
   23290         (-[WebPanelAuthenticationHandler dealloc]):
   23291         (-[WebPanelAuthenticationHandler enqueueChallenge:forWindow:]):
   23292         (-[WebPanelAuthenticationHandler tryNextChallengeForWindow:]):
   23293         (-[WebPanelAuthenticationHandler startAuthentication:window:]):
   23294         (-[WebPanelAuthenticationHandler _authenticationDoneWithChallenge:result:]):
   23295 
   23296 2003-06-30  John Sullivan  <sullivan (a] apple.com>
   23297 
   23298         - fixed 3310716 -- Authentication dialog could be tweaked to 
   23299         better match guidelines
   23300 
   23301         Reviewed by Chris
   23302 
   23303         * Panels.subproj/English.lproj/WebAuthenticationPanel.nib:
   23304         left-aligned "Name:" and "Password:" labels; slightly tweaked
   23305         layout at right edge of sheet
   23306 
   23307 2003-06-26  Chris Blumenberg  <cblu (a] apple.com>
   23308 
   23309         Changes to make WebKit compile with gcc 3.3.
   23310 
   23311         Reviewed by darin.
   23312 
   23313         * Carbon.subproj/HIWebView.m:
   23314         * WebCoreSupport.subproj/WebBridge.m:
   23315         (-[WebBridge setScrollbarsVisible:]):
   23316         (-[WebBridge loadURL:referrer:reload:target:triggeringEvent:form:formValues:]):
   23317         (-[WebBridge postWithURL:referrer:target:data:contentType:triggeringEvent:form:formValues:]):
   23318         * WebView.subproj/WebFramePrivate.h:
   23319         * WebView.subproj/WebFramePrivate.m:
   23320         (-[WebFrame _loadURL:referrer:loadType:target:triggeringEvent:form:formValues:]):
   23321         (-[WebFrame _postWithURL:referrer:target:data:contentType:triggeringEvent:form:formValues:]):
   23322         * WebView.subproj/WebPreferences.m:
   23323         (-[WebPreferences setDefaultFontSize:]):
   23324         (-[WebPreferences setDefaultFixedFontSize:]):
   23325         (-[WebPreferences setMinimumFontSize:]):
   23326         * WebView.subproj/WebView.m:
   23327         (-[WebView searchFor:direction:caseSensitive:wrap:]):
   23328 
   23329 2003-06-24  Chris Blumenberg  <cblu (a] apple.com>
   23330 
   23331         Renamed the context menu item Download Image To Disk" to "Download Image to Disk".
   23332 
   23333         Reviewed by john.
   23334 
   23335         * English.lproj/Localizable.strings:
   23336         * WebView.subproj/WebDefaultContextMenuDelegate.m:
   23337         (-[WebDefaultUIDelegate menuItemWithTag:]):
   23338 
   23339 2003-06-19  Chris Blumenberg  <cblu (a] apple.com>
   23340 
   23341         Fixed: <rdar://problem/3294803>: HTTP error sent as content instead of error to plug-ins
   23342 
   23343 
   23344         Reviewed by john.
   23345 
   23346         * Plugins.subproj/WebNetscapePluginStream.m:
   23347         (-[WebNetscapePluginConnectionDelegate connection:didReceiveResponse:]): if the response is an error, cancel the load, return a network error
   23348 
   23349 === Safari-85.1 ===
   23350 
   23351 2003-06-15  Vicki Murley  <vicki (a] apple.com>
   23352 
   23353         Reviewed by darin.
   23354 
   23355         * WebKit.pbproj/project.pbxproj: remove SECTORDER_FLAGS variable, so that we don't use order file for our Panther submission
   23356 
   23357 === Safari-85 ===
   23358 
   23359 2003-06-13  Darin Adler  <darin (a] apple.com>
   23360 
   23361         Reviewed by Darin (Richard wrote the first cut), then Don and Dave.
   23362 
   23363         - fixed 3291467 -- CARBON: context menus are broken when using WebKit from Carbon
   23364 
   23365         * Carbon.subproj/HIWebView.m: (ContextMenuClick): Rewrite method to create a fake
   23366         right mouse up event, and pass that to menuForEvent: and _popUpMenuWithEvent.
   23367 
   23368 2003-06-13  Darin Adler  <darin (a] apple.com>
   23369 
   23370         Reviewed by Chris.
   23371 
   23372         - fixed 3291778 -- REGRESSION (51-52): QT controller never shows up for mp3 in frame
   23373 
   23374         * Plugins.subproj/WebBaseNetscapePluginView.m:
   23375         (-[WebBaseNetscapePluginView saveAndSetPortStateForUpdate:]):
   23376         Handle the "invisible" plug-in cases in a more complete way.
   23377         Detect the various ways of being invisible (big negative X value, 0 size,
   23378         not really in a window) and in all those cases, use a clip rect to guarantee
   23379         we won't be seen, and make sure the size passed to the plug-in is *not* 0.
   23380 
   23381         * English.lproj/StringsNotToBeLocalized.txt: Updated for recent changes.
   23382 
   23383 2003-06-13  David Hyatt  <hyatt (a] apple.com>
   23384 
   23385         Fix for 3291319, scrolling is much worse since 79.  The problem
   23386         was a fix for resize events that needed to use the scrollview size
   23387         and not the document view size inside the scrollview.
   23388         Reviewed by darin
   23389 
   23390         * WebView.subproj/WebHTMLView.m:
   23391         (-[WebHTMLView layoutToPageWidth:]):
   23392         * WebView.subproj/WebHTMLViewPrivate.h:
   23393 
   23394 2003-06-13  Chris Blumenberg  <cblu (a] apple.com>
   23395 
   23396         Fixed previous " Reviewed by" string.
   23397 
   23398         * ChangeLog:
   23399 
   23400 2003-06-13  Chris Blumenberg  <cblu (a] apple.com>
   23401 
   23402         Fixed: <rdar://problem/3291502>: REGRESSION (80-81): freebsd.org is giving us gzipped content (because we stopped spoofing)
   23403 
   23404         Reviewed by john.
   23405 
   23406         * WebView.subproj/WebUserAgentSpoofTable.c:
   23407         (hash):
   23408         (_web_findSpoofTableEntry):
   23409         * WebView.subproj/WebUserAgentSpoofTable.gperf:
   23410 
   23411 2003-06-12  Richard Williamson  <rjw (a] apple.com>
   23412 
   23413         Restoring fix for 3221078 that I earlier backed out in a
   23414         panic about performance.  In careful performance testing
   23415         I now see no performance regression, and maybe a tiny improvement.
   23416         The earlier performance regression Vicki saw was entirely
   23417         due to the incorrect checkin for the fix to 3288532.
   23418 
   23419         Reviewed by Chris & Gramps.
   23420 
   23421         * WebCoreSupport.subproj/WebTextRenderer.h:
   23422         * WebCoreSupport.subproj/WebTextRenderer.m:
   23423 
   23424 2003-06-12  Richard Williamson  <rjw (a] apple.com>
   23425 
   23426         Correct fix for 3288532 again.  This time will feeling!
   23427 
   23428         Reviewed by Gramps.
   23429 
   23430         * History.subproj/WebBackForwardList.m:
   23431         (-[WebBackForwardList setCapacity:]):
   23432 
   23433 2003-06-12  Don Melton  <gramps (a] apple.com>
   23434 
   23435         Since Richard didn't actually correct the fix for 3288532 in
   23436         WebBackForwardList.m, I've backed out out his original fix entirely.
   23437 
   23438         * History.subproj/WebBackForwardList.m:
   23439         (-[WebBackForwardList setCapacity:]):
   23440 
   23441 2003-06-12  Richard Williamson   <rjw (a] apple.com>
   23442 
   23443         Correct fix for 3288532.
   23444 
   23445         * History.subproj/WebBackForwardList.m:
   23446 
   23447 2003-06-12  Richard Williamson   <rjw (a] apple.com>
   23448 
   23449         Fixed 3288532.  When setCapacity: shrinks capacity, trim
   23450         the back/forward list.  Setting to zero will effectively
   23451         flush the list.
   23452 
   23453         Reviewed by John.
   23454 
   23455         * History.subproj/WebBackForwardList.m:
   23456 
   23457 2003-06-12  Richard Williamson   <rjw (a] apple.com>
   23458 
   23459         Fixed 3221078.  Maintain a seperate width map
   23460         for substitute fonts to avoid collision of glyph
   23461         codes.
   23462 
   23463         Reviewed by Chris & Gramps.
   23464 
   23465         * WebCoreSupport.subproj/WebTextRenderer.h:
   23466         * WebCoreSupport.subproj/WebTextRenderer.m:
   23467 
   23468 === Safari-84 ===
   23469 
   23470 2003-06-12  Darin Adler  <darin (a] apple.com>
   23471 
   23472         Fixed by Richard, reviewed by me.
   23473 
   23474         - fixed 3289047 -- REGRESSION: can't go back after using form at attwireless.com
   23475 
   23476         * WebCoreSupport.subproj/WebBridge.m:
   23477         (-[WebBridge reportClientRedirectToURL:delay:fireDate:lockHistory:isJavaScriptFormAction:]):
   23478         Added isJavaScriptFormAction parameter, passed on to frame.
   23479 
   23480         * WebView.subproj/WebFramePrivate.h: Added isJavaScriptFormAction parameter.
   23481         * WebView.subproj/WebFramePrivate.m:
   23482         (-[WebFrame _clientRedirectedTo:delay:fireDate:lockHistory:isJavaScriptFormAction:]):
   23483         If isJavaScriptFormAction is YES, then don't treat this is a "quick redirect" which is
   23484         merged with the previous page for purposes of back/forward.
   23485 
   23486 2003-06-11  Chris Blumenberg  <cblu (a] apple.com>
   23487 
   23488         Fixed: <rdar://problem/3289577>: Reenable Carbon Java plug-ins when in Carbon app
   23489 
   23490         Reviewed by gramps.
   23491 
   23492         * Plugins.subproj/WebPluginDatabase.m:
   23493         (-[WebPluginDatabase pluginForKey:withEnumeratorSelector:]): only call canUsePlugin: for web plug-ins
   23494 
   23495 2003-06-11  Chris Blumenberg  <cblu (a] apple.com>
   23496 
   23497         Fixed: <rdar://problem/3289380>: REGRESSION: policyDataSource == nil assertion failure after closing particular window
   23498 
   23499 
   23500         Reviewed by john.
   23501 
   23502         * WebView.subproj/WebFramePrivate.m:
   23503         (-[WebFrame _continueAfterNavigationPolicy:]): don't clear policyDataSource here because this method may not be called during navigation
   23504         (-[WebFrame _continueLoadRequestAfterNavigationPolicy:formState:]): clear policyDataSource here 
   23505 
   23506 2003-06-11  Chris Blumenberg  <cblu (a] apple.com>
   23507 
   23508         Fixed: <rdar://problem/3288097>: REGRESSION: assertion failure after hitting back while loading page after fragment scroll
   23509 
   23510         Fixed by darin, reviewed by me.
   23511 
   23512         * WebView.subproj/WebFramePrivate.m:
   23513         (-[WebFrame _URLsMatchItem:]): ignore the URL fragment so we scroll back at the current page instead of attempt to load the current page 
   23514         
   23515 2003-06-11  Darin Adler  <darin (a] apple.com>
   23516 
   23517         Reviewed by John.
   23518 
   23519         - fixed 3285808 -- repro world leak when replacing div that contains iframe (at www.kbs.co.kr)
   23520 
   23521         * WebCoreSupport.subproj/WebBridge.m: (-[WebBridge frameDetached]):
   23522         Add a call to _detachFromParent.
   23523         * WebView.subproj/WebFramePrivate.m: (-[WebFrame _removeChild:]):
   23524         Nil out the parent pointer in the removed child.
   23525 
   23526 2003-06-10  Chris Blumenberg  <cblu (a] apple.com>
   23527 
   23528         Fixed: <rdar://problem/3288076>: REGRESSION: Fragment scroll stops page load
   23529 
   23530         We do policy navigation checks for the regular load case, fragment scroll and redirects.
   23531         We only want to stop the load, change the provisional data source etc in the regular load case. 
   23532 
   23533         Reviewed by darin.
   23534 
   23535         * WebView.subproj/WebFramePrivate.m: got rid of _prepareForProvisionalLoadWithDataSource:: since the work done in this method only needs to be done in _continueLoadRequestAfterNavigationPolicy:: (which covers the regular load case).
   23536         (-[WebFrame _invalidatePendingPolicyDecisionCallingDefaultAction:]): don't clear policyDataSource because it needs to be called in _continueLoadRequestAfterNavigationPolicy::
   23537         (-[WebFrame _setPolicyDataSource:]): new
   23538         (-[WebFrame _checkNavigationPolicyForRequest:dataSource:formState:andCall:withSelector:]): don't call _prepareForProvisionalLoadWithDataSource::, don't muck with policyDataSource because it is only needed in the regular load case
   23539         (-[WebFrame _continueAfterNavigationPolicy:]): don't call _prepareForProvisionalLoadWithDataSource::, call _setPolicyDataSource:nil after _continueLoadRequestAfterNavigationPolicy:: has used policyDataSource
   23540         (-[WebFrame _continueLoadRequestAfterNavigationPolicy:formState:]): this method covers the regular load case. This is where we need to stop the load, set the load type and the provisional data source. Code was in _prepareForProvisionalLoadWithData
   23541 
   23542 
   23543 
   23544 
   23545 Source::
   23546         (-[WebFrame _loadDataSource:withLoadType:formState:]): set the policyLoadType and policyDataSource (the beginning of the regular load case)
   23547 
   23548 2003-06-10  Richard Williamson   <rjw (a] apple.com>
   23549 
   23550         Back out incorrect fix to 3287862.
   23551 
   23552 2003-06-10  Chris Blumenberg  <cblu (a] apple.com>
   23553 
   23554         Fixed: <rdar://problem/3156169>: cmd-click opens new win but stops loading in prev win
   23555 
   23556         Reviewed by rjw.
   23557 
   23558         * WebView.subproj/WebFrame.m:
   23559         (-[WebFrame stopLoading]): set the provisional data source to nil to avoid a newly added assert in [WebFramePrivate setProvisionalDataSource:] 
   23560         and since it is wasteful to retain it in this case
   23561         * WebView.subproj/WebFramePrivate.h: added policyDataSource and policyLoadType ivars
   23562         * WebView.subproj/WebFramePrivate.m:
   23563         (-[WebFramePrivate dealloc]): added an assert
   23564         (-[WebFramePrivate setProvisionalDataSource:]): added an assert
   23565         (-[WebFrame _isLoadComplete]): formatting tweak
   23566         (-[WebFrame _invalidatePendingPolicyDecisionCallingDefaultAction:]): reset policyDataSource
   23567         (-[WebFrame _checkNewWindowPolicyForRequest:action:frameName:formState:andCall:withSelector:]): formatting tweak
   23568         (-[WebFrame _prepareForProvisionalLoadWithDataSource:loadType:]): new, calls stopLoading, _setLoadType and _setProvisionalDataSource
   23569         (-[WebFrame _checkNavigationPolicyForRequest:dataSource:formState:andCall:withSelector:]): call _prepareForProvisionalLoadWithDataSource:loadType: only in the "use" policy case
   23570         (-[WebFrame _continueAfterNavigationPolicy:]): call _setProvisionalDataSource:andLoadType:
   23571         (-[WebFrame _continueFragmentScrollAfterNavigationPolicy:formState:]): formatting tweak
   23572         (-[WebFrame _loadURL:referrer:loadType:target:triggeringEvent:form:formValues:]): formatting tweak
   23573         (-[WebFrame _continueLoadRequestAfterNavigationPolicy:formState:]): if there is no request to continue with, don't reset things like the provisional data source since it was never unset in this case
   23574         (-[WebFrame _loadDataSource:withLoadType:formState:]): don't call stopLoading, _setLoadType and _setProvisionalDataSource, since that stops the frame even for command-click and option-click. Do this work in _prepareForProvisionalLoadWithDataSource
   23575 
   23576 
   23577 
   23578 
   23579 :loadType: instead.
   23580 
   23581 2003-06-10  Richard Williamson   <rjw (a] apple.com>
   23582 
   23583         Fixed 3287862.  Don't override resize flags
   23584         when decoding WebView.
   23585 
   23586         Reviewed by Chris.
   23587 
   23588         * WebView.subproj/WebView.m:
   23589         (-[WebView _commonInitializationFrameName:groupName:]):
   23590 
   23591 2003-06-10  Chris Blumenberg  <cblu (a] apple.com>
   23592 
   23593         Fixed: <rdar://problem/3286006>: Carbon Java plug-in problems may require workaround in WebKit
   23594 
   23595         Reviewed by john.
   23596 
   23597         * Plugins.subproj/WebPluginDatabase.m:
   23598         (-[WebPluginDatabase canUsePlugin:]): if in a carbon app, only use the mach-o java plug-in when its version is anything but 1.0.0
   23599         (-[WebPluginDatabase pluginForKey:withEnumeratorSelector:]): call canUsePlugin on all the plug-ins
   23600 
   23601 
   23602 2003-06-10  Vicki Murley  <vicki (a] apple.com>
   23603 
   23604         Reviewed by john. 
   23605 
   23606         * WebKit.order: new order file for 1.0
   23607 
   23608 2003-06-09  Chris Blumenberg  <cblu (a] apple.com>
   23609 
   23610         * WebView.subproj/WebDataSource.h: Removed FIXME related to pageTitle.
   23611 
   23612 2003-06-09  Chris Blumenberg  <cblu (a] apple.com>
   23613 
   23614         <rdar://problem/3283359>: don't load Cocoa Java plug-in if in Carbon app
   23615 
   23616 
   23617         Reviewed by darin.
   23618 
   23619         * Plugins.subproj/WebPluginDatabase.h: removed pluginForFilename, wasn't being used
   23620         * Plugins.subproj/WebPluginDatabase.m:
   23621         (-[WebPluginDatabase pluginForKey:withEnumeratorSelector:]): don't use the plug-in if ![self isCocoa] && [[[webPlugin bundle] bundleIdentifier] isEqualToString:JavaCocoaPluginIdentifier]
   23622 
   23623 2003-06-09  Chris Blumenberg  <cblu (a] apple.com>
   23624 
   23625         Fixed: <rdar://problem/3284848>: REGRESSION: repro crash in Flash handling null event, going back to Japanese Disney page
   23626 
   23627         When restarting plug-ins from the BF cache, we were not calling NPP_SetWindow.
   23628 
   23629         Reviewed by darin.
   23630 
   23631         * Plugins.subproj/WebBaseNetscapePluginView.m:
   23632         (-[WebBaseNetscapePluginView stop]): set the window type to 0 to force the calling of NPP_SetWindow 
   23633 
   23634 === Safari-83 ===
   23635 
   23636 2003-06-07  Darin Adler  <darin (a] apple.com>
   23637 
   23638         * English.lproj/StringsNotToBeLocalized.txt: Updated for recent changes.
   23639 
   23640 2003-06-07  Darin Adler  <darin (a] apple.com>
   23641 
   23642         Rolled out Chris's fix for 3156169 because it was causing a lot of crashes
   23643         and problems with basic behavior. We can try again later.
   23644         
   23645         One of the problems was that Back wasn't working. Another was that you could
   23646         not follow the link at the top of the page at kbb.com. More testing seemed to
   23647         reveal still more problems.
   23648         
   23649         * WebView.subproj/WebFramePrivate.h: Rolled back to previous version.
   23650         * WebView.subproj/WebFramePrivate.m: Ditto.
   23651 
   23652 2003-06-06  Richard Williamson  <rjw (a] apple.com>
   23653 
   23654         Fixed 3283236.  Remove use of forward declarations in public header because
   23655         CodeWarrior pukes on 'em.
   23656 
   23657         Reviewed by Chris.
   23658 
   23659         * WebView.subproj/WebDataSource.h:
   23660 
   23661 2003-06-06  Chris Blumenberg  <cblu (a] apple.com>
   23662 
   23663         Fixed: <rdar://problem/3156169>: cmd-click opens new win but stops loading in prev win
   23664 
   23665         Reviewed by darin.
   23666 
   23667         * WebView.subproj/WebFramePrivate.h: added policyDataSource and policyLoadType as ivars
   23668         * WebView.subproj/WebFramePrivate.m:
   23669         (-[WebFramePrivate dealloc]): added ASSERT
   23670         (-[WebFramePrivate setProvisionalDataSource:]): added ASSERT
   23671         (-[WebFrame _isLoadComplete]): formatting tweak
   23672         (-[WebFrame _invalidatePendingPolicyDecisionCallingDefaultAction:]): clear policyDataSource
   23673         (-[WebFrame _checkNewWindowPolicyForRequest:action:frameName:formState:andCall:withSelector:]): formatting tweak
   23674         (-[WebFrame _checkNavigationPolicyForRequest:dataSource:formState:andCall:withSelector:]): retain policyDataSource
   23675         (-[WebFrame _continueAfterNavigationPolicy:]): stop the load, set the load type, set the provisional data source in the "use" case
   23676         (-[WebFrame _loadURL:referrer:loadType:target:triggeringEvent:form:formValues:]): formatting tweak
   23677         (-[WebFrame _continueLoadRequestAfterNavigationPolicy:formState:]): don't reset things if something other than "use" has been chosen
   23678         (-[WebFrame _loadDataSource:withLoadType:formState:]): DON'T stop the load, set the load type, set the provisional data source
   23679 
   23680 2003-06-06  Chris Blumenberg  <cblu (a] apple.com>
   23681 
   23682         Fixed: <rdar://problem/3282881>: Java plugin fails in carbon WebKit apps
   23683 
   23684         Fixed by Mike Hay, reviewed by me.
   23685 
   23686         * Plugins.subproj/WebPluginDatabase.m:
   23687         (-[WebPluginDatabase initIsCocoa]):
   23688         (-[WebPluginDatabase isCocoa]):
   23689         (-[WebPluginDatabase pluginForKey:withEnumeratorSelector:]): don't load cocoa plug-ins if isCocoa.
   23690 
   23691 2003-06-05  John Sullivan  <sullivan (a] apple.com>
   23692 
   23693         - fixed 3266216 -- repro crash in 
   23694         -[WebBaseResourceHandleDelegate connection:didReceiveData:] 
   23695         in GIA Application
   23696 
   23697         The problem was that an NSURLConnection delegate object (in this 
   23698         case a WebMainResourceClient) was being dealloc'ed during one of
   23699         its connection delegate methods. To prevent this kind of problem,
   23700         I added [self retain]/[self release] guards around the meat of
   23701         all of the connection delegate methods in which arbitrary code
   23702         could be run. Another approach would be to do this retain/release
   23703         pair in NSURLConnection, but Darin deemed it wiser not to muck with
   23704         Foundation at this point for this issue.
   23705 
   23706         Reviewed by Darin
   23707 
   23708         * Plugins.subproj/WebNetscapePluginStream.m:
   23709         (-[WebNetscapePluginConnectionDelegate connection:didReceiveResponse:]):
   23710         guard with [self retain]/[self release]
   23711         (-[WebNetscapePluginConnectionDelegate connection:didReceiveData:]):
   23712         ditto
   23713         (-[WebNetscapePluginConnectionDelegate connection:didFailWithError:]):
   23714         ditto
   23715 
   23716         * WebCoreSupport.subproj/WebSubresourceClient.m:
   23717         (-[WebSubresourceClient connection:didReceiveResponse:]):
   23718         ditto
   23719         (-[WebSubresourceClient connection:didReceiveData:]):
   23720         ditto
   23721 
   23722         * WebView.subproj/WebBaseResourceHandleDelegate.m:
   23723         (-[WebBaseResourceHandleDelegate connection:willSendRequest:redirectResponse:]):
   23724         ditto
   23725         (-[WebBaseResourceHandleDelegate connection:didReceiveAuthenticationChallenge:]):
   23726         ditto
   23727         (-[WebBaseResourceHandleDelegate connection:didCancelAuthenticationChallenge:]):
   23728         ditto
   23729         (-[WebBaseResourceHandleDelegate connection:didReceiveResponse:]):
   23730         ditto
   23731         (-[WebBaseResourceHandleDelegate connection:didReceiveData:]):
   23732         ditto. Also, commented out two assertions that fire illegitimately in the steps in
   23733         this bug report.
   23734         (-[WebBaseResourceHandleDelegate connection:didFailWithError:]):
   23735         ditto
   23736 
   23737         * WebView.subproj/WebMainResourceClient.m:
   23738         (-[WebMainResourceClient connection:willSendRequest:redirectResponse:]):
   23739         ditto
   23740         (-[WebMainResourceClient connection:didReceiveResponse:]):
   23741         ditto
   23742         (-[WebMainResourceClient connection:didReceiveData:]):
   23743         ditto
   23744 
   23745 2003-06-04  Richard Williamson   <rjw (a] apple.com>
   23746 
   23747         Fixed 3277775.  Send less notifications.  Notifcations suck!
   23748 
   23749         Reviewed by David.
   23750 
   23751         * WebView.subproj/WebViewPrivate.h:
   23752         * WebView.subproj/WebViewPrivate.m:
   23753         (-[WebViewPrivate init]):
   23754         (-[WebView _progressStarted]):
   23755         (-[WebView _progressCompleted]):
   23756         (-[WebView _incrementProgressForConnection:data:]):
   23757 
   23758 2003-06-04  Darin Adler  <darin (a] apple.com>
   23759 
   23760         Reviewed by John.
   23761 
   23762         - fixed 3277675 -- REGRESSION: mouse wheel events not coalesced
   23763 
   23764         * WebView.subproj/WebHTMLViewPrivate.m: (-[WebNSWindow nextEventMatchingMask:untilDate:inMode:dequeue:]):
   23765         When the mask is scroll wheel mask, instead of getting no events, do some tricks to get the next
   23766         event if it is a scroll wheel event, and nothing otherwise. Also ifdef the fix so we don't compile
   23767         it on Panther, since the underlying bug was fixed on Panther.
   23768     
   23769         - other changes
   23770 
   23771         * WebCoreSupport.subproj/WebImageRenderer.m: (-[WebImageRenderer copyWithZone:]):
   23772         Remove unneeded line of code. The super function copies all simple fields for us.
   23773 
   23774         * Plugins.subproj/WebBaseNetscapePluginView.m:
   23775         (-[WebBaseNetscapePluginView setMIMEType:]): Use copy instead of retain, do it in the right order
   23776         to avoid "same object release/retain" disease.
   23777         (-[WebBaseNetscapePluginView setBaseURL:]): Do retain before release (same reason as above).
   23778 
   23779 2003-06-03  Chris Blumenberg  <cblu (a] apple.com>
   23780 
   23781         Fixed: 3278496 - <rdar://problem/3278496>:        NSURLDownload: initWithSource and source should be renamed to initWithRequest and request
   23782 
   23783         Reviewed by rjw.
   23784 
   23785         * Misc.subproj/WebDownload.m:
   23786         (-[WebDownload initWithRequest:delegate:]):
   23787         (-[WebDownload _initWithRequest:delegate:directory:]):
   23788         * WebView.subproj/WebImageView.m:
   23789         (-[WebImageView setNeedsDisplay:]):
   23790         * WebView.subproj/WebViewPrivate.m:
   23791         (-[WebView _downloadURL:toDirectory:]):
   23792 
   23793 2003-06-03  Richard Williamson   <rjw (a] apple.com>
   23794         Fixed 3263188, 3274636.
   23795         Written by Ed Voas.  Reviewed by Richard.
   23796 
   23797         * Carbon.subproj/CarbonUtils.m:
   23798         (WebInitForCarbon):
   23799         Ensure the process info is correctly initialized so the correct
   23800         "flavour" (carbon) is detected.
   23801 
   23802         * Carbon.subproj/HIWebView.m:
   23803         (Draw):
   23804         Always draw the growbox after drawing the web view,
   23805         assuming overlap.
   23806 
   23807 === Safari-82 ===
   23808 
   23809 2003-06-03  Chris Blumenberg  <cblu (a] apple.com>
   23810 
   23811         Fixed: <rdar://problem/3167792>: hang in _web_dragPromisedImage dragging 4 MB image
   23812 
   23813         Reviewed by john.
   23814 
   23815         * Misc.subproj/WebNSViewExtras.m:
   23816         (-[NSView _web_dragPromisedImage:rect:URL:fileType:title:event:]): if the original image is greater than 1500x1500, use a file icon for the drag image to avoid hanging
   23817 
   23818 2003-06-02  Richard Williamson  <rjw (a] apple.com>
   23819 
   23820         Fix for 3250352.
   23821 
   23822         Reviewed by Chris.
   23823 
   23824         * WebView.subproj/WebDataSourcePrivate.m:
   23825         (-[WebDataSource _startLoading:]):
   23826         Check respondsToSelector: before calling.
   23827 
   23828         * WebView.subproj/WebResourceLoadDelegate.h:
   23829         * WebView.subproj/WebUIDelegate.h:
   23830         Headerdoc tweaks.
   23831 
   23832 === Safari-81 ===
   23833 
   23834 2003-06-02  Chris Blumenberg  <cblu (a] apple.com>
   23835 
   23836         Fixed: <rdar://problem/3154910>: No video when viewing QT plug-in content at some pages but audio works
   23837 
   23838         This fix works around QT plug-in bug 3275755, but I think the fix is logical and worth keeping even after 3275755 is fixed.
   23839 
   23840 
   23841         Eric Carlson:
   23842         The problem happens when you call NPP_SetWindow with a 0 width or height more than once. The first call to NPP_SetWindow always seems to have width and height set to 0, but the next call sometimes has it set to the correct values (those in the EMBED tag)
   23843 
   23844 
   23845 
   23846 
   23847 . This is when it draws successfully. It seems to me that the fix is to always pass the correct width and height to NPP_SetWindow. You always position the plug-in far offscreen (1000000, -52) and set the clip region to an empty rect (48576, 52, 48576, 52)
   23848 
   23849 
   23850 
   23851 
   23852  so there isn't really any danger of the plug-in drawing anyway. Additionally, you pass the correct width and height in the call to NPP_New before the first call to NPP_SetWindow.
   23853 
   23854         Reviewed by john, darin.
   23855 
   23856         * Plugins.subproj/WebBaseNetscapePluginView.h:
   23857         * Plugins.subproj/WebBaseNetscapePluginView.m:
   23858         (-[WebBaseNetscapePluginView saveAndSetPortStateForUpdate:]): use the NSView width and height if greater than 0, else use the tag specified width and height
   23859         (-[WebBaseNetscapePluginView isNewWindowEqualToOldWindow]): new
   23860         (-[WebBaseNetscapePluginView setWindow]): NPP_SetWindow may be expensive, only call it if it has changed
   23861         * Plugins.subproj/WebNetscapePluginPackage.m:
   23862         (-[WebNetscapePluginPackage launchRealPlayer]): tweak, no need to store error code since it is ignored
   23863 
   23864 2003-05-30  Richard Williamson  <rjw (a] apple.com>
   23865 
   23866         Fixed 3272516.  Items are now expired from the
   23867         b/f cache if they are older than 30 minutes.  This
   23868         number was pulled out of our #!$es.  Also did
   23869         some cleanup of the b/f cache code.
   23870 
   23871         Reviewed by Ken.
   23872 
   23873         * WebCoreSupport.subproj/WebBridge.m:
   23874         (-[WebBridge saveDocumentToPageCache:]):
   23875         * WebView.subproj/WebFramePrivate.h:
   23876         * WebView.subproj/WebFramePrivate.m:
   23877         (-[WebFrame _transitionToCommitted:]):
   23878         (-[WebFrame _createPageCacheForItem:]):
   23879         (-[WebFrame _setState:]):
   23880         (-[WebFrame _loadItem:withLoadType:]):
   23881         (-[WebFrame _continueLoadRequestAfterNavigationPolicy:formState:]):
   23882         * WebView.subproj/WebPreferences.m:
   23883         (+[WebPreferences initialize]):
   23884         (-[WebPreferences _resourceTimedLayoutEnabled]):
   23885         (-[WebPreferences _backForwardCacheExpirationInterval]):
   23886         * WebView.subproj/WebPreferencesPrivate.h:
   23887         * WebView.subproj/WebView.h:
   23888 
   23889         * WebView.subproj/WebPreferences.h: Cleaned up some headerdoc
   23890         comments.
   23891 2003-05-29  Richard Williamson   <rjw (a] apple.com>
   23892 
   23893         Implemented 'estimatedProgress' method on WebView.  This should
   23894         eventually replace the broken algorithm on WebBrowser.  Maybe
   23895         for panther.
   23896 
   23897         Reviewed by Chris.
   23898 
   23899         * WebKit.exp:
   23900         * WebView.subproj/WebBaseResourceHandleDelegate.m:
   23901         (-[WebBaseResourceHandleDelegate connection:didReceiveResponse:]):
   23902         (-[WebBaseResourceHandleDelegate connection:didReceiveData:]):
   23903         (-[WebBaseResourceHandleDelegate connectionDidFinishLoading:]):
   23904         (-[WebBaseResourceHandleDelegate connection:didFailWithError:]):
   23905         (-[WebBaseResourceHandleDelegate cancelWithError:]):
   23906         * WebView.subproj/WebDataSourcePrivate.m:
   23907         (-[WebDataSource _startLoading:]):
   23908         * WebView.subproj/WebFramePrivate.h:
   23909         * WebView.subproj/WebFramePrivate.m:
   23910         (-[WebFrame _isLoadComplete]):
   23911         (-[WebFrame _numPendingOrLoadingRequests:]):
   23912         * WebView.subproj/WebView.h:
   23913         * WebView.subproj/WebView.m:
   23914         (-[WebView estimatedProgress]):
   23915         * WebView.subproj/WebViewPrivate.h:
   23916         * WebView.subproj/WebViewPrivate.m:
   23917         (-[WebViewPrivate dealloc]):
   23918         (-[WebView _isPerformingProgrammaticFocus]):
   23919         (-[WebView _progressStarted]):
   23920         (-[WebView _progressCompleted]):
   23921         (-[WebView _incrementProgressForConnection:data:]):
   23922         (-[WebView _completeProgressForConnection:]):
   23923 
   23924         Code cleanup.  Moved variable initialization into block that
   23925         check for non-nil self.
   23926 
   23927         * WebCoreSupport.subproj/WebImageRenderer.m:
   23928         (-[WebImageRenderer initWithMIMEType:]):
   23929         (-[WebImageRenderer initWithData:MIMEType:]):
   23930         (-[WebImageRenderer initWithContentsOfFile:]):
   23931 
   23932 2003-05-29  Richard Williamson   <rjw (a] apple.com>
   23933 
   23934         Fixed 3272226.  The shared image factory was being released
   23935         when any renderer had 0 reps!
   23936 
   23937         Reviewed by John.
   23938 
   23939         * WebCoreSupport.subproj/WebImageRendererFactory.m:
   23940         (-[WebImageRendererFactory imageRendererWithMIMEType:]):
   23941 
   23942 2003-05-29  Chris Blumenberg  <cblu (a] apple.com>
   23943 
   23944         Fixed: 3151216 - Safari crashes on Drag&Drop if plugin dialog is open
   23945         Reviewed by rjw.
   23946 
   23947         * Misc.subproj/WebNSViewExtras.m:
   23948         (-[NSView _web_dragOperationForDraggingInfo:]): return NSDragOperationNone is the app has a modal window so the current page can't be changed with a drag
   23949         * WebView.subproj/WebView.m:
   23950         (-[WebView draggingEntered:]): return _web_dragOperationForDraggingInfo
   23951 
   23952 2003-05-29  Chris Blumenberg  <cblu (a] apple.com>
   23953 
   23954         Fixed: 3273109 - leak from functionPointerForTVector in -[WebNetscapePluginPackage load]
   23955 
   23956         * Plugins.subproj/WebNetscapePluginPackage.m:
   23957         (-[WebNetscapePluginPackage load]): free the main function after using it
   23958 
   23959 2003-05-29  Richard Williamson   <rjw (a] apple.com>
   23960         Fixed 3273115.  Always use pixel dimensions,
   23961         not absolute dimensions.
   23962 
   23963         Reviewed by Ken.
   23964 
   23965         * WebCoreSupport.subproj/WebImageRenderer.m:
   23966         (-[WebImageRenderer incrementalLoadWithBytes:length:complete:]):
   23967 
   23968 2003-05-29  Richard Williamson   <rjw (a] apple.com>
   23969 
   23970         Fix 3272292.  Ensure that loadStatus is always
   23971         initialized to NSImageRepLoadStatusUnknownType.
   23972 
   23973         Reviewed by Chris.
   23974 
   23975         * WebCoreSupport.subproj/WebImageRenderer.m:
   23976         (-[WebImageRenderer initWithMIMEType:]):
   23977         (-[WebImageRenderer initWithData:MIMEType:]):
   23978         (-[WebImageRenderer initWithContentsOfFile:]):
   23979 
   23980 2003-05-28  Ken Kocienda  <kocienda (a] apple.com>
   23981 
   23982         Reviewed by Richard
   23983 
   23984         Fix for this bug:
   23985 
   23986         Radar 3260323 (Some links at nike.com cause assertion failure 
   23987         (connectionDidFinishLoading sent after cancel))
   23988 
   23989         Added a flag which is set when a load is cancelled. This flag prevents
   23990         bad behvior when loads that finish cause the load itself to be
   23991         cancelled (which could happen with a javascript that changes the
   23992         window location). This is used to prevent both the body of
   23993         cancelWithError: and the body of connectionDidFinishLoading: running
   23994         for a single delegate. Cancelling wins.
   23995 
   23996         * WebView.subproj/WebBaseResourceHandleDelegate.h:
   23997         * WebView.subproj/WebBaseResourceHandleDelegate.m:
   23998         (-[WebBaseResourceHandleDelegate connectionDidFinishLoading:]):
   23999         (-[WebBaseResourceHandleDelegate cancelWithError:]):
   24000 
   24001 2003-05-28  Chris Blumenberg  <cblu (a] apple.com>
   24002 
   24003         Fixed: 3270576 - RealPlayer plug-in fails to load
   24004 
   24005         Reviewed by darin.
   24006 
   24007         * Plugins.subproj/WebNetscapePluginPackage.m:
   24008         (-[WebNetscapePluginPackage launchRealPlayer]): new
   24009         (-[WebNetscapePluginPackage load]): call launchRealPlayer to regenerate its broken plist file
   24010 
   24011 2003-05-28  Richard Williamson   <rjw (a] apple.com>
   24012 
   24013         Fixed 3165631 (and other similar).
   24014         Fixed 3262592.
   24015 
   24016         We now set NSImage's cache mode to NSImageCacheNever during
   24017         progressive loads.  It gets reset to NSImageCacheDefault when
   24018         loads complete.
   24019 
   24020         If an image is scaled, NSImage appears to create a NSCacheImageRep
   24021         with the wrong size during progessive image loading.  Specifically
   24022         it appears to create a cached rep with the original size.
   24023 
   24024         Reviewed by Chris.
   24025 
   24026         * WebCoreSupport.subproj/WebImageRenderer.m:
   24027         (-[WebImageRenderer incrementalLoadWithBytes:length:complete:]):
   24028         (-[WebImageRenderer drawClippedToValidInRect:fromRect:]):
   24029         * WebCoreSupport.subproj/WebImageRendererFactory.m:
   24030         (-[WebImageRendererFactory imageRendererWithMIMEType:]):
   24031 
   24032         * WebView.subproj/WebPreferences.h:
   24033         Updated headerdoc comments.
   24034 
   24035 2003-05-27  Chris Blumenberg  <cblu (a] apple.com>
   24036 
   24037         Fixed: 3233442 - Crash in -[WebNetscapePluginPackage load] at http://www.adultswim.com/
   24038 
   24039         Reviewed by mjs.
   24040 
   24041         * Plugins.subproj/WebNetscapePluginPackage.m:
   24042         (-[WebNetscapePluginPackage load]): don't call NPP_Shutdown if the plug-in fails to load
   24043 
   24044 2003-05-27  Chris Blumenberg  <cblu (a] apple.com>
   24045 
   24046                 Don't load and save icons if the icon DB directory default is not set.
   24047 
   24048         Reviewed by darin.
   24049 
   24050         * Misc.subproj/WebIconDatabase.m:
   24051         (-[WebIconDatabase _createFileDatabase]): don't create the DB if the default is not set
   24052         (-[WebIconDatabase _loadIconDictionaries]): don't load the dictionaries if the DB doesn't exist
   24053         (-[WebIconDatabase _updateFileDatabase]): don't update the DB if it doesn't exist
   24054         * WebView.subproj/WebDataSourcePrivate.m:
   24055         (-[WebDataSource _loadIcon]): don't load icons if the icon DB directory default is not set
   24056 
   24057 2003-05-27  Maciej Stachowiak  <mjs (a] apple.com>
   24058 
   24059         Rolled in fix from Safari-80~1-branch
   24060     2003-05-27  Maciej Stachowiak  <mjs (a] apple.com>
   24061         
   24062         Reviewed by Darin.
   24063 
   24064         * WebKit.pbproj/project.pbxproj: Removed no longer needed and harmful flag.
   24065 
   24066 2003-05-27  Richard Williamson   <rjw (a] apple.com>
   24067 
   24068         Fix for IB.
   24069 
   24070         Reviewed by Eric Seymour.
   24071 
   24072         * WebView.subproj/WebPreferences.m:
   24073         (-[WebPreferences initWithIdentifier:]):
   24074         Added retain to uniqued instance.  (As we did recently
   24075         for initWithCoder:). 
   24076 
   24077 2003-05-27  Chris Blumenberg  <cblu (a] apple.com>
   24078 
   24079         Fixed: 3270013 - Exception raised when visiting http://www.shutterfly.com/favicon.ico
   24080 
   24081         Reviewed by john.
   24082 
   24083         * WebCoreSupport.subproj/WebImageRendererFactory.m:
   24084         (-[WebImageRendererFactory imageRendererWithBytes:length:MIMEType:]): return nil if the image has no representations
   24085 
   24086 2003-05-27  Chris Blumenberg  <cblu (a] apple.com>
   24087 
   24088         Fixed: 3242864 - repro assertion failure in WebIconDatabase.m for www.shutterfly.com
   24089 
   24090         Reviewed by john.
   24091 
   24092         * Misc.subproj/WebIconLoader.m:
   24093         (-[WebIconLoader connectionDidFinishLoading:]): don't set the icon on the DB if it has no representations
   24094 
   24095 2003-05-27  Richard Williamson   <rjw (a] apple.com>
   24096 
   24097         Fixes for IB.
   24098 
   24099         Reviewed by Eric Seymour.
   24100 
   24101         * WebView.subproj/WebPreferences.m:
   24102         (-[WebPreferences initWithCoder:]):
   24103         Added retain to uniqued instance 
   24104 
   24105         * WebView.subproj/WebView.m:
   24106         (-[WebView initWithCoder:]):
   24107         (-[WebView setPreferences:]):
   24108         Added release check to global uniquing dictionary.
   24109 
   24110 2003-05-23  Richard Williamson   <rjw (a] apple.com>
   24111 
   24112         Tweaks for IB.
   24113         Updated WebView and WebPreferences to use
   24114         keyed archiving.
   24115         Added private method to export settable user
   24116         defaults keys.
   24117 
   24118         Reviewed by Ken.
   24119 
   24120         * WebView.subproj/WebPreferences.m:
   24121         (-[WebPreferences initWithCoder:]):
   24122         (+[WebPreferences _userDefaultsKeysForIB]):
   24123         * WebView.subproj/WebPreferencesPrivate.h:
   24124         * WebView.subproj/WebView.m:
   24125         (-[WebView initWithCoder:]):
   24126 
   24127 2003-05-23  Richard Williamson   <rjw (a] apple.com>
   24128 
   24129         Added export of _WebHistoryItemChangedNotification.
   24130 
   24131         * WebKit.exp:
   24132 
   24133 2003-05-23  Chris Blumenberg  <cblu (a] apple.com>
   24134 
   24135         Fixed: 3259426 - Can't copy mailto links to clipboard
   24136 
   24137         Reviewed by john.
   24138 
   24139         * WebView.subproj/WebDefaultContextMenuDelegate.m:
   24140         (-[WebDefaultUIDelegate webView:contextMenuItemsForElement:defaultMenuItems:]): offer "Copy Link to Clipboard" for all links
   24141 
   24142 2003-05-22  Richard Williamson   <rjw (a] apple.com>
   24143 
   24144         *** Public API change ***
   24145         100% compatible.  Added notification when history items
   24146         change values.
   24147 
   24148         Fixed 3265672
   24149         Reviewed by John.
   24150 
   24151         * History.subproj/WebHistoryItem.h:
   24152         * History.subproj/WebHistoryItem.m:
   24153         (-[WebHistoryItem setAlternateTitle:]):
   24154         (-[WebHistoryItem setURL:]):
   24155         (-[WebHistoryItem setOriginalURLString:]):
   24156         (-[WebHistoryItem setTitle:]):
   24157         (-[WebHistoryItem _setLastVisitedTimeInterval:]):
   24158 
   24159 2003-05-22  Richard Williamson   <rjw (a] apple.com>
   24160 
   24161         Fixed 3266464.  Build problem on panther caused by overly
   24162         pedantic gcc.
   24163 
   24164         Reviewed by John.
   24165 
   24166         * WebView.subproj/WebPreferences.m:
   24167         (-[WebPreferences initWithCoder:]):
   24168         * WebView.subproj/WebView.m:
   24169         (-[WebView initWithCoder:]):
   24170 
   24171 2003-05-22  Richard Williamson   <rjw (a] apple.com>
   24172 
   24173         Add _web to method in category name.
   24174 
   24175         Fixed 3266102.  @selector missing ":".
   24176 
   24177         Reviewed by Darin.
   24178 
   24179         * WebView.subproj/WebPreferences.m:
   24180         (+[WebPreferences _removeReferenceForIdentifier:]):
   24181         (-[NSMutableDictionary _web_checkLastReferenceForIdentifier:]):
   24182 
   24183 2003-05-22  Darin Adler  <darin (a] apple.com>
   24184 
   24185         Reviewed by John.
   24186 
   24187         - removed all entries except for jaguar.com because:
   24188             a) most of these sites now work fine without the spoofing or have gone away
   24189             b) nj.com and oregonlive.com do not work, but the spoofing committee (Mark,
   24190                Don, Dave, and me) decided we should stop spoofing and get them to fix
   24191                the sites instead
   24192           If we can resolve jaguar.com in a similar way, we can remove the spoofing
   24193           feature altogether.
   24194 
   24195         * WebView.subproj/WebUserAgentSpoofTable.gperf: Removed all but jaguar.com.
   24196         * WebView.subproj/WebUserAgentSpoofTable.c: Regenerated.
   24197 
   24198 2003-05-21  Richard Williamson   <rjw (a] apple.com>
   24199 
   24200         *** Public API Change ***
   24201         The fix for 3265442 requires new API.  This API is an addition
   24202         that is 100% compatible with the existing API.
   24203         
   24204         Provide support for IB to palettize WebView.
   24205         
   24206         Fixed 3265442.
   24207         Fixed 3263106.
   24208         
   24209         Reviewed by Chris.
   24210 
   24211         * WebView.subproj/WebPreferences.h:
   24212         * WebView.subproj/WebPreferences.m:
   24213         (-[WebPreferencesPrivate dealloc]):
   24214         (-[WebPreferences init]):
   24215         (-[WebPreferences initWithIdentifier:]):
   24216         (-[WebPreferences initWithCoder:]):
   24217         (-[WebPreferences encodeWithCoder:]):
   24218         (+[WebPreferences standardPreferences]):
   24219         (-[WebPreferences dealloc]):
   24220         (-[WebPreferences identifier]):
   24221         (-[WebPreferences _stringValueForKey:]):
   24222         (-[WebPreferences _setStringValue:forKey:]):
   24223         (-[WebPreferences _integerValueForKey:]):
   24224         (-[WebPreferences _setIntegerValue:forKey:]):
   24225         (-[WebPreferences _boolValueForKey:]):
   24226         (-[WebPreferences _setBoolValue:forKey:]):
   24227         (-[WebPreferences autosaves]):
   24228         (+[WebPreferences _getInstanceForIdentifier:]):
   24229         (+[WebPreferences _setInstance:forIdentifier:]):
   24230         (+[WebPreferences _removeReferenceForIdentifier:]):
   24231         (-[WebPreferences _postPreferencesChangesNotification]):
   24232         (-[NSMutableDictionary _checkLastReferenceForIdentifier:]):
   24233         * WebView.subproj/WebPreferencesPrivate.h:
   24234         * WebView.subproj/WebView.h:
   24235         * WebView.subproj/WebView.m:
   24236         (-[WebView _commonInitializationFrameName:groupName:]):
   24237         (-[WebView initWithCoder:]):
   24238         (-[WebView encodeWithCoder:]):
   24239         (-[WebView dealloc]):
   24240         (-[WebView setPreferencesIdentifier:]):
   24241         (-[WebView preferencesIdentifier]):
   24242 
   24243 2003-05-21  Chris Blumenberg  <cblu (a] apple.com>
   24244 
   24245         Fixed data source leak when viewing standalone plug-in content.
   24246 
   24247         Reviewed by rjw.
   24248 
   24249         * Plugins.subproj/WebBaseNetscapePluginStream.h: don't inherit from WebBaseResourceHandleDelegate
   24250         * Plugins.subproj/WebBaseNetscapePluginStream.m:
   24251         (-[WebBaseNetscapePluginStream transferMode]): new
   24252         * Plugins.subproj/WebNetscapePluginRepresentation.m:
   24253         (-[WebNetscapePluginRepresentation dealloc]): don't release the data source
   24254         (-[WebNetscapePluginRepresentation setDataSource:]): don't retain the data source
   24255         * Plugins.subproj/WebNetscapePluginStream.h:
   24256         * Plugins.subproj/WebNetscapePluginStream.m:
   24257         (-[WebNetscapePluginStream initWithRequest:pluginPointer:notifyData:]): create a WebNetscapePluginConnectionDelegate
   24258         (-[WebNetscapePluginStream dealloc]): release the WebNetscapePluginConnectionDelegate
   24259         (-[WebNetscapePluginStream start]): start the load on the WebNetscapePluginConnectionDelegate
   24260         (-[WebNetscapePluginStream stop]): start the load on the WebNetscapePluginConnectionDelegate
   24261         (-[WebNetscapePluginConnectionDelegate initWithStream:view:]): new class, inherits from WebBaseResourceHandleDelegate
   24262         (-[WebNetscapePluginConnectionDelegate _releaseResources]):
   24263         (-[WebNetscapePluginConnectionDelegate connection:didReceiveResponse:]):
   24264         (-[WebNetscapePluginConnectionDelegate connection:didReceiveData:]):
   24265         (-[WebNetscapePluginConnectionDelegate connectionDidFinishLoading:]):
   24266         (-[WebNetscapePluginConnectionDelegate connection:didFailWithError:]):
   24267         (-[WebNetscapePluginConnectionDelegate cancel]):
   24268         * WebView.subproj/WebBaseResourceHandleDelegate.h:
   24269         * WebView.subproj/WebBaseResourceHandleDelegate.m:
   24270         (-[WebBaseResourceHandleDelegate response]): new
   24271 
   24272 2003-05-21  Maciej Stachowiak  <mjs (a] apple.com>
   24273 
   24274         Reviewed by John.
   24275 
   24276         - fixed 3254473 - REGRESSION: nike help page reloads on mouseovers, triggered by onresize function
   24277 
   24278         REGRESSION: reload loop due to onresize handler (fortune.com, flipdog.com, stanford.edu)
   24279 
   24280         * WebView.subproj/WebHTMLView.m:
   24281         (-[WebHTMLView layoutToPageWidth:]): Go back to checking for at least one
   24282         layout instead of last layout event time. Measure size in a way that ignores
   24283         whether the scrollbares are there or not.
   24284         * WebView.subproj/WebHTMLViewPrivate.h: Remove last layout event time and
   24285         add back laid out at least once boolean.
   24286 
   24287 2003-05-21  Chris Blumenberg  <cblu (a] apple.com>
   24288 
   24289         These problems:
   24290         3184359 - icon exception closing window while typing
   24291         3245476 - Safari-78 crashes or hangs after IMDB Find and using the history menu to go back ...
   24292         are not or are no longer reproducible. They were caused by an exception raised in WebKit.
   24293         Since we don't use exceptions in WebKit, I've replaced the exception with an assert.
   24294                 Reviewed by john.
   24295 
   24296         * Misc.subproj/WebIconDatabase.m:
   24297         (-[WebIconDatabase _releaseFutureIconForURL:]): assert instead of exception if failure
   24298 
   24299 2003-05-21  Ed Voas <voas (a] apple.com> 
   24300 
   24301         - fixed 3262868: Update Carbon WebKit API prefixes
   24302         - fixed 3264980: Carbon support in WebKit needs to route mouse events properly
   24303         Reviewed by Richard.
   24304 
   24305         * Carbon.subproj/CarbonUtils.h:
   24306         * Carbon.subproj/CarbonUtils.m:
   24307         (WebInitForCarbon):
   24308         (WebConvertNSImageToCGImageRef):
   24309         * Carbon.subproj/HIWebView.h:
   24310         * Carbon.subproj/HIWebView.m:
   24311         (HIWebViewGetWebView):
   24312         (OwningWindowChanged):
   24313         (WindowHandler):
   24314         (HIWebViewEventHandler):
   24315         * WebKit.exp:
   24316 
   24317 2003-05-21  Vicki Murley  <vicki (a] apple.com>
   24318 
   24319         Reviewed by john 
   24320         - fixed 3234553: Safari and its frameworks should link using order files
   24321 
   24322         * WebKit.order: Added.
   24323         * WebKit.pbproj/project.pbxproj: set SECTORDER_FLAGS = -sectorder __TEXT __text WebKit.order;
   24324 
   24325 2003-05-20  Richard Williamson   <rjw (a] apple.com>
   24326 
   24327         Fixed 3262825.
   24328         Fixed 3245625.
   24329         Fixed 3262547.
   24330 
   24331         Recursively check items when going back/forward to ensure all
   24332         frame URLs are correct.
   24333 
   24334         Added some logging to help diagnose back/forward problems.
   24335 
   24336         Reviewed by John.
   24337 
   24338         * History.subproj/WebHistory.m:
   24339         (-[WebHistory addItem:]):
   24340         * Misc.subproj/WebKitLogging.h:
   24341         * Misc.subproj/WebKitLogging.m:
   24342         * WebView.subproj/WebDataSource.m:
   24343         (-[WebDataSource initWithRequest:]):
   24344         * WebView.subproj/WebFramePrivate.m:
   24345         (-[WebFrame _createItem:]):
   24346         (-[WebFrame _createItemTreeWithTargetFrame:clippedAtTarget:]):
   24347         (-[WebFrame _transitionToCommitted:]):
   24348         (-[WebFrame _URLsMatchItem:]):
   24349         (-[WebFrame _loadItem:withLoadType:]):
   24350 
   24351 === Safari-80 ===
   24352 
   24353 2003-05-20  Ken Kocienda  <kocienda (a] apple.com>
   24354 
   24355         Reviewed by Darin
   24356 
   24357         Due to some header file changes in Foundation on Panther, 
   24358         Tweaked some includes so that WebKit builds on Jaguar 
   24359         and Panther.
   24360 
   24361         * Carbon.subproj/CarbonWindowFrame.m:
   24362         * Plugins.subproj/WebNetscapePluginPackage.m:
   24363         * Plugins.subproj/WebPluginPackage.m:
   24364 
   24365 2003-05-19  Maciej Stachowiak  <mjs (a] apple.com>
   24366 
   24367         - fixed 3261096 - Make WebKit an umbrella framework
   24368 
   24369         * WebKit.pbproj/project.pbxproj: Build WebKit as a public umbrella
   24370         framework when doing a B&I build.
   24371 
   24372 2003-05-19  Ken Kocienda  <kocienda (a] apple.com>
   24373 
   24374         Reviewed by Darin
   24375 
   24376         * Panels.subproj/WebAuthenticationPanel.m: Now imports Foundation/NSURLCredential.h
   24377         * WebCoreSupport.subproj/WebCookieAdapter.m: Now imports Foundation/NSHTTPCookie.h
   24378 
   24379 2003-05-19  Ken Kocienda  <kocienda (a] apple.com>
   24380 
   24381         Reviewed by Darin
   24382 
   24383         Changed imports to include headers from Foundation                   
   24384         instead of WebFoundation. 
   24385 
   24386         Removed WebFoundation.framework as a dependency in
   24387         the project file.
   24388 
   24389         * History.subproj/WebHistory.m:
   24390         * History.subproj/WebHistoryItem.m:
   24391         * History.subproj/WebHistoryPrivate.m:
   24392         * History.subproj/WebURLsWithTitles.m:
   24393         * Misc.subproj/WebDownload.h:
   24394         * Misc.subproj/WebDownload.m:
   24395         * Misc.subproj/WebFileDatabase.m:
   24396         * Misc.subproj/WebIconDatabase.m:
   24397         * Misc.subproj/WebIconLoader.m:
   24398         * Misc.subproj/WebKitErrors.m:
   24399         * Misc.subproj/WebKitErrorsPrivate.h:
   24400         * Misc.subproj/WebNSPasteboardExtras.m:
   24401         * Misc.subproj/WebNSViewExtras.m:
   24402         * Panels.subproj/WebAuthenticationPanel.h:
   24403         * Panels.subproj/WebAuthenticationPanel.m:
   24404         * Panels.subproj/WebPanelAuthenticationHandler.h:
   24405         * Panels.subproj/WebPanelAuthenticationHandler.m:
   24406         * Plugins.subproj/WebBaseNetscapePluginStream.m:
   24407         * Plugins.subproj/WebBaseNetscapePluginView.m:
   24408         * Plugins.subproj/WebNetscapePluginDocumentView.m:
   24409         * Plugins.subproj/WebNetscapePluginEmbeddedView.m:
   24410         * Plugins.subproj/WebNetscapePluginRepresentation.m:
   24411         * Plugins.subproj/WebNetscapePluginStream.m:
   24412         * Plugins.subproj/WebNullPluginView.m:
   24413         * Plugins.subproj/WebPluginController.m:
   24414         * WebCoreSupport.subproj/WebBridge.m:
   24415         * WebCoreSupport.subproj/WebCookieAdapter.m:
   24416         * WebCoreSupport.subproj/WebImageRendererFactory.m:
   24417         * WebCoreSupport.subproj/WebSubresourceClient.m:
   24418         * WebKit.pbproj/project.pbxproj:
   24419         * WebView.subproj/WebBaseResourceHandleDelegate.m:
   24420         * WebView.subproj/WebDataProtocol.h:
   24421         * WebView.subproj/WebDataProtocol.m:
   24422         * WebView.subproj/WebDataSource.m:
   24423         * WebView.subproj/WebDataSourcePrivate.m:
   24424         * WebView.subproj/WebDefaultContextMenuDelegate.m:
   24425         * WebView.subproj/WebDefaultFrameLoadDelegate.m:
   24426         * WebView.subproj/WebDefaultPolicyDelegate.m:
   24427         * WebView.subproj/WebDefaultResourceLoadDelegate.m:
   24428         * WebView.subproj/WebDefaultUIDelegate.m:
   24429         * WebView.subproj/WebFrame.m:
   24430         * WebView.subproj/WebFramePrivate.m:
   24431         * WebView.subproj/WebFrameView.m:
   24432         * WebView.subproj/WebFrameViewPrivate.m:
   24433         * WebView.subproj/WebHTMLRepresentation.m:
   24434         * WebView.subproj/WebHTMLViewPrivate.m:
   24435         * WebView.subproj/WebImageRepresentation.m:
   24436         * WebView.subproj/WebMainResourceClient.m:
   24437         * WebView.subproj/WebPreferences.m:
   24438         * WebView.subproj/WebTextRepresentation.m:
   24439         * WebView.subproj/WebTextView.m:
   24440         * WebView.subproj/WebUIDelegate.h:
   24441         * WebView.subproj/WebView.m:
   24442         * WebView.subproj/WebViewPrivate.m:
   24443 
   24444 2003-05-16  Maciej Stachowiak  <mjs (a] apple.com>
   24445 
   24446         Reviewed by John.
   24447 
   24448         - fixed 3255088 - repro crash in WebCredentialStorage remembering password from onlinetrafficsafety.com
   24449 
   24450         * WebView.subproj/WebFormDelegate.h:
   24451         * WebView.subproj/WebFormDelegate.m:
   24452         (-[WebFormDelegate frame:sourceFrame:willSubmitForm:withValues:submissionListener:]): Expect sourceFrame
   24453         argument.
   24454         * WebView.subproj/WebFramePrivate.m:
   24455         (-[WebFrame _loadURL:referrer:loadType:target:triggeringEvent:form:formValues:]): Include
   24456         source frame in form state.
   24457         (-[WebFrame _postWithURL:referrer:target:data:contentType:triggeringEvent:form:formValues:]):
   24458         Include source frame in form state. Post directly to the target
   24459         frame if it exists, since we want the form state to contain the
   24460         right source frame.
   24461         (-[WebFrame _continueLoadRequestAfterNavigationPolicy:formState:]): Pass source frame to form
   24462         delegate.
   24463         (-[WebFormState initWithForm:values:sourceFrame:]): New sourceFrame argument.
   24464         (-[WebFormState dealloc]): release sourceFrame.
   24465         (-[WebFormState sourceFrame]): New method.
   24466 
   24467 2003-05-16  Ken Kocienda  <kocienda (a] apple.com>
   24468 
   24469         Reviewed by Gramps
   24470 
   24471         Moved in WebDatabase and WebFileDatabase files from WebFoundation.
   24472 
   24473         Copied NSLRUFileList from WebFoundation and renamed to WebLRUFileList.
   24474 
   24475         Updated StringsNotToBeLocalized.txt.
   24476 
   24477         * English.lproj/StringsNotToBeLocalized.txt:
   24478         * Misc.subproj/WebDatabase.h:
   24479         * Misc.subproj/WebDatabase.m:
   24480         * Misc.subproj/WebFileDatabase.h:
   24481         * Misc.subproj/WebFileDatabase.m:
   24482         (-[WebFileDatabaseOp initWithCode:key:object:]):
   24483         (-[WebFileDatabaseOp perform:]):
   24484         (SetThreadPriority):
   24485         (-[WebFileDatabase _createLRUList:]):
   24486         (-[WebFileDatabase _truncateToSizeLimit:]):
   24487         (+[WebFileDatabase _syncLoop:]):
   24488         (-[WebFileDatabase setObject:forKey:]):
   24489         (-[WebFileDatabase removeObjectForKey:]):
   24490         (-[WebFileDatabase removeAllObjects]):
   24491         (-[WebFileDatabase objectForKey:]):
   24492         (-[WebFileDatabase performSetObject:forKey:]):
   24493         (-[WebFileDatabase performRemoveObjectForKey:]):
   24494         (-[WebFileDatabase close]):
   24495         (-[WebFileDatabase lazySync:]):
   24496         (-[WebFileDatabase sync]):
   24497         (-[WebFileDatabase count]):
   24498         (-[WebFileDatabase usage]):
   24499         * Misc.subproj/WebIconDatabase.m:
   24500         * Misc.subproj/WebKitLogging.h:
   24501         * Misc.subproj/WebKitLogging.m:
   24502         * Misc.subproj/WebLRUFileList.h: Added.
   24503         * Misc.subproj/WebLRUFileList.m: Added.
   24504         (WebLRUFileListCreate):
   24505         (WebLRUFileListRelease):
   24506         (WebLRUFileListRebuildFileDataUsingRootDirectory):
   24507         (WebLRUFileListRemoveFileWithPath):
   24508         (WebLRUFileListTouchFileWithPath):
   24509         (WebLRUFileListSetFileData):
   24510         (WebLRUFileListGetPathOfOldestFile):
   24511         (WebLRUFileListRemoveOldestFileFromList):
   24512         (WebLRUFileListContainsItem):
   24513         (WebLRUFileListGetFileSize):
   24514         (WebLRUFileListCountItems):
   24515         (WebLRUFileListGetTotalSize):
   24516         (WebLRUFileListRemoveAllFilesFromList):
   24517         (compareTimes):
   24518         (cStringEqual):
   24519         (cStringHash):
   24520         (NSLRUFileDataEqual):
   24521         (WebLRUFileListGetOldestFileData):
   24522         (NSLRUFileDataReleaseApplierFunction):
   24523         (NSLRUFileDataRelease):
   24524         (NSLRUFileDataBinaryHeapDumpApplierFunction):
   24525         (NSLRUFileDataDictDumpApplierFunction):
   24526         (WebLRUFileListDescription):
   24527         * WebKit.pbproj/project.pbxproj:
   24528 
   24529 2003-05-15  Chris Blumenberg  <cblu (a] apple.com>
   24530 
   24531                 Fixed: 3199310 - No user agent included in favicon.ico requests
   24532 
   24533         Reviewed by kocienda.
   24534 
   24535         * Misc.subproj/WebIconLoader.h:
   24536         * Misc.subproj/WebIconLoader.m:
   24537         (-[WebIconLoaderPrivate dealloc]): use the request ivar
   24538         (-[WebIconLoader URL]): ditto
   24539         (-[WebIconLoader startLoading]): ditto
   24540         (-[WebIconLoader connection:didReceiveData:]): ditto
   24541         (-[WebIconLoader connectionDidFinishLoading:]): ditto
   24542         * WebView.subproj/WebDataSourcePrivate.m: 
   24543         (-[WebDataSource _loadIcon]): create a icon loader with a request with the extra fields set
   24544 
   24545 2003-05-15  Chris Blumenberg  <cblu (a] apple.com>
   24546 
   24547         Fixed: 3155760 - Plug-in MIME and extension mapping should be case-insensitive
   24548 
   24549         Reviewed by john.
   24550 
   24551         * Plugins.subproj/WebBasePluginPackage.m:
   24552         (-[WebBasePluginPackage getPluginInfoFromBundleAndMIMEDictionary:]): store the extensions and MIMEs as lowercase strings
   24553         (-[NSArray _web_lowercaseStrings]): new, returns array of lowercase strings
   24554         * Plugins.subproj/WebNetscapePluginPackage.m:
   24555         (-[WebNetscapePluginPackage getPluginInfoFromResources]): store the extensions and MIMEs as lowercase strings
   24556         * Plugins.subproj/WebPluginDatabase.m:
   24557         (-[WebPluginDatabase pluginForMIMEType:]): lowercase the passed MIME type
   24558         (-[WebPluginDatabase pluginForExtension:]): lowercase the passed extension
   24559 
   24560 === Safari-79 ===
   24561 
   24562 2003-05-15  Ken Kocienda  <kocienda (a] apple.com>
   24563 
   24564         Reviewed by John
   24565 
   24566         Updated for recent changes.
   24567 
   24568         * English.lproj/StringsNotToBeLocalized.txt:
   24569 
   24570 2003-05-15  Ken Kocienda  <kocienda (a] apple.com>
   24571 
   24572         Reviewed by John
   24573 
   24574         Changed the names of some extras files in WebFoundation:
   24575         Updated imports and usages in this project.
   24576 
   24577         WebNSCalendarDateExtras -> NSCalendarDate_NSURLExtras
   24578         WebNSDataExtras -> NSData_NSURLExtras
   24579         WebNSDictionaryExtras -> NSDictionary_NSURLExtras
   24580         WebNSErrorExtras -> NSError_NSURLExtras
   24581         WebNSFileManagerExtras -> NSFileManager_NSURLExtras
   24582         WebNSObjectExtras -> NSObject_NSURLExtras
   24583         WebNSStringExtras -> NSString_NSURLExtras
   24584         WebNSURLExtras -> NSURL_NSURLExtras
   24585         WebNSUserDefaultsExtras -> NSUserDefaults_NSURLExtras
   24586 
   24587         * History.subproj/WebHistory.m:
   24588         * History.subproj/WebHistoryItem.m:
   24589         * History.subproj/WebHistoryPrivate.m:
   24590         * History.subproj/WebURLsWithTitles.m:
   24591         * Misc.subproj/WebIconDatabase.m:
   24592         * Misc.subproj/WebIconLoader.m:
   24593         * Misc.subproj/WebKitErrors.m:
   24594         * Misc.subproj/WebNSPasteboardExtras.m:
   24595         * Misc.subproj/WebNSViewExtras.m:
   24596         * Panels.subproj/WebAuthenticationPanel.m:
   24597         * Panels.subproj/WebPanelAuthenticationHandler.m:
   24598         * Plugins.subproj/WebBaseNetscapePluginStream.m:
   24599         * Plugins.subproj/WebBaseNetscapePluginView.m:
   24600         * Plugins.subproj/WebNetscapePluginRepresentation.m:
   24601         * Plugins.subproj/WebNullPluginView.m:
   24602         * WebCoreSupport.subproj/WebBridge.m:
   24603         * WebCoreSupport.subproj/WebCookieAdapter.m:
   24604         * WebCoreSupport.subproj/WebSubresourceClient.m:
   24605         * WebView.subproj/WebBaseResourceHandleDelegate.m:
   24606         * WebView.subproj/WebDataProtocol.m:
   24607         * WebView.subproj/WebDataSource.m:
   24608         * WebView.subproj/WebDataSourcePrivate.m:
   24609         * WebView.subproj/WebDefaultResourceLoadDelegate.m:
   24610         * WebView.subproj/WebFrame.m:
   24611         * WebView.subproj/WebFramePrivate.m:
   24612         * WebView.subproj/WebFrameView.m:
   24613         * WebView.subproj/WebFrameViewPrivate.m:
   24614         * WebView.subproj/WebHTMLViewPrivate.m:
   24615         * WebView.subproj/WebMainResourceClient.m:
   24616         * WebView.subproj/WebPreferences.m:
   24617         * WebView.subproj/WebView.m:
   24618         * WebView.subproj/WebViewPrivate.m:
   24619 
   24620 2003-05-14  Ken Kocienda  <kocienda (a] apple.com>
   24621 
   24622         Reviewed by Chris
   24623 
   24624         WebKitSystemBits files that contain a system memory size
   24625         getter. This function is used in a few of places in WebKit.
   24626 
   24627         * History.subproj/WebBackForwardList.m:
   24628         * Misc.subproj/WebKitSystemBits.h: Added.
   24629         * Misc.subproj/WebKitSystemBits.m: Added.
   24630         (initCapabilities):
   24631         (WebSystemMainMemory):
   24632         * WebCoreSupport.subproj/WebBridge.m:
   24633         * WebCoreSupport.subproj/WebTextRendererFactory.m:
   24634         * WebKit.pbproj/project.pbxproj:
   24635 
   24636 2003-05-14  Ken Kocienda  <kocienda (a] apple.com>
   24637 
   24638         Reviewed by David
   24639 
   24640         File and class renaming in WebFoundation:
   24641 
   24642         WebFileTypeMappings -> NSURLFileTypeMappings
   24643 
   24644         * WebCoreSupport.subproj/WebBridge.m:
   24645         (-[WebBridge MIMETypeForPath:]):
   24646         * WebCoreSupport.subproj/WebImageRendererFactory.m:
   24647         (-[WebImageRendererFactory supportedMIMETypes]):
   24648         * WebView.subproj/WebDataSource.m:
   24649         * WebView.subproj/WebMainResourceClient.m:
   24650         * WebView.subproj/WebViewPrivate.m:
   24651         (+[WebView suggestedFileExtensionForMIMEType:]):
   24652         (+[WebView _MIMETypeForFile:]):
   24653 
   24654 2003-05-14  Ken Kocienda  <kocienda (a] apple.com>
   24655 
   24656         Reviewed by Maciej
   24657 
   24658         Copied WebLocalizableStrings.[hm] from WebFoundation to WebKit
   24659 
   24660         Updated all imports.
   24661 
   24662         Added logging exported symbols to exports file.
   24663 
   24664         * Misc.subproj/WebKitErrors.m:
   24665         * Misc.subproj/WebLocalizableStrings.h: Added.
   24666         * Misc.subproj/WebLocalizableStrings.m: Added.
   24667         * Panels.subproj/WebAuthenticationPanel.m:
   24668         * WebCoreSupport.subproj/WebBridge.m:
   24669         * WebCoreSupport.subproj/WebFileButton.m:
   24670         * WebCoreSupport.subproj/WebViewFactory.m:
   24671         * WebKit.exp:
   24672         * WebKit.pbproj/project.pbxproj:
   24673         * WebView.subproj/WebDefaultContextMenuDelegate.m:
   24674 
   24675 2003-05-14  Maciej Stachowiak  <mjs (a] apple.com>
   24676 
   24677         Reviewed by Don.
   24678 
   24679         - fixed 3257307 - REGRESSION: crash using onFocus="this.blur()"
   24680         * WebCoreSupport.subproj/WebBridge.m:
   24681         (-[WebBridge makeFirstResponder:]): Let the WebView know that
   24682         this is a programmatic focus.
   24683         * WebView.subproj/WebHTMLView.m:
   24684         (-[WebHTMLView becomeFirstResponder]): Check if this is a programmatic
   24685         focus from WebCore - if so, treat it like a direct focus, even if there
   24686         is a selection direction set.
   24687         * WebView.subproj/WebViewPrivate.h:
   24688         * WebView.subproj/WebViewPrivate.m:
   24689         (-[WebView _pushPerformingProgrammaticFocus]): New method to indicate
   24690         upcoming programmatic focus.
   24691         (-[WebView _popPerformingProgrammaticFocus]): New method to indicate
   24692         end of programmatic focus. Needs to nest with the previous.
   24693         (-[WebView _isPerformingProgrammaticFocus]): Check if we are handling
   24694         a programmatic focus from WebCore. 
   24695 
   24696 2003-05-14  Ken Kocienda  <kocienda (a] apple.com>
   24697 
   24698         Reviewed by John
   24699 
   24700         Copied WebAssertions.[hm] from WebFoundation to WebKit
   24701 
   24702         Updated all imports.
   24703 
   24704         Added logging exported symbols to exports file.
   24705 
   24706         * History.subproj/WebBackForwardList.m:
   24707         * History.subproj/WebHistory.m:
   24708         * History.subproj/WebHistoryItem.m:
   24709         * Misc.subproj/WebAssertions.h: Added.
   24710         * Misc.subproj/WebAssertions.m: Added.
   24711         (vprintf_stderr_objc):
   24712         (WebReportAssertionFailure):
   24713         (WebReportAssertionFailureWithMessage):
   24714         (WebReportArgumentAssertionFailure):
   24715         (WebReportFatalError):
   24716         (WebReportError):
   24717         (WebLog):
   24718         * Misc.subproj/WebKitLogging.h:
   24719         * Misc.subproj/WebNSPasteboardExtras.m:
   24720         * Misc.subproj/WebStringTruncator.m:
   24721         * Panels.subproj/WebAuthenticationPanel.m:
   24722         * Panels.subproj/WebPanelAuthenticationHandler.m:
   24723         * Plugins.subproj/WebBaseNetscapePluginView.m:
   24724         * Plugins.subproj/WebNetscapePluginDocumentView.m:
   24725         * Plugins.subproj/WebNetscapePluginRepresentation.m:
   24726         * WebCoreSupport.subproj/WebBridge.m:
   24727         * WebCoreSupport.subproj/WebCookieAdapter.m:
   24728         * WebCoreSupport.subproj/WebFileButton.m:
   24729         * WebCoreSupport.subproj/WebImageRenderer.m:
   24730         * WebCoreSupport.subproj/WebImageRendererFactory.m:
   24731         * WebCoreSupport.subproj/WebJavaScriptTextInputPanel.m:
   24732         * WebCoreSupport.subproj/WebSubresourceClient.m:
   24733         * WebCoreSupport.subproj/WebTextRendererFactory.m:
   24734         * WebCoreSupport.subproj/WebViewFactory.m:
   24735         * WebKit.exp:
   24736         * WebKit.pbproj/project.pbxproj:
   24737         * WebView.subproj/WebBaseResourceHandleDelegate.m:
   24738         * WebView.subproj/WebClipView.m:
   24739         * WebView.subproj/WebDataProtocol.m:
   24740         * WebView.subproj/WebDataSource.m:
   24741         * WebView.subproj/WebDefaultPolicyDelegate.m:
   24742         * WebView.subproj/WebFrameViewPrivate.m:
   24743         * WebView.subproj/WebHTMLViewPrivate.m:
   24744         * WebView.subproj/WebImageView.m:
   24745         * WebView.subproj/WebTextRepresentation.m:
   24746         * WebView.subproj/WebTextView.m:
   24747         * WebView.subproj/WebView.m:
   24748         * WebView.subproj/WebViewPrivate.m:
   24749 
   24750 2003-05-13  Richard Williamson   <rjw (a] apple.com>
   24751 
   24752         Fixed 3014661.  We now display (a lame Lemay) image
   24753         when an image fails to load.  We also display the 
   24754         alt text if it fits within the image container
   24755         above the missing image icon.  Alt text is also
   24756         now shown if image loading is disabled.
   24757 
   24758         Reviewed by John.
   24759 
   24760         * Resources/missing_image.tiff: Added.
   24761         * WebCoreSupport.subproj/WebImageRenderer.h:
   24762         * WebCoreSupport.subproj/WebImageRenderer.m:
   24763         (-[WebImageRenderer initWithMIMEType:]):
   24764         (-[WebImageRenderer initWithData:MIMEType:]):
   24765         (-[WebImageRenderer initWithContentsOfFile:]):
   24766         (-[WebImageRenderer copyWithZone:]):
   24767         (-[WebImageRenderer isNull]):
   24768         (-[WebImageRenderer incrementalLoadWithBytes:length:complete:]):
   24769         * WebCoreSupport.subproj/WebImageRendererFactory.m:
   24770         (-[WebImageRendererFactory imageRendererWithName:]):
   24771         * WebKit.pbproj/project.pbxproj:
   24772 
   24773 2003-05-13  Darin Adler  <darin (a] apple.com>
   24774 
   24775         Reviewed by Chris and Richard.
   24776 
   24777         - fixed 3257296 -- REGRESSION: crash in WebImageRendererFactory (movietickets.com)
   24778 
   24779         * WebCoreSupport.subproj/WebImageRenderer.m:
   24780         (-[WebImageRenderer initWithMIMEType:]): Check for nil.
   24781         (-[WebImageRenderer initWithData:MIMEType:]): Check for nil, also don't check for GIF signature
   24782         until after the object is allocated.
   24783 
   24784 2003-05-12  Maciej Stachowiak  <mjs (a] apple.com>
   24785 
   24786         Reviewed by Darin.
   24787 
   24788         - fixed 3254484 - Add a way to print JavaScript exceptions to the console via the debug menu
   24789 
   24790         * Misc.subproj/WebCoreStatistics.h:
   24791         * Misc.subproj/WebCoreStatistics.m:
   24792         (+[WebCoreStatistics shouldPrintExceptions]): Call through to WebCore.
   24793         (+[WebCoreStatistics setShouldPrintExceptions:]): Call through to WebCore.
   24794 
   24795 2003-05-13  Darin Adler  <darin (a] apple.com>
   24796 
   24797         Reviewed by Ken.
   24798 
   24799         - fixed 3120355 -- importing IE favorites garbles non-ASCII characters (esp. bad for non-Roman languages)
   24800 
   24801         * WebView.subproj/WebViewPrivate.h: Added _decodeData:.
   24802         * WebView.subproj/WebViewPrivate.m: (+[WebView _decodeData:]): Added. Calls through to WebCore.
   24803 
   24804 2003-05-13  Maciej Stachowiak  <mjs (a] apple.com>
   24805 
   24806         Reviewed by Darin.
   24807 
   24808         - renamed NSErrorFailingURLKey to NSErrorFailingURLStringKey
   24809 
   24810         * Misc.subproj/WebKitErrors.m:
   24811         (-[NSError _initWithPluginErrorCode:contentURLString:pluginPageURLString:pluginName:MIMEType:]):
   24812 
   24813 2003-05-13  John Sullivan  <sullivan (a] apple.com>
   24814 
   24815         fixed build break
   24816 
   24817         Reviewed by Darin
   24818 
   24819         * WebCoreSupport.subproj/WebImageRenderer.m:
   24820         (-[WebImageRenderer initWithData:MIMEType:]):
   24821         move #ifdefs; two required methods were being #ifdeffed
   24822         out on Panther
   24823 
   24824 2003-05-12  Richard Williamson  <rjw (a] apple.com>
   24825 
   24826         Fixed 3251316.  *** Public API Change ***
   24827 
   24828         Added -(void)setGroupName:(NSString *) and -(NSString *)groupName;
   24829         
   24830         Reviewed by mjs.
   24831 
   24832         * WebView.subproj/WebView.h:
   24833         * WebView.subproj/WebView.m:
   24834 
   24835 2003-05-12  Richard Williamson  <rjw (a] apple.com>
   24836 
   24837         Fixed 3194614 and 3194751.  Add SPI to set 'renderless' mode
   24838         for a frame.
   24839         
   24840         Reviewed by darin.  
   24841 
   24842         * WebView.subproj/WebFramePrivate.h:
   24843         * WebView.subproj/WebFramePrivate.m:
   24844         
   24845         WebImageRenderers now get a MIME type that can be used to faciliate
   24846         selection of an appropriate decoder.
   24847         
   24848         Reviewed by darin.
   24849 
   24850         * WebCoreSupport.subproj/WebImageRenderer.h:
   24851         * WebCoreSupport.subproj/WebImageRenderer.m:
   24852         * WebCoreSupport.subproj/WebImageRendererFactory.m:
   24853         * WebKit.pbproj/project.pbxproj:
   24854 
   24855 2003-05-12  John Sullivan  <sullivan (a] apple.com>
   24856 
   24857         - addition to Darin's previous patch; when checking whether a request can
   24858         be handled, take into account the schemes that were registered without
   24859         an NSURLProtocol getting involved.
   24860 
   24861         Reviewed by Darin
   24862 
   24863         * WebView.subproj/WebViewPrivate.h:
   24864         * WebView.subproj/WebViewPrivate.m:
   24865         (+[WebView _canHandleRequest:]):
   24866         like NSURLConnection canHandleRequest, but also takes into account the
   24867         schemes that were registered without an NSURLProtocol
   24868         * Plugins.subproj/WebNetscapePluginStream.m:
   24869         (-[WebNetscapePluginStream initWithRequest:pluginPointer:notifyData:]):
   24870         use +[WebView _canHandleRequest] instead of +[NSURLConnection canHandleRequest]
   24871         * WebView.subproj/WebDefaultContextMenuDelegate.m:
   24872         (-[WebDefaultUIDelegate webView:contextMenuItemsForElement:defaultMenuItems:]):
   24873         ditto
   24874         * WebView.subproj/WebDefaultPolicyDelegate.m:
   24875         (-[WebDefaultPolicyDelegate webView:decidePolicyForNavigationAction:request:frame:decisionListener:]):
   24876         ditto
   24877         * WebView.subproj/WebFramePrivate.m:
   24878         (-[WebFrame _continueAfterNavigationPolicy:]):
   24879         ditto
   24880 
   24881 2003-05-12  Darin Adler  <darin (a] apple.com>
   24882 
   24883         Reviewed by John.
   24884 
   24885         - fixed 3254576 -- REGRESSION: visiting bookmarks view sometimes waits for other tabs to load first
   24886 
   24887         * WebView.subproj/WebViewPrivate.h: Added new SPI for registering view and represenation classes by
   24888         scheme rather than MIME type.
   24889         * WebView.subproj/WebViewPrivate.m:
   24890         (+[WebView _registerViewClass:representationClass:forURLScheme:]]): Added.
   24891         (+[WebView _generatedMIMETypeForURLScheme:]): Added. Makes a special MIME type for us only by the
   24892         special "register scheme" mechanism.
   24893         (+[WebView _representationExistsForURLScheme:]): Added.
   24894 
   24895         * WebView.subproj/WebMainResourceClient.m:
   24896         (-[WebMainResourceClient continueAfterContentPolicy:response:]): Check for schemes that have their
   24897         own representation, and handle them just like empty documents, loading no data, and doing it synchronously.
   24898         (-[WebMainResourceClient loadWithRequest:]): Same thing here, only also arrange to get the appropriate
   24899         MIME type.
   24900         (-[WebMainResourceClient setDefersCallbacks:]): Same check here.
   24901 
   24902         * English.lproj/StringsNotToBeLocalized.txt: Update for recent changes.
   24903 
   24904 2003-05-11  Darin Adler  <darin (a] apple.com>
   24905 
   24906         * WebView.subproj/WebHTMLView.m: (-[WebHTMLView layoutToPageWidth:]): Added a check for nil that I forgot.
   24907 
   24908 2003-05-10  Darin Adler  <darin (a] apple.com>
   24909 
   24910         Reviewed by John.
   24911 
   24912         - fixed 3254473 - REGRESSION: reload loop due to onresize handler (fortune.com, flipdog.com, stanford.edu)
   24913 
   24914         * WebView.subproj/WebHTMLView.m: (-[WebHTMLView layoutToPageWidth:]): Don't send out a resize event any
   24915         time during the first event that results in a layout. The old check was merely for the first layout,
   24916         but we need to ignore any number of layouts that are all part of handling a first event. Some day we
   24917         may need to refine this rule even further, but this fixes the present bug.
   24918         
   24919         * WebView.subproj/WebHTMLViewPrivate.h: Goodbye laidOutAtLeastOnce, hello firstLayoutEventTime.
   24920 
   24921 2003-05-10  Darin Adler  <darin (a] apple.com>
   24922 
   24923         Reviewed by Maciej.
   24924 
   24925         - fixed 3250119 -- REGRESSION: WebFrame leaked after showing pop-up menu
   24926 
   24927         The leak was caused by various code storing the "element" dictionary that describes where
   24928         a click took place.
   24929 
   24930         * WebView.subproj/WebDefaultContextMenuDelegate.m:
   24931         (-[WebDefaultUIDelegate webView:contextMenuItemsForElement:defaultMenuItems:]):
   24932         Don't store the element in a retained global. Instead attach it as the represented
   24933         object to each menu item.
   24934         (-[WebDefaultUIDelegate openNewWindowWithURL:element:]): Pass in an element.
   24935         (-[WebDefaultUIDelegate downloadURL:element:]): Ditto.
   24936         (-[WebDefaultUIDelegate openLinkInNewWindow:]): Get element from represented object.
   24937         (-[WebDefaultUIDelegate downloadLinkToDisk:]): Ditto.
   24938         (-[WebDefaultUIDelegate copyLinkToClipboard:]): Ditto.
   24939         (-[WebDefaultUIDelegate openImageInNewWindow:]): Ditto.
   24940         (-[WebDefaultUIDelegate downloadImageToDisk:]): Ditto.
   24941         (-[WebDefaultUIDelegate copyImageToClipboard:]): Ditto.
   24942         (-[WebDefaultUIDelegate openFrameInNewWindow:]): Ditto.
   24943 
   24944         * WebView.subproj/WebDefaultUIDelegate.h: Remove element field.
   24945         * WebView.subproj/WebDefaultUIDelegate.m: (-[WebDefaultUIDelegate dealloc]): No need
   24946         to release element any more.
   24947 
   24948         * WebView.subproj/WebHTMLViewPrivate.h: Remove dragElement instance variable.
   24949         * WebView.subproj/WebHTMLViewPrivate.m:
   24950         (-[WebHTMLViewPrivate dealloc]): No need to release dragElement any more. 
   24951         (-[WebHTMLView _handleMouseDragged:]): Get element again here. The old code used to
   24952         get it from an instance variable, but that is unnecessary.
   24953         (-[WebHTMLView _mayStartDragWithMouseDragged:]): Don't store the element.
   24954 
   24955 2003-05-09  Maciej Stachowiak  <mjs (a] apple.com>
   24956 
   24957         Reviewed by Darin.
   24958 
   24959         Updated for NSURLResponse API changes.
   24960 
   24961         * WebView.subproj/WebBaseResourceHandleDelegate.m:
   24962         (-[WebBaseResourceHandleDelegate connection:didReceiveResponse:]):
   24963         * WebView.subproj/WebDataProtocol.m:
   24964         (-[WebDataProtocol startLoading]):
   24965         * WebView.subproj/WebMainResourceClient.m:
   24966         (-[WebMainResourceClient loadWithRequest:]):
   24967 
   24968 2003-05-09  Maciej Stachowiak  <mjs (a] apple.com>
   24969 
   24970         Reviewed by Darin.
   24971 
   24972         - removed WebAuthenticationChallenge
   24973         - adjusted everything for removal of NSURLAuthenticationChallenge subclasses.
   24974         * Misc.subproj/WebDownload.m:
   24975         (-[WebDownloadInternal download:didReceiveAuthenticationChallenge:]):
   24976         (-[WebDownloadInternal download:didCancelAuthenticationChallenge:]):
   24977         * Panels.subproj/WebPanelAuthenticationHandler.m:
   24978         (-[WebPanelAuthenticationHandler startAuthentication:window:]):
   24979         (-[WebPanelAuthenticationHandler _authenticationDoneWithChallenge:result:]):
   24980         * WebView.subproj/WebAuthenticationChallenge.h: Removed.
   24981         * WebView.subproj/WebAuthenticationChallenge.m: Removed.
   24982         * WebView.subproj/WebAuthenticationChallengeInternal.h: Removed.
   24983         * WebView.subproj/WebBaseResourceHandleDelegate.h:
   24984         * WebView.subproj/WebBaseResourceHandleDelegate.m:
   24985         (-[WebBaseResourceHandleDelegate useCredential:forAuthenticationChallenge:]):
   24986         (-[WebBaseResourceHandleDelegate continueWithoutCredentialForAuthenticationChallenge:]):
   24987         (-[WebBaseResourceHandleDelegate cancelAuthenticationChallenge:]):
   24988         (-[WebBaseResourceHandleDelegate connection:didReceiveAuthenticationChallenge:]):
   24989         (-[WebBaseResourceHandleDelegate connection:didCancelAuthenticationChallenge:]):
   24990         (-[WebBaseResourceHandleDelegate setIdentifier:]):
   24991         * WebView.subproj/WebDefaultResourceLoadDelegate.m:
   24992         (-[WebDefaultResourceLoadDelegate webView:resource:didReceiveAuthenticationChallenge:fromDataSource:]):
   24993         (-[WebDefaultResourceLoadDelegate webView:resource:didCancelAuthenticationChallenge:fromDataSource:]):
   24994         * WebView.subproj/WebResourceLoadDelegate.h:
   24995         * Misc.subproj/WebKit.h: Remove headers that are gone.
   24996         * WebKit.exp: Remove classes that are gone.
   24997         * WebKit.pbproj/project.pbxproj: Remove files that are gone.
   24998 
   24999 2003-05-09  David Hyatt  <hyatt (a] apple.com>
   25000 
   25001         Change the minfontsize to 1, i.e., to have no minimum.  This
   25002         matches other browsers while still retaining the pref control
   25003         in WebKit.
   25004 
   25005         Fixes www.gamespot.com.  The bug is 3254489.
   25006         Reviewed by darin
   25007 
   25008         * WebView.subproj/WebPreferences.m:
   25009         (+[WebPreferences initialize]):
   25010 
   25011 2003-05-09  Maciej Stachowiak  <mjs (a] apple.com>
   25012 
   25013         Reviewed by John.
   25014 
   25015         Rename connection:didFailLoadingWithError: to
   25016         connection:didFailWithError: to match NSURLDownload and
   25017         NSURLProtocol.
   25018 
   25019         * Misc.subproj/WebIconLoader.m:
   25020         (-[WebIconLoader connection:didFailWithError:]):
   25021         * Plugins.subproj/WebNetscapePluginStream.m:
   25022         (-[WebNetscapePluginStream connection:didFailWithError:]):
   25023         * WebCoreSupport.subproj/WebSubresourceClient.m:
   25024         (-[WebSubresourceClient connection:didFailWithError:]):
   25025         * WebView.subproj/WebBaseResourceHandleDelegate.m:
   25026         (-[WebBaseResourceHandleDelegate connection:didFailWithError:]):
   25027         * WebView.subproj/WebMainResourceClient.m:
   25028         (-[WebMainResourceClient receivedError:]):
   25029         (-[WebMainResourceClient connection:didFailWithError:]):
   25030 
   25031 2003-05-09  Richard Williamson  <rjw (a] apple.com>
   25032 
   25033         Apply the same check used to by-pass fast rendering
   25034         in the fix to 3146161 to measurement.
   25035         
   25036         Reviewed by Ken.
   25037 
   25038         * Misc.subproj/WebKitNSStringExtras.m:
   25039 
   25040 2003-05-09  Ken Kocienda  <kocienda (a] apple.com>
   25041 
   25042         Reviewed by John
   25043 
   25044         Removed unneeded import of WebFoundation/WebQueue.h.
   25045 
   25046         * WebCoreSupport.subproj/WebTextRendererFactory.h
   25047 
   25048 2003-05-08  Richard Williamson  <rjw (a] apple.com>
   25049 
   25050         Fixed 3146161.  Use the AppKit to render complex
   25051         text in the simple string drawing method.
   25052 
   25053         Reviewed by John.
   25054 
   25055         * Misc.subproj/WebKitNSStringExtras.m:
   25056 
   25057 2003-05-08  Richard Williamson  <rjw (a] apple.com>
   25058 
   25059         Make representations without intrinsic titles return nil.
   25060         
   25061         Reviewed by John.
   25062 
   25063         * Plugins.subproj/WebNetscapePluginRepresentation.m:
   25064         * WebView.subproj/WebDataSourcePrivate.h:
   25065         * WebView.subproj/WebDataSourcePrivate.m:
   25066         * WebView.subproj/WebImageRepresentation.m:
   25067         * WebView.subproj/WebTextRepresentation.m:
   25068 
   25069 2003-05-08  Richard Williamson   <rjw (a] apple.com>
   25070 
   25071         Fixed 3252460.  *** Public API Change ***
   25072         Added title method to WebDocumentRepresentation.
   25073         
   25074         Fixed 3250352.  Check that delegate implements method.
   25075         
   25076         Reviewed by hyatt.
   25077 
   25078         * WebView.subproj/WebDataSource.m:
   25079         (-[WebDataSource pageTitle]):
   25080         * WebView.subproj/WebDataSourcePrivate.h:
   25081         * WebView.subproj/WebDataSourcePrivate.m:
   25082         (-[WebDataSource _startLoading:]):
   25083         (-[WebDataSource _title]):
   25084         * WebView.subproj/WebDocument.h:
   25085         * WebView.subproj/WebHTMLRepresentation.m:
   25086         (-[WebHTMLRepresentation title]):
   25087         * WebView.subproj/WebImageRepresentation.m:
   25088         (-[WebImageRepresentation title]):
   25089         * WebView.subproj/WebNetscapePluginRepresentation.m:
   25090         (-[WebNetscapePluginRepresentation title]):
   25091         * WebView.subproj/WebTextRepresentation.h:
   25092         * WebView.subproj/WebTextRepresentation.m:
   25093         (-[WebTextRepresentation dealloc]):
   25094         (-[WebTextRepresentation setDataSource:]):
   25095         (-[WebTextRepresentation title]):
   25096 
   25097 2003-05-08  Darin Adler  <darin (a] apple.com>
   25098 
   25099         * WebKit.pbproj/project.pbxproj: Fixed paths for non-Panther builds.
   25100 
   25101 2003-05-08  John Sullivan  <sullivan (a] apple.com>
   25102 
   25103         Closed up all gaps in WebKit between "ASSERT" and "(" to
   25104         make Darin's day a little brighter.
   25105 
   25106         Reviewed by Darin
   25107 
   25108         * WebCoreSupport.subproj/WebBridge.m:
   25109         (-[WebBridge pluginViewWithPackage:attributes:baseURL:]):
   25110         (-[WebBridge handleMouseDragged:]):
   25111         (-[WebBridge mayStartDragWithMouseDragged:]):
   25112         * WebCoreSupport.subproj/WebImageRenderer.m:
   25113         (-[WebImageRenderer drawClippedToValidInRect:fromRect:]):
   25114         * WebView.subproj/WebBaseResourceHandleDelegate.m:
   25115         (-[WebBaseResourceHandleDelegate _releaseResources]):
   25116         (-[WebBaseResourceHandleDelegate dealloc]):
   25117         * WebView.subproj/WebFramePrivate.m:
   25118         (-[WebFrame _transitionToCommitted:]):
   25119         * WebView.subproj/WebViewPrivate.m:
   25120         (-[WebView _preferencesChangedNotification:]):
   25121 
   25122 2003-05-08  John Sullivan  <sullivan (a] apple.com>
   25123 
   25124         - fixed 3252632 -- Registering a WebDocumentView too 
   25125         early breaks built-in image viewing
   25126 
   25127         A startup-performance optimization was breaking the case
   25128         where clients registered WebDocumentView types before the
   25129         first WebFrameView had been created. The fix is to allow
   25130         registering WebDocumentView types without retrieving the
   25131         built-in image types.
   25132 
   25133         Reviewed by Darin
   25134 
   25135         * WebView.subproj/WebFrameViewPrivate.h:
   25136         remove _viewTypes; expose _viewTypesAllowImageTypeOmission.
   25137         All callers have to specify the boolean now.
   25138 
   25139         * WebView.subproj/WebFrameViewPrivate.m:
   25140         (+[WebFrameView _viewTypesAllowImageTypeOmission:]):
   25141         assert that the list of image types isn't nil before inserting
   25142         them; insert each image type only if not already present.
   25143         (+[WebFrameView _viewClassForMIMEType:]):
   25144         replace _viewTypes with _viewTypesAllowImageTypeOmission
   25145 
   25146         * Plugins.subproj/WebPluginDatabase.m:
   25147         (-[WebPluginDatabase init]):
   25148         replace _viewTypes with _viewTypesAllowImageTypeOmission
   25149 
   25150         * WebView.subproj/WebDataSourcePrivate.h:
   25151         remove _repTypes; expose _repTypesAllowImageTypeOmission.
   25152         All callers have to specify the boolean now.
   25153         * WebView.subproj/WebDataSourcePrivate.m:
   25154         (+[WebDataSource _representationClassForMIMEType:]):
   25155         replace _repTypes with _repTypesAllowImageTypeOmission
   25156 
   25157         * WebView.subproj/WebView.m:
   25158         (+[WebView registerViewClass:representationClass:forMIMEType:]):
   25159         replace _viewTypes with _viewTypesAllowImageTypeOmission, and
   25160         replace _repTypes with _repTypesAllowImageTypeOmission
   25161 
   25162 2003-05-08  Darin Adler  <darin (a] apple.com>
   25163 
   25164         Reviewed by Richard.
   25165 
   25166         - fixed 3242414 -- REGRESSION: PLT times reported 10% slower after emptying cache with B/F cache enabled
   25167         - made it only compute the page cache size once
   25168 
   25169         * History.subproj/WebBackForwardList.m:
   25170         (-[WebBackForwardList init]): Set initial page cache size to special value, COMPUTE_DEFAULT_PAGE_CACHE_SIZE.
   25171         (-[WebBackForwardList setPageCacheSize:]): Remove code to set pageCacheSizeModified and call to
   25172         _setUsesPageCache:, not needed any more.
   25173         (-[WebBackForwardList pageCacheSize]): If cache size is COMPUTE_DEFAULT_PAGE_CACHE_SIZE, then compute it.
   25174         The old code would compute the cache size each time this method was called until pageCacheSizeModified was set.
   25175         (-[WebBackForwardList _usesPageCache]): Just check pageCacheSize for 0 to see if we use a page cache.
   25176         No need for a separate boolean any more.
   25177         
   25178         * History.subproj/WebHistoryItemPrivate.h: Remove _setUsesPageCache (gone altogether) and _clearPageCache
   25179         (now only used internally).
   25180 
   25181 === Safari-78 ===
   25182 
   25183 2003-05-07  Darin Adler  <darin (a] apple.com>
   25184 
   25185         Reviewed by John.
   25186 
   25187         - fixed 3127927 -- web view should not use primary selection color when it's not first responder
   25188 
   25189         * WebView.subproj/WebHTMLView.m:
   25190         (-[WebHTMLView updateTextBackgroundColor]): Added. Sets the usesInactiveTextBackgroundColor flag
   25191         on the bridge, and does setNeedsDisplayInRect: of the selectionRect if the state changes.
   25192         (-[WebHTMLView viewDidMoveToWindow]): Call updateTextBackgroundColor.
   25193         (-[WebHTMLView windowDidBecomeKey:]): Call updateTextBackgroundColor.
   25194         (-[WebHTMLView windowDidResignKey:]): Call updateTextBackgroundColor.
   25195         (-[WebHTMLView becomeFirstResponder]): Call updateTextBackgroundColor.
   25196         (-[WebHTMLView resignFirstResponder]): Call updateTextBackgroundColor.
   25197 
   25198         - fixed up WebHistoryItem initializers so there is a designated initializer
   25199 
   25200         * History.subproj/WebHistoryItem.m:
   25201         (-[WebHistoryItem init]): Call initWithURLString:title:lastVisitedTimeInterval:,
   25202         which is the designated initializer.
   25203         (-[WebHistoryItem initWithURL:title:]): Ditto.
   25204         (-[WebHistoryItem initWithURL:target:parent:title:]): Ditto.
   25205 
   25206         - other changes
   25207 
   25208         * History.subproj/WebHistoryPrivate.m: (-[WebHistoryPrivate addItem:]): Fixed assertion
   25209         to not use _lastVisitedDate; we're trying to get rid of calls to that method.
   25210 
   25211 2003-05-07  Vicki Murley  <vicki (a] apple.com>
   25212 
   25213         Reviewed by darin.
   25214 
   25215         - modify the Mixed build style to build optimized with symbols
   25216 
   25217         * WebKit.pbproj/project.pbxproj: removed OPTIMIZATION_CGLAGS
   25218 
   25219 2003-05-06  Richard Williamson   <rjw (a] apple.com>
   25220 
   25221         Fixed problem for HelpViewer.  HV calls stopLoading in 
   25222         a webView:resource:didReceiveResponse.  This causes
   25223         the premature release of the connection delegate.
   25224         
   25225         Reviewed by Ken.
   25226 
   25227         * WebCoreSupport.subproj/WebSubresourceClient.m:
   25228         (-[WebSubresourceClient connectionDidFinishLoading:]):
   25229         * WebKit.pbproj/project.pbxproj:
   25230         * WebView.subproj/WebBaseResourceHandleDelegate.m:
   25231         (-[WebBaseResourceHandleDelegate _releaseResources]):
   25232         (-[WebBaseResourceHandleDelegate dealloc]):
   25233         * WebView.subproj/WebMainResourceClient.m:
   25234         (-[WebMainResourceClient stopLoadingForPolicyChange]):
   25235         (-[WebMainResourceClient continueAfterContentPolicy:response:]):
   25236         (-[WebMainResourceClient continueAfterContentPolicy:]):
   25237         (-[WebMainResourceClient connection:didReceiveResponse:]):
   25238         (-[WebMainResourceClient connectionDidFinishLoading:]):
   25239 
   25240 2003-05-06  Darin Adler  <darin (a] apple.com>
   25241 
   25242         - removed obsolete file that's still around for some reason
   25243 
   25244         * Downloads.subproj/WebDownload.m: Removed.
   25245 
   25246 2003-05-06  Darin Adler  <darin (a] apple.com>
   25247 
   25248         - fixed crash on startup
   25249 
   25250         * History.subproj/WebHistoryItem.m:
   25251         (-[WebHistoryItem initWithURLString:title:lastVisitedTimeInterval:]):
   25252         Allocate WebHistoryItemPrivate.
   25253 
   25254 2003-05-06  Darin Adler  <darin (a] apple.com>
   25255 
   25256         - fixed 3249211 -- WebTextRenderer.h should not use "AttributeGroup" type for styleGroup
   25257 
   25258         * WebCoreSupport.subproj/WebTextRenderer.h: Update to use ATSStyleGroupPtr.
   25259 
   25260 2003-05-06  Darin Adler  <darin (a] apple.com>
   25261 
   25262         Reviewed by Ken.
   25263 
   25264         - used ObjectAlloc to find large numbers of allocations on startup and get rid of some
   25265 
   25266         * History.subproj/WebHistoryItem.m:
   25267         (-[WebHistoryItem initFromDictionaryRepresentation:]):
   25268         Use the init method that takes a URL string so we don't have to create and then
   25269         destroy a URL for each item we decode.
   25270         * History.subproj/WebHistoryPrivate.m:
   25271         (-[WebHistoryPrivate addItem:]): Use URLString instead of making and destroying
   25272         a URL each time this is called.
   25273         (-[WebHistoryPrivate removeItem:]): Ditto.
   25274         (-[WebHistoryPrivate _loadHistoryGuts:URL:error:]): Check URLString for nil; no reason
   25275         to construct and then destroy a URL just to check validity.
   25276         
   25277         * WebCoreSupport.subproj/WebTextRendererFactory.m:
   25278         (FontCacheKeyCopy): Added.
   25279         (FontCacheKeyFree): Added.
   25280         (FontCacheKeyEqual): Added.
   25281         (FontCacheKeyHash): Added.
   25282         (FontCacheValueRetain): Added.
   25283         (FontCacheValueRelease): Added.
   25284         (-[WebTextRendererFactory cachedFontFromFamily:traits:size:]): Use a C struct for the
   25285         font cache key instead of using an Objective-C object. This saves us an object
   25286         allocation and deallocation when doing a lookup. Also took advantage of the CFDictionary
   25287         ability to store NULL and distinguish it from "not found" so we don't need a separate set
   25288         for cache misses.
   25289 
   25290 2003-05-05  Maciej Stachowiak  <mjs (a] apple.com>
   25291 
   25292         Reviewed by Richard.
   25293 
   25294         Fix build by separating mutating data protocol methods into
   25295         category on NSMutableURLRequest. Also, formatting fixes.
   25296 
   25297         * WebView.subproj/WebDataProtocol.h:
   25298         * WebView.subproj/WebDataProtocol.m:
   25299         (+[NSURLRequest _webDataRequestURLForData:]):
   25300         (-[NSURLRequest _webDataRequestData]):
   25301         (-[NSURLRequest _webDataRequestEncoding]):
   25302         (-[NSURLRequest _webDataRequestMIMEType]):
   25303         (-[NSURLRequest _webDataRequestBaseURL]):
   25304         (-[NSURLRequest _webDataRequestExternalRequest]):
   25305         (-[NSMutableURLRequest _webDataRequestSetData:]):
   25306         * WebView.subproj/WebFrame.m:
   25307 
   25308 2003-05-04  Darin Adler  <darin (a] apple.com>
   25309 
   25310         Reviewed by Maciej.
   25311 
   25312         - fixed a storage leak
   25313 
   25314         * WebView.subproj/WebFramePrivate.m: (-[WebFrame _setState:]): Release the timer before setting to nil.
   25315 
   25316 2003-05-03  David Hyatt  <hyatt (a] apple.com>
   25317 
   25318         Add smallCaps boolean to the string measuring and drawing
   25319         methods.  Not actually supported yet.
   25320         Reviewed by darin
   25321 
   25322         * Misc.subproj/WebKitNSStringExtras.m:
   25323         (-[NSString _web_widthWithFont:]):
   25324         * Misc.subproj/WebStringTruncator.m:
   25325         (stringWidth):
   25326         * WebCoreSupport.subproj/WebTextRenderer.h:
   25327         * WebCoreSupport.subproj/WebTextRenderer.m:
   25328         (-[WebTextRenderer widthForCharacters:length:]):
   25329         (-[WebTextRenderer drawCharacters:stringLength:fromCharacterPosition:toCharacterPosition:atPoint:withPadding:withTextColor:backgroundColor:rightToLeft:letterSpacing:wordSpacing:smallCaps:fontFamilies:]):
   25330         (-[WebTextRenderer floatWidthForCharacters:stringLength:characterPosition:]):
   25331         (-[WebTextRenderer floatWidthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:]):
   25332         (-[WebTextRenderer floatWidthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:withPadding:applyRounding:attemptFontSubstitution:widths:letterSpacing:wordSpacing:smallCaps:fontFamilies:]):
   25333         (-[WebTextRenderer _floatWidthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:withPadding:applyRounding:attemptFontSubstitution:widths:fonts:glyphs:numGlyphs:letterSpacing:wordSpacing:smallCaps:fontFamilies:]):
   25334 
   25335 2003-05-04  Darin Adler  <darin (a] apple.com>
   25336 
   25337         Reviewed by John.
   25338 
   25339         - added validation to "Interface Builder" methods on WebView
   25340 
   25341         * WebView.subproj/WebView.h: Add NSUserInterfaceValidations protocol so that subclassers
   25342         know that they can call [super validateUserInterfaceItem:].
   25343         * WebView.subproj/WebView.m:
   25344         (-[WebView canMakeTextSmaller]): Simplify.
   25345         (-[WebView canMakeTextLarger]): Simplify.
   25346         (-[WebView _isLoading]): Added.
   25347         (-[WebView validateUserInterfaceItem:]): Added. Checks for the six actions we implement,
   25348         and returns NO if they are not valid.
   25349 
   25350 2003-05-02  Maciej Stachowiak  <mjs (a] apple.com>
   25351 
   25352         Reviewed by Richard.
   25353 
   25354         - reformatted method prototypes to match AppKit style
   25355         - remove "Public header file" from headers that are not public
   25356         - fix header doc @method names to match actual method names
   25357 
   25358         * Carbon.subproj/CarbonWindowAdapter.h:
   25359         * Carbon.subproj/HIViewAdapter.h:
   25360         * DOM.subproj/WebDOMDocument.h:
   25361         * DOM.subproj/WebDOMNode.h:
   25362         * History.subproj/WebBackForwardList.h:
   25363         * History.subproj/WebHistoryItemPrivate.h:
   25364         * History.subproj/WebHistoryPrivate.h:
   25365         * History.subproj/WebURLsWithTitles.h:
   25366         * Misc.subproj/WebIconDatabase.h:
   25367         * Misc.subproj/WebIconLoader.h:
   25368         * Misc.subproj/WebKitNSStringExtras.h:
   25369         * Misc.subproj/WebUnicode.h:
   25370         * Panels.subproj/WebPanelAuthenticationHandler.h:
   25371         * Plugins.subproj/WebBasePluginPackage.h:
   25372         * Plugins.subproj/WebNetscapePluginStream.h:
   25373         * Plugins.subproj/WebNullPluginView.h:
   25374         * Plugins.subproj/WebPluginViewFactory.h:
   25375         * WebCoreSupport.subproj/WebGlyphBuffer.h:
   25376         * WebCoreSupport.subproj/WebTextRenderer.h:
   25377         * WebCoreSupport.subproj/WebTextRendererFactory.h:
   25378         * WebView.subproj/WebBaseResourceHandleDelegate.h:
   25379         * WebView.subproj/WebControllerSets.h:
   25380         * WebView.subproj/WebDataProtocol.h:
   25381         * WebView.subproj/WebDataSource.h:
   25382         * WebView.subproj/WebDataSourcePrivate.h:
   25383         * WebView.subproj/WebDebugDOMNode.h:
   25384         * WebView.subproj/WebDocument.h:
   25385         * WebView.subproj/WebFrame.h:
   25386         * WebView.subproj/WebFramePrivate.h:
   25387         * WebView.subproj/WebFrameView.h:
   25388         * WebView.subproj/WebHTMLRepresentation.h:
   25389         * WebView.subproj/WebHTMLView.h:
   25390         * WebView.subproj/WebMainResourceClient.h:
   25391         * WebView.subproj/WebPolicyDelegate.h:
   25392         * WebView.subproj/WebPolicyDelegatePrivate.h:
   25393         * WebView.subproj/WebPreferencesPrivate.h:
   25394         * WebView.subproj/WebRenderNode.h:
   25395         * WebView.subproj/WebResourceLoadDelegate.h:
   25396         * WebView.subproj/WebUIDelegate.h:
   25397         * WebView.subproj/WebView.h:
   25398         * WebView.subproj/WebViewPrivate.h:
   25399 
   25400 2003-05-02  Maciej Stachowiak  <mjs (a] apple.com>
   25401 
   25402         Reviewed by Darin.
   25403 
   25404         - fixed 2936175 - MALLORY: please implement onResize
   25405 
   25406         * WebView.subproj/WebHTMLViewPrivate.h:
   25407         * WebView.subproj/WebHTMLView.m:
   25408         (-[WebHTMLView layoutToPageWidth:]): If we just resized and we're
   25409         not printing, make sure to send a resize event after the layout.
   25410 
   25411 2003-05-02  Darin Adler  <darin (a] apple.com>
   25412 
   25413         Reviewed by John.
   25414 
   25415         - fixed 3236383 -- http://www.xy.com/ exception, crash loading main page
   25416 
   25417         * WebCoreSupport.subproj/WebBridge.m: (-[WebBridge closeWindowSoon]): Replaces
   25418         closeWindow. Schedule a closeWindow operation in the WebView. Important to not have
   25419         the call's execution depend on whether this WebBridge or WebFrame is still around
   25420         after the delay.
   25421         
   25422         * WebView.subproj/WebViewPrivate.h: Added _closeWindow.
   25423         * WebView.subproj/WebViewPrivate.m: (-[WebView _closeWindow]): Make a webViewClose:
   25424         call on the UI delegate.
   25425 
   25426 2003-05-02  Darin Adler  <darin (a] apple.com>
   25427 
   25428         Reviewed by John.
   25429 
   25430         - first step in fixing 3236383 -- http://www.xy.com/ exception, crash loading main page
   25431         
   25432         Changed WebFrame to explicitly detach from the bridge so we don't have a stale pointer;
   25433         also cleaned up WebBridge initialization.
   25434 
   25435         * WebCoreSupport.subproj/WebBridge.h: Added initWithWebFrame: and close methods, removed
   25436         setWebFrame: method.
   25437         * WebView.subproj/WebFrame.m:
   25438         (-[WebFrame initWithName:webFrameView:webView:]): Use the new initWithWebFrame:.
   25439         * WebView.subproj/WebFramePrivate.m:
   25440         (-[WebFrame _detachFromParent]): Call close on the bridge.
   25441 
   25442         - fixed many places that call a WebView a "controller"
   25443 
   25444         * Misc.subproj/WebKitStatistics.h:
   25445         * Misc.subproj/WebKitStatistics.m:
   25446         * Misc.subproj/WebKitStatisticsPrivate.h:
   25447         * Misc.subproj/WebNSViewExtras.m:
   25448         * Plugins.subproj/WebBaseNetscapePluginView.h:
   25449         * Plugins.subproj/WebBaseNetscapePluginView.m:
   25450         * Plugins.subproj/WebNetscapePluginStream.m:
   25451         * WebCoreSupport.subproj/WebBridge.m:
   25452         * WebCoreSupport.subproj/WebSubresourceClient.m:
   25453         * WebView.subproj/WebBaseResourceHandleDelegate.h:
   25454         * WebView.subproj/WebBaseResourceHandleDelegate.m:
   25455         * WebView.subproj/WebControllerSets.h:
   25456         * WebView.subproj/WebControllerSets.m:
   25457         * WebView.subproj/WebDataSourcePrivate.h:
   25458         * WebView.subproj/WebDataSourcePrivate.m:
   25459         * WebView.subproj/WebDefaultContextMenuDelegate.m:
   25460         * WebView.subproj/WebFrame.m:
   25461         * WebView.subproj/WebFramePrivate.h:
   25462         * WebView.subproj/WebFrameView.m:
   25463         * WebView.subproj/WebFrameViewPrivate.h:
   25464         * WebView.subproj/WebFrameViewPrivate.m:
   25465         * WebView.subproj/WebImageView.m:
   25466         * WebView.subproj/WebMainResourceClient.m:
   25467         * WebView.subproj/WebTextView.m:
   25468         * WebView.subproj/WebView.m:
   25469         * WebView.subproj/WebViewPrivate.h:
   25470         * WebView.subproj/WebViewPrivate.m:
   25471 
   25472 2003-05-01  John Sullivan  <sullivan (a] apple.com>
   25473 
   25474         - fixed 3246045 -- History items without a valid date in 
   25475         History.plist show up with unexpected dates in UI
   25476 
   25477         Reviewed by Darin.
   25478 
   25479         * History.subproj/WebHistoryItem.m:
   25480         (-[WebHistoryItem initFromDictionaryRepresentation:]):
   25481         don't set lastVisitedTimeInterval to [nil doubleValue],
   25482         since this is random
   25483 
   25484         * English.lproj/StringsNotToBeLocalized.txt: Update for recent changes.
   25485 
   25486 2003-05-01  Richard Williamson   <rjw (a] apple.com>
   25487 
   25488         Added missing header and alphabetized.
   25489         
   25490         Reviewed by Ken.
   25491 
   25492         * Misc.subproj/WebKit.h:
   25493 
   25494 2003-05-01  Chris Blumenberg  <cblu (a] apple.com>
   25495 
   25496         Fixed: 3234888 - REGRESSION: "can't add a plug-in to a defunct WebPluginController" error, then crash
   25497         Fixed: 3226392 - REGRESSION: Safari crashed while loading Java applet at PopCap.com
   25498         
   25499         Reviewed by darin.
   25500 
   25501         * WebView.subproj/WebFramePrivate.h:
   25502         * WebView.subproj/WebFramePrivate.m:
   25503         (-[WebFrame setController:]): fixed comment
   25504         * WebView.subproj/WebView.m:
   25505         (-[WebView dealloc]): call [self _close]
   25506         * WebView.subproj/WebViewPrivate.h:
   25507         * WebView.subproj/WebViewPrivate.m:
   25508         (-[WebViewPrivate dealloc]): let the WebView class clear the frames
   25509         (-[WebView _close]): remove self from controller set and detach and release frame
   25510 
   25511 === Safari-77 ===
   25512 
   25513 2003-05-01  John Sullivan  <sullivan (a] apple.com>
   25514 
   25515         - fixed 3245793 -- Launching Safari-75 after tip of tree 
   25516         erases all history
   25517 
   25518         Reviewed by Chris, Don
   25519 
   25520         * History.subproj/WebHistoryItem.m:
   25521         keep using "lastVisitedDate" as the dictionary key, since old
   25522         Safaris otherwise can't read the History file.
   25523         (-[WebHistoryItem dictionaryRepresentation]):
   25524         keep storing the time interval as a string, since old Safaris
   25525         otherwise can't read the History file
   25526         (-[WebHistoryItem initFromDictionaryRepresentation:]):
   25527         read the stored date as a string and convert to a double,
   25528         as we did before.
   25529 
   25530 2003-05-01  Darin Adler  <darin (a] apple.com>
   25531 
   25532         Reviewed by John.
   25533 
   25534         - fixed 3169117 -- dragging while using a scroll wheel affects scroll movement
   25535 
   25536         * WebView.subproj/WebHTMLViewPrivate.m:
   25537         (-[WebNSWindow nextEventMatchingMask:untilDate:inMode:dequeue:]):
   25538         Just return nil when called with NSScrollWheelMask to work around the bug where any
   25539         kind of event can be returned when this mask is passed. This will prevent scroll wheel
   25540         events from being coalesced, but it's better than extracting events of all different
   25541         types. Mouse moved events are particularly bad because they have deltaX/Y/Z and the
   25542         scroll wheel code in NSScrollView treats them as if they were scroll wheel events.
   25543 
   25544 2003-05-01  Ken Kocienda  <kocienda (a] apple.com>
   25545 
   25546         Reviewed by Darin
   25547 
   25548         Updated to use approved NSHTTPCookieStorage API.
   25549 
   25550         +sharedCookieManager -> +sharedHTTPCookieStorage
   25551         -acceptPolicy -> -cookieAcceptPolicy
   25552         -cookieRequestHeaderFieldsForURL: -> -cookiesForURL:
   25553         -setCookiesFromResponseHeader:forURL:policyBaseURL: -> -setCookies:forURL:mainDocumentURL:
   25554 
   25555         * WebCoreSupport.subproj/WebCookieAdapter.m:
   25556         (-[WebCookieAdapter cookiesEnabled]):
   25557         (-[WebCookieAdapter cookiesForURL:]):
   25558         (-[WebCookieAdapter setCookies:forURL:policyBaseURL:]):
   25559 
   25560 2003-05-01  Darin Adler  <darin (a] apple.com>
   25561 
   25562         * English.lproj/StringsNotToBeLocalized.txt: Update for recent changes.
   25563 
   25564 2003-04-30  Kenneth Kocienda  <kocienda (a] apple.com>
   25565 
   25566         Reviewed by Richard
   25567 
   25568         Modified WebFoundation error constant names. Names
   25569         now begin with NSURLError prefix.
   25570 
   25571         * Plugins.subproj/WebNetscapePluginRepresentation.m:
   25572         (-[WebNetscapePluginRepresentation receivedError:withDataSource:]):
   25573         * WebCoreSupport.subproj/WebSubresourceClient.m:
   25574         (+[WebSubresourceClient startLoadingResource:withURL:referrer:forDataSource:]):
   25575         * WebView.subproj/WebBaseResourceHandleDelegate.m:
   25576         (-[WebBaseResourceHandleDelegate cancelledError]):
   25577         * WebView.subproj/WebDataProtocol.m:
   25578         (-[WebDataProtocol startLoading]):
   25579         * WebView.subproj/WebDataSourcePrivate.m:
   25580         (-[WebDataSource _stopLoadingInternal]):
   25581 
   25582 2003-04-30  Kenneth Kocienda  <kocienda (a] apple.com>
   25583 
   25584         Reviewed by Richard
   25585 
   25586         Use NSURLResponse new SPI methods to set instance variables.
   25587 
   25588         * WebView.subproj/WebBaseResourceHandleDelegate.m:
   25589         (-[WebBaseResourceHandleDelegate connection:didReceiveResponse:]):
   25590         * WebView.subproj/WebDataProtocol.m:
   25591         (-[WebDataProtocol startLoading]):
   25592         * WebView.subproj/WebMainResourceClient.m:
   25593         (-[WebMainResourceClient loadWithRequest:]):
   25594 
   25595 2003-04-30  Maciej Stachowiak  <mjs (a] apple.com>
   25596 
   25597         Reviewed by Richard.
   25598 
   25599         Moved NSURLProtectionSpace over to officially blessed API.
   25600         * Panels.subproj/WebAuthenticationPanel.m:
   25601         (-[WebAuthenticationPanel setUpForChallenge:]):
   25602 
   25603 2003-04-30  Richard Williamson   <rjw (a] apple.com>
   25604 
   25605         Copy MIME type when copying WebDataProtocol's parameters.
   25606         
   25607         Reviewed by Ken.
   25608 
   25609         * WebView.subproj/WebDataProtocol.m:
   25610         (-[WebDataRequestParameters copyWithZone:]):
   25611 
   25612 2003-04-30  Richard Williamson   <rjw (a] apple.com>
   25613 
   25614         Documentation fixes.
   25615         Added "ADVISORY NOTE" about possible API change after beta SDK.
   25616         
   25617         * History.subproj/WebHistory.h:
   25618         * WebView.subproj/WebUIDelegate.h:
   25619 
   25620 2003-04-30  Ken Kocienda  <kocienda (a] apple.com>
   25621 
   25622         Reviewed by Maciej
   25623 
   25624         Tweaked some HTTP-specific NSURLRequest method names as specified
   25625         in the API errata list.
   25626 
   25627         * Plugins.subproj/WebBaseNetscapePluginView.m:
   25628         (-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:]):
   25629         (-[WebBaseNetscapePluginView _postURLNotify:target:len:buf:file:notifyData:allowHeaders:]):
   25630         * WebCoreSupport.subproj/WebBridge.m:
   25631         (-[WebBridge createWindowWithURL:frameName:]):
   25632         * WebCoreSupport.subproj/WebSubresourceClient.m:
   25633         (+[WebSubresourceClient startLoadingResource:withURL:referrer:forDataSource:]):
   25634         * WebView.subproj/WebBaseResourceHandleDelegate.m:
   25635         (-[WebBaseResourceHandleDelegate connection:willSendRequest:redirectResponse:]):
   25636         * WebView.subproj/WebDefaultContextMenuDelegate.m:
   25637         (-[WebDefaultUIDelegate openNewWindowWithURL:]):
   25638         * WebView.subproj/WebFramePrivate.m:
   25639         (-[WebFrame _loadItem:withLoadType:]):
   25640         (-[WebFrame _addExtraFieldsToRequest:alwaysFromRequest:]):
   25641         (-[WebFrame _loadURL:referrer:loadType:target:triggeringEvent:form:formValues:]):
   25642         (-[WebFrame _postWithURL:referrer:target:data:contentType:triggeringEvent:form:formValues:]):
   25643         * WebView.subproj/WebMainResourceClient.m:
   25644         (-[WebMainResourceClient connection:willSendRequest:redirectResponse:]):
   25645 
   25646 2003-04-30  Maciej Stachowiak  <mjs (a] apple.com>
   25647 
   25648         Reviewed by Ken.
   25649 
   25650         Minor header tweaks.
   25651 
   25652         * Misc.subproj/WebDownload.h: Fix copyright notice.
   25653         * Panels.subproj/WebAuthenticationPanel.h: Added 2003 to copyright.
   25654         * WebView.subproj/WebAuthenticationChallenge.h: Fix copyright notice, add docs.
   25655         * WebView.subproj/WebAuthenticationChallengeInternal.h: Fix copyright notice.
   25656 
   25657 2003-04-30  Maciej Stachowiak  <mjs (a] apple.com>
   25658 
   25659         Reviewed by Ken.
   25660 
   25661         Minor header tweaks.
   25662 
   25663         * Misc.subproj/WebDownload.h: Fix copyright notice.
   25664         * Panels.subproj/WebAuthenticationPanel.h: Added 2003 to copyright.
   25665         * WebView.subproj/WebAuthenticationChallenge.h: Fix copyright notice, add docs.
   25666         * WebView.subproj/WebAuthenticationChallengeInternal.h: Fix copyright notice.
   25667 
   25668 2003-04-30  Maciej Stachowiak  <mjs (a] apple.com>
   25669 
   25670         Reviewed by Darin.
   25671 
   25672         Fixed imports and @class directives for WebFoundation changes.
   25673 
   25674         * Panels.subproj/WebAuthenticationPanel.h:
   25675         * Panels.subproj/WebAuthenticationPanel.m:
   25676 
   25677 2003-04-30  Richard Williamson   <rjw (a] apple.com>
   25678 
   25679         Fixed doc errors.
   25680         
   25681         * History.subproj/WebHistory.h:
   25682 
   25683 2003-04-30  Maciej Stachowiak  <mjs (a] apple.com>
   25684 
   25685         Reviewed by Darin.
   25686 
   25687         Some simple renames:
   25688 
   25689         sharedURLCredentialStorage --> sharedCredentialStorage
   25690         URLCredentialWithUser:password:persistence: --> credentialWithUser:password:persistence:
   25691 
   25692         * Panels.subproj/WebAuthenticationPanel.m:
   25693         (-[WebAuthenticationPanel runAsModalDialogWithChallenge:]):
   25694         (-[WebAuthenticationPanel sheetDidEnd:returnCode:contextInfo:]):
   25695 
   25696 2003-04-30  Maciej Stachowiak  <mjs (a] apple.com>
   25697 
   25698         Reviewed by Darin.
   25699 
   25700         Changed things to use WebAuthenticationChallenge for
   25701         WebResoureceLoadDelegate auth callbacks.
   25702 
   25703         * Panels.subproj/WebPanelAuthenticationHandler.m:
   25704         (-[WebPanelAuthenticationHandler startAuthentication:window:]):
   25705         (-[WebPanelAuthenticationHandler _authenticationDoneWithChallenge:result:]):
   25706         * WebKit.exp:
   25707         * WebKit.pbproj/project.pbxproj:
   25708         * WebView.subproj/WebAuthenticationChallenge.h: Added.
   25709         * WebView.subproj/WebAuthenticationChallenge.m: Added.
   25710         (-[WebAuthenticationChallengeInternal initWithDelegate:]):
   25711         (-[WebAuthenticationChallengeInternal dealloc]):
   25712         (-[WebAuthenticationChallenge _initWithAuthenticationChallenge:delegate:]):
   25713         (-[WebAuthenticationChallenge dealloc]):
   25714         (-[WebAuthenticationChallenge useCredential:]):
   25715         (-[WebAuthenticationChallenge cancel]):
   25716         (-[WebAuthenticationChallenge continueWithoutCredential]):
   25717         * WebView.subproj/WebAuthenticationChallengeInternal.h: Added.
   25718         * WebView.subproj/WebBaseResourceHandleDelegate.h:
   25719         * WebView.subproj/WebBaseResourceHandleDelegate.m:
   25720         (-[WebBaseResourceHandleDelegate connection:didReceiveAuthenticationChallenge:]):
   25721         (-[WebBaseResourceHandleDelegate connection:didCancelAuthenticationChallenge:]):
   25722         (-[WebBaseResourceHandleDelegate useCredential:forAuthenticationChallenge:]):
   25723         (-[WebBaseResourceHandleDelegate continueWithoutCredentialForAuthenticationChallenge:]):
   25724         (-[WebBaseResourceHandleDelegate cancelWithError:]):
   25725         * WebView.subproj/WebDefaultResourceLoadDelegate.m:
   25726         (-[WebDefaultResourceLoadDelegate webView:resource:didReceiveAuthenticationChallenge:fromDataSource:]):
   25727         (-[WebDefaultResourceLoadDelegate webView:resource:didCancelAuthenticationChallenge:fromDataSource:]):
   25728         * WebView.subproj/WebResourceLoadDelegate.h:
   25729 
   25730 2003-04-30  Maciej Stachowiak  <mjs (a] apple.com>
   25731 
   25732         Reviewed by Darin.
   25733         Converted download code to use an
   25734         NSURLDownloadAuthenticationChallenge rather than a vanilla
   25735         NSURLAuthenticationChallenge.
   25736 
   25737         * Misc.subproj/WebDownload.m:
   25738         (-[WebDownloadInternal download:didReceiveAuthenticationChallenge:]):
   25739         (-[WebDownloadInternal download:didCancelAuthenticationChallenge:]):
   25740         * Panels.subproj/WebPanelAuthenticationHandler.h:
   25741         * Panels.subproj/WebPanelAuthenticationHandler.m:
   25742         (-[WebPanelAuthenticationHandler startAuthentication:window:]):
   25743         (-[WebPanelAuthenticationHandler _authenticationDoneWithChallenge:result:]):
   25744 
   25745 2003-04-30  Ken Kocienda  <kocienda (a] apple.com>
   25746 
   25747         Reviewed by Richard
   25748 
   25749         Changed cookie-related constants and enums to 
   25750         the API-approved names. Also did some text
   25751         search and replace in comments to catch usages
   25752         of now-obsolete names.
   25753 
   25754         * WebCoreSupport.subproj/WebCookieAdapter.m:
   25755         (-[WebCookieAdapter cookiesEnabled]):
   25756 
   25757 2003-04-30  Chris Blumenberg  <cblu (a] apple.com>
   25758 
   25759         FIXED: Clients of WebKit should have separate icon DB's
   25760 
   25761         Reviewed by rjw.
   25762 
   25763         * English.lproj/StringsNotToBeLocalized.txt:
   25764         * Misc.subproj/WebIconDatabase.h:
   25765         * Misc.subproj/WebIconDatabase.m:
   25766         (-[WebIconDatabase _createFileDatabase]): If the icon db hasn't been set using the defaults, create o directory using the bundle id. 
   25767         * WebKit.exp:
   25768 
   25769 2003-04-30  Richard Williamson   <rjw (a] apple.com>
   25770 
   25771         API changes from final review meeting.
   25772         
   25773         Moved view registry to WebView.
   25774         Changed WebHistoryItem to use NSTimeInterval (at least for public API).
   25775         Still creates a NSCalendarDate for compatibility.  We should wean Safari
   25776         off it's use of NSCalendarDate.
   25777         Added public init method for WebHistoryItem.
   25778         Removed anchor from WebHistoryItem.
   25779         Added WebHistorySavedNotification.
   25780         
   25781         Reviewed by Darin.
   25782 
   25783         * History.subproj/WebHistory.m:
   25784         (-[WebHistory addItemForURL:]):
   25785         * History.subproj/WebHistoryItem.h:
   25786         * History.subproj/WebHistoryItem.m:
   25787         (-[WebHistoryItem initWithURLString:title:lastVisitedTimeInterval:]):
   25788         (-[WebHistoryItem copyWithZone:]):
   25789         (-[WebHistoryItem lastVisitedTimeInterval]):
   25790         (-[WebHistoryItem anchor]):
   25791         (-[WebHistoryItem _setLastVisitedTimeInterval:]):
   25792         (-[WebHistoryItem _lastVisitedDate]):
   25793         (-[WebHistoryItem dictionaryRepresentation]):
   25794         (-[WebHistoryItem initFromDictionaryRepresentation:]):
   25795         * History.subproj/WebHistoryItemPrivate.h:
   25796         * History.subproj/WebHistoryPrivate.m:
   25797         (-[WebHistoryPrivate insertItem:atDateIndex:]):
   25798         (-[WebHistoryPrivate removeItemForURLString:]):
   25799         (-[WebHistoryPrivate addItem:]):
   25800         (-[WebHistoryPrivate _loadHistoryGuts:URL:error:]):
   25801         * Plugins.subproj/WebPluginDatabase.m:
   25802         (-[WebPluginDatabase init]):
   25803         * WebView.subproj/WebFrame.h:
   25804         * WebView.subproj/WebFrame.m:
   25805         * WebView.subproj/WebFramePrivate.m:
   25806         (-[WebFrame _transitionToCommitted:]):
   25807         * WebView.subproj/WebView.h:
   25808         * WebView.subproj/WebView.m:
   25809         (+[WebView registerViewClass:representationClass:forMIMEType:]):
   25810 
   25811 2003-04-29  Maciej Stachowiak  <mjs (a] apple.com>
   25812 
   25813         Reviewed by Darin.
   25814 
   25815         - Adjusted for authentication API change - now we expect
   25816         authentication via the connection delegate, not a separate global
   25817         authentication handler
   25818 
   25819         * Misc.subproj/WebKit.h: Include WebDownload.h
   25820         * Misc.subproj/WebDownload.h: Added.
   25821         * Misc.subproj/WebDownload.m: Added - this new class is just like NSURLDownload
   25822         but if the standard auth delegate methods are not implemented, it prompts using
   25823         the standard AppKit sheet.
   25824         * Panels.subproj/WebPanelAuthenticationHandler.h:
   25825         * Panels.subproj/WebPanelAuthenticationHandler.m:
   25826         (+[WebPanelAuthenticationHandler sharedHandler]): New method to get a shared
   25827         handler, since we no logner register an instance with WebFoundation.
   25828         (-[WebPanelAuthenticationHandler startAuthentication:window:]): Do things
   25829         using the new API.
   25830         (-[WebPanelAuthenticationHandler _authenticationDoneWithChallenge:result:]):
   25831         Likewise.
   25832         * WebKit.exp: Export WebDownload.
   25833         * WebKit.pbproj/project.pbxproj: Add new files to  build.
   25834 
   25835         - Removed WebStandardPanels - this is removed from the API.
   25836         
   25837         * Panels.subproj/WebStandardPanels.h: Removed.
   25838         * Panels.subproj/WebStandardPanels.m: Removed.
   25839         * Panels.subproj/WebStandardPanelsPrivate.h: Removed.
   25840         * Panels.subproj/WebAuthenticationPanel.m: Remove WebStandardPanels.h import.
   25841 
   25842         - Added new resource load delegate auth methods:
   25843         * WebView.subproj/WebResourceLoadDelegate.h:
   25844 
   25845         - Use WebDownload where appropriate, and remove use of WebStandardPanels:
   25846         * WebView.subproj/WebBaseResourceHandleDelegate.h:
   25847         * WebView.subproj/WebBaseResourceHandleDelegate.m:
   25848         (-[WebBaseResourceHandleDelegate connection:didReceiveAuthenticationChallenge:]):
   25849         Pass to resource load delegate.
   25850         (-[WebBaseResourceHandleDelegate connection:didCancelAuthenticationChallenge:]):
   25851         Likewise.
   25852         (-[WebBaseResourceHandleDelegate dealloc]): Don't track currentURL any more.
   25853         (-[WebBaseResourceHandleDelegate connection:willSendRequest:redirectResponse:]): Likewise.
   25854         (-[WebBaseResourceHandleDelegate connectionDidFinishLoading:]): Likewise.
   25855         (-[WebBaseResourceHandleDelegate connection:didFailLoadingWithError:]): Likewise.
   25856         (-[WebBaseResourceHandleDelegate cancelWithError:]): Likewise.
   25857         * WebView.subproj/WebDefaultResourceLoadDelegate.m:
   25858         (-[WebDefaultResourceLoadDelegate webView:resource:didReceiveAuthenticationChallenge:fromDataSource:]): 
   25859         Prompt using the standard panel.
   25860 
   25861         (-[WebDefaultResourceLoadDelegate webView:resource:didCancelAuthenticationChallenge:fromDataSource:]):
   25862         Cancel prompting using the standard panel.
   25863         * WebView.subproj/WebMainResourceClient.m:
   25864         (-[WebMainResourceClient continueAfterContentPolicy:response:]): Use WebDownload instead
   25865         of NSURLDownload.
   25866         * WebView.subproj/WebView.h: Remove unneeded @class directives,
   25867         and mention WebDownload instead of NSURLDownload.
   25868         * WebView.subproj/WebViewPrivate.h:
   25869         * WebView.subproj/WebViewPrivate.m:
   25870         (-[WebView _downloadURL:toDirectory:]): Use WebDownload instead of NSURLDownload.
   25871         (-[WebView _cacheResourceLoadDelegateImplementations]): Track auth methods too.
   25872 
   25873 2003-04-30  Ken Kocienda  <kocienda (a] apple.com>
   25874 
   25875         Reviewed by Darin
   25876 
   25877         Changed cookie-related class names:
   25878 
   25879         WebCookie -> NSHTTPCookie
   25880         WebCookiePrivate -> NSHTTPCookieInternal     
   25881         WebCookieManager -> NSHTTPCookieStorage      
   25882         WebCookieManagerPrivate -> NSHTTPCookieStorageInternal     
   25883 
   25884         * WebCoreSupport.subproj/WebCookieAdapter.m:
   25885         (-[WebCookieAdapter cookiesEnabled]):
   25886         (-[WebCookieAdapter cookiesForURL:]):
   25887         (-[WebCookieAdapter setCookies:forURL:policyBaseURL:]):
   25888 
   25889 2003-04-30  Ken Kocienda  <kocienda (a] apple.com>
   25890 
   25891         Reviewed by Darin
   25892 
   25893         Changed file names for these classes. The contents
   25894         of the files themselves remain unchanged.
   25895 
   25896         WebCookie -> NSHTTPCookie.
   25897         WebCookieManager -> NSHTTPCookieStorage.
   25898 
   25899         * WebCoreSupport.subproj/WebCookieAdapter.m:
   25900         * WebView.subproj/WebMainResourceClient.m:
   25901 
   25902 2003-04-30  Darin Adler  <darin (a] apple.com>
   25903 
   25904         Reviewed by Ken.
   25905 
   25906         - make change to avoid misunderstanding that led to bug report 3179394
   25907           "Safari: Request that temp files use actual file extensions"
   25908 
   25909         * Plugins.subproj/WebBaseNetscapePluginStream.m:
   25910         (-[WebBaseNetscapePluginStream finishedLoadingWithData:]):
   25911         Don't put a dot between "SafariPlugInStream" and the the 6-digit unique number, so the number
   25912         does not look like an extension. Also make it "WebKitPlugInStream" since this is used for
   25913         other WebKit clients, and not just Safari.
   25914 
   25915         * English.lproj/StringsNotToBeLocalized.txt: Update for recent changes.
   25916 
   25917 2003-04-29  Richard Williamson   <rjw (a] apple.com>
   25918 
   25919         API changes from final review meeting.
   25920         Added textEncodingName method to WebDataSource.
   25921         
   25922         Reviewed by Chris.
   25923 
   25924         * WebView.subproj/WebDataSource.h:
   25925         * WebView.subproj/WebDataSource.m:
   25926         (-[WebDataSource textEncodingName]):
   25927 
   25928 2003-04-29  Chris Blumenberg  <cblu (a] apple.com>
   25929 
   25930         Updated to use the new NSURLDownload API.
   25931         Reviewed by rjw.
   25932 
   25933         * WebView.subproj/WebDataSourcePrivate.h:
   25934         * WebView.subproj/WebDataSourcePrivate.m:
   25935         (-[WebDataSourcePrivate dealloc]):
   25936         * WebView.subproj/WebMainResourceClient.m:
   25937         (-[WebMainResourceClient continueAfterContentPolicy:response:]):
   25938         * WebView.subproj/WebViewPrivate.m:
   25939         (-[WebView _downloadURL:toDirectory:]):
   25940 
   25941 2003-04-29  Richard Williamson   <rjw (a] apple.com>
   25942 
   25943         Added "Copyright (C) 2003 Apple Computer, Inc. All rights reserved."
   25944         to all public headers.  Also made formatting consistent.
   25945     
   25946         Reviewed by darin.
   25947 
   25948         * Carbon.subproj/CarbonUtils.h:
   25949         * Carbon.subproj/HIWebView.h:
   25950         * History.subproj/WebBackForwardList.h:
   25951         * History.subproj/WebHistory.h:
   25952         * History.subproj/WebHistoryItem.h:
   25953         * Misc.subproj/WebKit.h:
   25954         * Misc.subproj/WebKitErrors.h:
   25955         * WebView.subproj/WebDataSource.h:
   25956         * WebView.subproj/WebDocument.h:
   25957         * WebView.subproj/WebFrame.h:
   25958         * WebView.subproj/WebFrameLoadDelegate.h:
   25959         * WebView.subproj/WebFrameView.h:
   25960         * WebView.subproj/WebPolicyDelegate.h:
   25961         * WebView.subproj/WebPreferences.h:
   25962         * WebView.subproj/WebResourceLoadDelegate.h:
   25963         * WebView.subproj/WebUIDelegate.h:
   25964         * WebView.subproj/WebView.h:
   25965 
   25966 2003-04-28  Don Melton  <gramps (a] apple.com>
   25967 
   25968         Fixed 3225050 -- Default font size should be 16px
   25969         Fixed 3241813 -- No longer spoof as WinIE for abcnews.go.com when
   25970         default font size becomes 16px
   25971 
   25972         Reviewed by Darin and Maciej.
   25973 
   25974         * English.lproj/StringsNotToBeLocalized.txt:
   25975 
   25976         Updated.
   25977 
   25978         * WebCoreSupport.subproj/WebTextRenderer.m:
   25979         (-[WebTextRenderer initWithFont:usingPrinterFont:]):
   25980 
   25981         We need to adjust Times, Helvetica, and Courier to closely match the
   25982         vertical metrics of their Microsoft counterparts that are the de facto
   25983         web standard.  The AppKit adjustment of 20% is too big and is
   25984         incorrectly added to line spacing, so we use a 15% adjustment instead
   25985         and add it to the ascent.
   25986 
   25987         * WebView.subproj/WebPreferences.m:
   25988         (+[WebPreferences initialize]):
   25989 
   25990         Changed default font size from 14 to 16 pixels and default fixed font
   25991         size from 14 to 13 pixels.  Changed standard font from Lucida Grande to
   25992         Times, serif font from Times New Roman to Times, and sans serif font
   25993         from Lucida Grande to Helvetica.  Also replaced some stray tabs with
   25994         spaces and made a few other anal-retentive formatting changes.
   25995 
   25996         * WebView.subproj/WebUserAgentSpoofTable.c:
   25997         (hash):
   25998         (_web_findSpoofTableEntry):
   25999         * WebView.subproj/WebUserAgentSpoofTable.gperf:
   26000 
   26001         No longer spoof as Windows MSIE for abcnews.go.com since we've also
   26002         changed the default font size.
   26003 
   26004 2003-04-28  Richard Williamson  <rjw (a] apple.com>
   26005 
   26006         API changes from final review meeting.
   26007         
   26008         goBackOrForwardToItem: -> goToBackForwardItem:
   26009         drop "Window" from WebUIDelegate method names.
   26010         WebElementIsSelectedTextKey -> WebElementIsSelectedKey
   26011         Cross-frame searchFor on WebView now public.
   26012         
   26013         Reviewed by Chris.
   26014 
   26015         * Plugins.subproj/WebBaseNetscapePluginView.m:
   26016         * WebCoreSupport.subproj/WebBridge.m:
   26017         * WebKit.exp:
   26018         * WebView.subproj/WebDefaultContextMenuDelegate.m:
   26019         * WebView.subproj/WebDefaultUIDelegate.m:
   26020         * WebView.subproj/WebFrame.h:
   26021         * WebView.subproj/WebFramePrivate.m:
   26022         * WebView.subproj/WebHTMLView.m:
   26023         * WebView.subproj/WebHTMLViewPrivate.m:
   26024         * WebView.subproj/WebImageView.m:
   26025         * WebView.subproj/WebPolicyDelegate.h:
   26026         * WebView.subproj/WebTextView.m:
   26027         * WebView.subproj/WebUIDelegate.h:
   26028         * WebView.subproj/WebView.h:
   26029         * WebView.subproj/WebView.m:
   26030         * WebView.subproj/WebViewPrivate.h:
   26031         * WebView.subproj/WebViewPrivate.m:
   26032 
   26033 2003-04-28  Ken Kocienda  <kocienda (a] apple.com>
   26034 
   26035         Reviewed by Chris
   26036 
   26037         * Plugins.subproj/WebBaseNetscapePluginStream.m:
   26038         (-[WebBaseNetscapePluginStream setResponse:]): _lastModifiedDate on
   26039         NSURLResponse is now SPI.
   26040         * WebView.subproj/WebDataSourcePrivate.m:
   26041         (-[WebDataSource _commitIfReady:]): Ditto.
   26042 
   26043 2003-04-27  Chris Blumenberg  <cblu (a] apple.com>
   26044 
   26045         Improved headerdoc comments.
   26046         * Misc.subproj/WebKitErrors.h:
   26047         * WebView.subproj/WebFrameLoadDelegate.h:
   26048 
   26049 2003-04-25  Don Melton  <gramps (a] apple.com>
   26050 
   26051         Backed out Richard's (hopefully) accidental checkin of our experiments
   26052         from earlier today.  Otherwise many layout tests are hosed.  But this
   26053         change, or something like it, will arrive soon.
   26054 
   26055         * WebCoreSupport.subproj/WebTextRenderer.m:
   26056         (-[WebTextRenderer initWithFont:usingPrinterFont:]):
   26057 
   26058 2003-04-25  Richard Williamson   <rjw (a] apple.com>
   26059 
   26060         API changes from final review meeting.
   26061         
   26062         WebView:
   26063         Added canShowMIMETypeAsHTML:
   26064 
   26065         WebFrameView:
   26066         Removed scrollView
   26067         Removed isDocumentHTML
   26068         
   26069         WebDataSource:
   26070         Removed isDocumentHTML
   26071         
   26072         Reviewed by Chris.
   26073 
   26074         * WebCoreSupport.subproj/WebTextRenderer.m:
   26075         (-[WebTextRenderer initWithFont:usingPrinterFont:]):
   26076         * WebView.subproj/WebDataSource.h:
   26077         * WebView.subproj/WebDataSource.m:
   26078         * WebView.subproj/WebDataSourcePrivate.h:
   26079         * WebView.subproj/WebDataSourcePrivate.m:
   26080         (-[WebDataSource _layoutChildren]):
   26081         (-[WebDataSource _mainDocumentError]):
   26082         (-[WebDataSource _isDocumentHTML]):
   26083         * WebView.subproj/WebFramePrivate.m:
   26084         (-[WebFrame _makeDocumentView]):
   26085         (-[WebFrame _setState:]):
   26086         (-[WebFrame _isLoadComplete]):
   26087         * WebView.subproj/WebFrameView.h:
   26088         * WebView.subproj/WebFrameView.m:
   26089         (-[WebFrameView setAllowsScrolling:]):
   26090         (-[WebFrameView allowsScrolling]):
   26091         (-[WebFrameView documentView]):
   26092         (-[WebFrameView drawRect:]):
   26093         (-[WebFrameView setFrameSize:]):
   26094         * WebView.subproj/WebFrameViewPrivate.h:
   26095         * WebView.subproj/WebFrameViewPrivate.m:
   26096         (-[WebFrameView _setDocumentView:]):
   26097         (-[WebFrameView _scrollView]):
   26098         (-[WebFrameView _contentView]):
   26099         (-[WebFrameView _verticalKeyboardScrollAmount]):
   26100         (-[WebFrameView _horizontalKeyboardScrollAmount]):
   26101         (-[WebFrameView _scrollToBottomLeft]):
   26102         (+[WebFrameView _viewTypesAllowImageTypeOmission:]):
   26103         (+[WebFrameView _canShowMIMETypeAsHTML:]):
   26104         * WebView.subproj/WebHTMLView.m:
   26105         (-[WebHTMLView _setPrinting:pageWidth:]):
   26106         * WebView.subproj/WebHTMLViewPrivate.m:
   26107         (-[WebHTMLView _updateMouseoverWithEvent:]):
   26108         * WebView.subproj/WebView.h:
   26109         * WebView.subproj/WebView.m:
   26110         (+[WebView canShowMIMETypeAsHTML:]):
   26111 
   26112 2003-04-25  Chris Blumenberg  <cblu (a] apple.com>
   26113 
   26114         Renamed WebDownload to NSURLDownload and moved it to WebFoundation.
   26115 
   26116         Reviewed by rjw.
   26117 
   26118         * Downloads.subproj/WebBinHexDecoder.h: Removed.
   26119         * Downloads.subproj/WebBinHexDecoder.m: Removed.
   26120         * Downloads.subproj/WebDownload.h: Removed.
   26121         * Downloads.subproj/WebDownload.m: Removed.
   26122         * Downloads.subproj/WebDownloadDecoder.h: Removed.
   26123         * Downloads.subproj/WebDownloadPrivate.h: Removed.
   26124         * Downloads.subproj/WebGZipDecoder.h: Removed.
   26125         * Downloads.subproj/WebGZipDecoder.m: Removed.
   26126         * Downloads.subproj/WebMacBinaryDecoder.h: Removed.
   26127         * Downloads.subproj/WebMacBinaryDecoder.m: Removed.
   26128         * Downloads.subproj/crc16.h: Removed.
   26129         * Downloads.subproj/crc16.m: Removed.
   26130         * English.lproj/Localizable.strings:
   26131         * English.lproj/StringsNotToBeLocalized.txt:
   26132         * Misc.subproj/WebKit.h:
   26133         * Misc.subproj/WebKitErrors.h:
   26134         * Misc.subproj/WebKitErrors.m:
   26135         (-[NSError _initWithPluginErrorCode:contentURLString:pluginPageURLString:pluginName:MIMEType:]):
   26136         (registerErrors):
   26137         * Misc.subproj/WebNSWorkspaceExtras.h: Removed.
   26138         * Misc.subproj/WebNSWorkspaceExtras.m: Removed.
   26139         * WebKit.exp:
   26140         * WebKit.pbproj/project.pbxproj:
   26141         * WebView.subproj/WebDataSource.m:
   26142         * WebView.subproj/WebDataSourcePrivate.m:
   26143         * WebView.subproj/WebMainResourceClient.h:
   26144         * WebView.subproj/WebMainResourceClient.m:
   26145         (-[WebMainResourceClient initWithDataSource:]):
   26146         (-[WebMainResourceClient continueAfterContentPolicy:response:]):
   26147         * WebView.subproj/WebView.h:
   26148         * WebView.subproj/WebViewPrivate.m:
   26149         (-[WebView _downloadURL:toDirectory:]):
   26150 
   26151 2003-04-25  Richard Williamson   <rjw (a] apple.com>
   26152 
   26153         Final API review changes.
   26154 
   26155         parent -> parentFrame
   26156         children -> childFrames
   26157 
   26158         Reviewed by Chris.
   26159 
   26160         * WebView.subproj/WebHTMLView.m:
   26161         (-[WebHTMLView _setPrinting:pageWidth:]):
   26162 
   26163 2003-04-25  Richard Williamson   <rjw (a] apple.com>
   26164 
   26165         Final API review changes.
   26166 
   26167         parent -> parentFrame
   26168         children -> childFrames
   26169 
   26170         Reviewed by Chris.
   26171 
   26172         * WebCoreSupport.subproj/WebBridge.m:
   26173         (-[WebBridge childFrames]):
   26174         (-[WebBridge frameDetached]):
   26175 
   26176 2003-04-25  Richard Williamson   <rjw (a] apple.com>
   26177 
   26178         Final API review changes.
   26179         
   26180         WebFrame:
   26181         parent -> parentFrame
   26182         children -> childFrames
   26183         loadString:baseURL: -> loadHTMLString:baseURL:
   26184         laodData:encodingName:baseURL: -> loadData:MIMEType:textEncodingName:baseURL:
   26185         
   26186         Reviewed by Chris.
   26187 
   26188         * WebView.subproj/WebDataProtocol.h:
   26189         * WebView.subproj/WebDataProtocol.m:
   26190         (-[WebDataRequestParameters dealloc]):
   26191         (-[NSURLRequest _webDataRequestMIMEType]):
   26192         (-[NSURLRequest _webDataRequestSetMIMEType:]):
   26193         (-[WebDataProtocol startLoading]):
   26194         * WebView.subproj/WebDataSource.m:
   26195         (-[WebDataSource isLoading]):
   26196         * WebView.subproj/WebDataSourcePrivate.m:
   26197         (-[WebDataSource _recursiveStopLoading]):
   26198         (-[WebDataSource _layoutChildren]):
   26199         (-[WebDataSource _defersCallbacksChanged]):
   26200         * WebView.subproj/WebFrame.h:
   26201         * WebView.subproj/WebFrame.m:
   26202         (-[WebFrame loadHTMLString:baseURL:]):
   26203         (-[WebFrame findFrameNamed:]):
   26204         (-[WebFrame parentFrame]):
   26205         (-[WebFrame childFrames]):
   26206         * WebView.subproj/WebFramePrivate.m:
   26207         (-[WebFrame _createItem]):
   26208         (-[WebFrame _descendantFrameNamed:]):
   26209         (-[WebFrame _transitionToCommitted:]):
   26210         (-[WebFrame _isLoadComplete]):
   26211         (+[WebFrame _recursiveCheckCompleteFromFrame:]):
   26212         (-[WebFrame _textSizeMultiplierChanged]):
   26213         (-[WebFrame _viewWillMoveToHostWindow:]):
   26214         (-[WebFrame _viewDidMoveToHostWindow]):
   26215         (-[WebFrame _saveDocumentAndScrollState]):
   26216         (-[WebFrame _loadDataSource:withLoadType:formState:]):
   26217         * WebView.subproj/WebViewPrivate.m:
   26218         (-[WebViewPrivate _clearControllerReferences:]):
   26219         (-[WebView _frameForDataSource:fromFrame:]):
   26220         (-[WebView _frameForView:fromFrame:]):
   26221 
   26222 2003-04-25  Chris Blumenberg  <cblu (a] apple.com>
   26223 
   26224         Don't do "@class WebDataSource" as that class isn't mentioned in this file.
   26225 
   26226         * WebView.subproj/WebFrameLoadDelegate.h:
   26227 
   26228 2003-04-25  Chris Blumenberg  <cblu (a] apple.com>
   26229 
   26230         Turned WebLocationChangeDelegate into WebFrameLoadDelegate. Renamed WebFrameLoadDelegate all methods to pass a frame instead of the data source.
   26231 
   26232         Reviewed by rjw.
   26233 
   26234         * English.lproj/Localizable.strings:
   26235         * Misc.subproj/WebKit.h:
   26236         * Misc.subproj/WebKitErrors.h:
   26237         * Misc.subproj/WebKitErrors.m:
   26238         (registerErrors):
   26239         * WebCoreSupport.subproj/WebBridge.m:
   26240         * WebKit.pbproj/project.pbxproj:
   26241         * WebView.subproj/WebDataSourcePrivate.m:
   26242         (-[WebDataSource _startLoading:]):
   26243         (-[WebDataSource _setTitle:]):
   26244         (-[WebDataSource _setRequest:]):
   26245         (-[WebDataSource _updateIconDatabaseWithURL:]):
   26246         * WebView.subproj/WebDefaultFrameLoadDelegate.h: Added.
   26247         * WebView.subproj/WebDefaultFrameLoadDelegate.m: Added.
   26248         (+[WebDefaultFrameLoadDelegate sharedFrameLoadDelegate]):
   26249         (-[WebDefaultFrameLoadDelegate webView:didStartProvisionalLoadForFrame:]):
   26250         (-[WebDefaultFrameLoadDelegate webView:didReceiveServerRedirectForProvisionalLoadForFrame:]):
   26251         (-[WebDefaultFrameLoadDelegate webView:didFailProvisionalLoadWithError:forFrame:]):
   26252         (-[WebDefaultFrameLoadDelegate webView:didCommitLoadForFrame:]):
   26253         (-[WebDefaultFrameLoadDelegate webView:didReceiveTitle:forFrame:]):
   26254         (-[WebDefaultFrameLoadDelegate webView:didReceiveIcon:forFrame:]):
   26255         (-[WebDefaultFrameLoadDelegate webView:didFinishLoadForFrame:]):
   26256         (-[WebDefaultFrameLoadDelegate webView:didFailLoadWithError:forFrame:]):
   26257         (-[WebDefaultFrameLoadDelegate webView:didChangeLocationWithinPageForFrame:]):
   26258         (-[WebDefaultFrameLoadDelegate webView:willPerformClientRedirectToURL:delay:fireDate:forFrame:]):
   26259         (-[WebDefaultFrameLoadDelegate webView:didCancelClientRedirectForFrame:]):
   26260         (-[WebDefaultFrameLoadDelegate webView:willCloseFrame:]):
   26261         * WebView.subproj/WebDefaultLocationChangeDelegate.h: Removed.
   26262         * WebView.subproj/WebDefaultLocationChangeDelegate.m: Removed.
   26263         * WebView.subproj/WebFrame.m:
   26264         * WebView.subproj/WebFrameLoadDelegate.h: Added.
   26265         * WebView.subproj/WebFramePrivate.m:
   26266         (-[WebFrame _closeOldDataSources]):
   26267         (-[WebFrame _transitionToCommitted:]):
   26268         (-[WebFrame _isLoadComplete]):
   26269         (-[WebFrame _loadItem:withLoadType:]):
   26270         (-[WebFrame _continueFragmentScrollAfterNavigationPolicy:formState:]):
   26271         (-[WebFrame _clientRedirectedTo:delay:fireDate:lockHistory:]):
   26272         (-[WebFrame _clientRedirectCancelled]):
   26273         * WebView.subproj/WebLocationChangeDelegate.h: Removed.
   26274         * WebView.subproj/WebMainResourceClient.m:
   26275         (-[WebMainResourceClient interruptForPolicyChangeError]):
   26276         * WebView.subproj/WebPolicyDelegate.h:
   26277         * WebView.subproj/WebView.h:
   26278         * WebView.subproj/WebView.m:
   26279         (-[WebView setFrameLoadDelegate:]):
   26280         (-[WebView frameLoadDelegate]):
   26281         * WebView.subproj/WebViewPrivate.h:
   26282         * WebView.subproj/WebViewPrivate.m:
   26283         (-[WebViewPrivate dealloc]):
   26284         (-[WebView _frameLoadDelegateForwarder]):
   26285 
   26286 2003-04-25  John Sullivan  <sullivan (a] apple.com>
   26287 
   26288         - fixed 3240676 -- REGRESSION: Using old Safari then new one 
   26289         erases history
   26290 
   26291         Reviewed by Darin.
   26292 
   26293         * History.subproj/WebHistoryPrivate.m:
   26294         (-[WebHistoryPrivate _loadHistoryGuts:URL:error:]):
   26295         The new code to use a synchronous NSURLConnection to read the
   26296         property list file did not take into account the two possible
   26297         formats of the file (NSArray or NSDictionary), so reading
   26298         old-style history files was completely broken. While in here,
   26299         I distributed the variable declarations to first use.
   26300 
   26301 2003-04-24  Maciej Stachowiak  <mjs (a] apple.com>
   26302 
   26303         Fixed build.
   26304         * Panels.subproj/WebStandardPanels.m:
   26305         (-[WebStandardPanels setUsesStandardAuthenticationPanel:]):
   26306 
   26307 2003-04-24  Maciej Stachowiak  <mjs (a] apple.com>
   26308 
   26309         Reviewed by Ken.
   26310 
   26311         Updated for auth API changes.
   26312         * Panels.subproj/WebStandardPanels.m:
   26313         (-[WebStandardPanels setUsesStandardAuthenticationPanel:]): 
   26314 
   26315 2003-04-24  Richard Williamson   <rjw (a] apple.com>
   26316 
   26317         Final API review changes.
   26318         
   26319         Renamed WebWindowOperationsDelegate to WebUIDelegate.
   26320         Merged WebContextMenuDelegate into WebUIDelegate.
   26321         Fixed crasher if history file doesn't exist.
   26322         
   26323         Reviewed by Ken.
   26324 
   26325         * History.subproj/WebHistory.h:
   26326         * History.subproj/WebHistoryPrivate.m:
   26327         (-[WebHistoryPrivate _loadHistoryGuts:URL:error:]):
   26328         * Misc.subproj/WebKit.h:
   26329         * Plugins.subproj/WebBaseNetscapePluginView.m:
   26330         (-[WebBaseNetscapePluginView loadPluginRequest:]):
   26331         (-[WebBaseNetscapePluginView status:]):
   26332         * Plugins.subproj/WebPluginController.m:
   26333         (-[WebPluginController showStatus:]):
   26334         * WebCoreSupport.subproj/WebBridge.h:
   26335         * WebCoreSupport.subproj/WebBridge.m:
   26336         (-[WebBridge createWindowWithURL:frameName:]):
   26337         (-[WebBridge showWindow]):
   26338         (-[WebBridge areToolbarsVisible]):
   26339         (-[WebBridge setToolbarsVisible:]):
   26340         (-[WebBridge isStatusBarVisible]):
   26341         (-[WebBridge setStatusBarVisible:]):
   26342         (-[WebBridge setWindowFrame:]):
   26343         (-[WebBridge windowFrame]):
   26344         (-[WebBridge setWindowContentRect:]):
   26345         (-[WebBridge windowContentRect]):
   26346         (-[WebBridge setWindowIsResizable:]):
   26347         (-[WebBridge windowIsResizable]):
   26348         (-[WebBridge firstResponder]):
   26349         (-[WebBridge makeFirstResponder:]):
   26350         (-[WebBridge closeWindow]):
   26351         (-[WebBridge runJavaScriptAlertPanelWithMessage:]):
   26352         (-[WebBridge runJavaScriptConfirmPanelWithMessage:]):
   26353         (-[WebBridge runJavaScriptTextInputPanelWithPrompt:defaultText:returningText:]):
   26354         (-[WebBridge runOpenPanelForFileButtonWithResultListener:]):
   26355         (-[WebBridge setStatusText:]):
   26356         (-[WebBridge focusWindow]):
   26357         * WebKit.exp:
   26358         * WebKit.pbproj/project.pbxproj:
   26359         * WebView.subproj/WebContextMenuDelegate.h: Removed.
   26360         * WebView.subproj/WebDefaultContextMenuDelegate.h:
   26361         * WebView.subproj/WebDefaultContextMenuDelegate.m:
   26362         * WebView.subproj/WebDefaultUIDelegate.h:
   26363         * WebView.subproj/WebDefaultUIDelegate.m:
   26364         (+[WebDefaultUIDelegate sharedUIDelegate]):
   26365         (-[WebDefaultUIDelegate dealloc]):
   26366         * WebView.subproj/WebDefaultWindowOperationsDelegate.h: Removed.
   26367         * WebView.subproj/WebDefaultWindowOperationsDelegate.m: Removed.
   26368         * WebView.subproj/WebFrame.m:
   26369         * WebView.subproj/WebFramePrivate.m:
   26370         (-[WebFrame _continueLoadRequestAfterNewWindowPolicy:frameName:formState:]):
   26371         * WebView.subproj/WebFrameView.m:
   26372         * WebView.subproj/WebHTMLViewPrivate.m:
   26373         * WebView.subproj/WebUIDelegate.h:
   26374         * WebView.subproj/WebView.h:
   26375         * WebView.subproj/WebView.m:
   26376         (-[WebView setUIDelegate:]):
   26377         (-[WebView UIDelegate]):
   26378         (-[WebView downloadDelegate]):
   26379         * WebView.subproj/WebViewPrivate.h:
   26380         * WebView.subproj/WebViewPrivate.m:
   26381         (-[WebViewPrivate init]):
   26382         (-[WebViewPrivate dealloc]):
   26383         (-[WebView _openNewWindowWithRequest:]):
   26384         (-[WebView _menuForElement:]):
   26385         (-[WebView _mouseDidMoveOverElement:modifierFlags:]):
   26386         (-[WebView _UIDelegateForwarder]):
   26387         * WebView.subproj/WebWindowOperationsDelegate.h: Removed.
   26388 
   26389 2003-04-24  Richard Williamson   <rjw (a] apple.com>
   26390 
   26391         Final API review changes.
   26392 
   26393         * History.subproj/WebHistoryItem.h:
   26394         * History.subproj/WebHistoryItem.m:
   26395         (-[WebHistoryItem setAlternateTitle:]):
   26396         (-[WebHistoryItem initFromDictionaryRepresentation:]):
   26397 
   26398 2003-04-24  Richard Williamson   <rjw (a] apple.com>
   26399 
   26400         Final API review changes.
   26401         
   26402         Reviewed by Chris.
   26403 
   26404         * History.subproj/WebBackForwardList.h:
   26405         * History.subproj/WebBackForwardList.m:
   26406         (-[WebBackForwardList containsItem:]):
   26407         (-[WebBackForwardList capacity]):
   26408         (-[WebBackForwardList setCapacity:]):
   26409         (-[WebBackForwardList _clearPageCache]):
   26410         (-[WebBackForwardList setPageCacheSize:]):
   26411         (-[WebBackForwardList _setUsesPageCache:]):
   26412         (-[WebBackForwardList _usesPageCache]):
   26413         * History.subproj/WebHistory.h:
   26414         * History.subproj/WebHistory.m:
   26415         (+[WebHistory optionalSharedHistory]):
   26416         (+[WebHistory setOptionalSharedHistory:]):
   26417         (-[WebHistory init]):
   26418         (-[WebHistory loadFromURL:error:]):
   26419         (-[WebHistory saveToURL:error:]):
   26420         * History.subproj/WebHistoryItemPrivate.h:
   26421         * History.subproj/WebHistoryPrivate.h:
   26422         * History.subproj/WebHistoryPrivate.m:
   26423         (-[WebHistoryPrivate init]):
   26424         (-[WebHistoryPrivate dealloc]):
   26425         (-[WebHistoryPrivate _loadHistoryGuts:URL:error:]):
   26426         (-[WebHistoryPrivate loadFromURL:error:]):
   26427         (-[WebHistoryPrivate _saveHistoryGuts:URL:error:]):
   26428         (-[WebHistoryPrivate saveToURL:error:]):
   26429         * WebView.subproj/WebDataSourcePrivate.m:
   26430         (-[WebDataSource _setTitle:]):
   26431         * WebView.subproj/WebFramePrivate.m:
   26432         (-[WebFrame _transitionToCommitted:]):
   26433         (-[WebFrame _canCachePage]):
   26434         (-[WebFrame _purgePageCache]):
   26435 
   26436 2003-04-24  Maciej Stachowiak  <mjs (a] apple.com>
   26437 
   26438         Reviewed by Chris.
   26439 
   26440         * Panels.subproj/WebAuthenticationPanel.m:
   26441         (-[WebAuthenticationPanel setUpForChallenge:]): Update for new Challenge API.
   26442 
   26443 2003-04-24  Chris Blumenberg  <cblu (a] apple.com>
   26444 
   26445         Renamed - [NSURLResponse suggestedFilenameForSaving] to suggestedFilename and moved it to WebFoundation.
   26446 
   26447         Reviewed by mjs.
   26448 
   26449         * Downloads.subproj/WebDownload.m:
   26450         (-[WebDownload _createFileIfNecessary]):
   26451         * English.lproj/Localizable.strings:
   26452         * English.lproj/StringsNotToBeLocalized.txt:
   26453         * Misc.subproj/WebNSURLResponseExtras.h: Removed.
   26454         * Misc.subproj/WebNSURLResponseExtras.m: Removed.
   26455         * Plugins.subproj/WebNullPluginView.m: include NSError to unbreak build.
   26456         * WebKit.pbproj/project.pbxproj:
   26457 
   26458 2003-04-24  Chris Blumenberg  <cblu (a] apple.com>
   26459 
   26460         Removed WebPluginError and instead added fields to the userInfo of NSError for plug-in specific errors.
   26461 
   26462         Reviewed by rjw.
   26463 
   26464         * Misc.subproj/WebKitErrors.h:
   26465         * Misc.subproj/WebKitErrors.m:
   26466         (+[NSError _webKitErrorWithCode:failingURL:]):
   26467         (-[NSError _initWithPluginErrorCode:contentURLString:pluginPageURLString:pluginName:MIMEType:]):
   26468         * Misc.subproj/WebKitErrorsPrivate.h:
   26469         * Plugins.subproj/WebNetscapePluginDocumentView.m:
   26470         (-[WebNetscapePluginDocumentView setDataSource:]):
   26471         * Plugins.subproj/WebNullPluginView.h:
   26472         * Plugins.subproj/WebNullPluginView.m:
   26473         * Plugins.subproj/WebPlugInError.h: Removed.
   26474         * Plugins.subproj/WebPlugInError.m: Removed.
   26475         * Plugins.subproj/WebPluginErrorPrivate.h: Removed.
   26476         * WebCoreSupport.subproj/WebBridge.m:
   26477         (-[WebBridge viewForPluginWithURLString:attributes:baseURLString:MIMEType:]):
   26478         (-[WebBridge viewForJavaAppletWithFrame:attributes:baseURLString:]):
   26479         * WebKit.exp:
   26480         * WebKit.pbproj/project.pbxproj:
   26481         * WebView.subproj/WebDefaultResourceLoadDelegate.m:
   26482         (-[WebDefaultResourceLoadDelegate webView:plugInFailedWithError:dataSource:]):
   26483         * WebView.subproj/WebResourceLoadDelegate.h:
   26484 
   26485 2003-04-24  Darin Adler  <darin (a] apple.com>
   26486 
   26487         Reviewed by Chris.
   26488 
   26489         - fixed 3210096 -- server identifies page as UTF-8, page identifies itself as windows-1252, server must win
   26490 
   26491         * WebCoreSupport.subproj/WebBridge.m: (-[WebBridge receivedData:withDataSource:]):
   26492         Change for new WebCore API. Pass the encoding in a separate setEncoding call rather than
   26493         as a parameter in addData. Also don't handle default encoding here any more. Default encoding
   26494         is now handled the same way all the other preferences are, in a way that works better on the
   26495         WebCore side anyway; nil or empty string means use the default encoding.
   26496 
   26497 2003-04-24  Ken Kocienda  <kocienda (a] apple.com>
   26498 
   26499         Reviewed by Darin
   26500 
   26501         Changed WebError to NSError
   26502 
   26503         * Downloads.subproj/WebDownload.h:
   26504         * Downloads.subproj/WebDownload.m:
   26505         (-[WebDownload connection:didReceiveData:]):
   26506         (-[WebDownload connectionDidFinishLoading:]):
   26507         (-[WebDownload connection:didFailLoadingWithError:]):
   26508         (-[WebDownload _decodeData:]):
   26509         (-[WebDownload _writeDataForkData:resourceForkData:]):
   26510         (-[WebDownload _didCloseFile:]):
   26511         (-[WebDownload _cancelWithError:]):
   26512         (-[WebDownload _errorWithCode:]):
   26513         (CloseCompletionCallback):
   26514         * English.lproj/StringsNotToBeLocalized.txt:
   26515         * Misc.subproj/WebIconLoader.m:
   26516         (-[WebIconLoader connection:didFailLoadingWithError:]):
   26517         * Misc.subproj/WebKitErrors.h:
   26518         * Misc.subproj/WebKitErrors.m:
   26519         (+[NSError _webKitErrorWithCode:failingURL:]):
   26520         (registerErrors):
   26521         * Misc.subproj/WebKitErrorsPrivate.h:
   26522         * Plugins.subproj/WebNetscapePluginRepresentation.h:
   26523         * Plugins.subproj/WebNetscapePluginRepresentation.m:
   26524         (-[WebNetscapePluginRepresentation receivedError:withDataSource:]):
   26525         * Plugins.subproj/WebNetscapePluginStream.m:
   26526         (-[WebNetscapePluginStream connection:didFailLoadingWithError:]):
   26527         * Plugins.subproj/WebPlugInError.h:
   26528         * Plugins.subproj/WebPlugInError.m:
   26529         * WebCoreSupport.subproj/WebBridge.m:
   26530         * WebCoreSupport.subproj/WebSubresourceClient.m:
   26531         (+[WebSubresourceClient startLoadingResource:withURL:referrer:forDataSource:]):
   26532         (-[WebSubresourceClient receivedError:]):
   26533         (-[WebSubresourceClient connection:didFailLoadingWithError:]):
   26534         * WebKit.exp:
   26535         * WebView.subproj/WebBaseResourceHandleDelegate.h:
   26536         * WebView.subproj/WebBaseResourceHandleDelegate.m:
   26537         (-[WebBaseResourceHandleDelegate connection:didFailLoadingWithError:]):
   26538         (-[WebBaseResourceHandleDelegate cancelWithError:]):
   26539         (-[WebBaseResourceHandleDelegate cancelledError]):
   26540         * WebView.subproj/WebDataProtocol.m:
   26541         (-[WebDataProtocol startLoading]):
   26542         * WebView.subproj/WebDataSource.h:
   26543         * WebView.subproj/WebDataSourcePrivate.h:
   26544         * WebView.subproj/WebDataSourcePrivate.m:
   26545         (-[WebDataSource _stopLoadingInternal]):
   26546         (-[WebDataSource _setMainDocumentError:]):
   26547         (-[WebDataSource _receivedError:complete:]):
   26548         (-[WebDataSource _stopLoadingWithError:]):
   26549         (-[WebDataSource _mainDocumentError]):
   26550         * WebView.subproj/WebDefaultLocationChangeDelegate.m:
   26551         (-[WebDefaultLocationChangeDelegate webView:locationChangeDone:forDataSource:]):
   26552         * WebView.subproj/WebDefaultPolicyDelegate.m:
   26553         (-[WebDefaultPolicyDelegate webView:unableToImplementPolicyWithError:frame:]):
   26554         * WebView.subproj/WebDefaultResourceLoadDelegate.m:
   26555         (-[WebDefaultResourceLoadDelegate webView:resource:didFailLoadingWithError:fromDataSource:]):
   26556         * WebView.subproj/WebDocument.h:
   26557         * WebView.subproj/WebFrame.h:
   26558         * WebView.subproj/WebFramePrivate.m:
   26559         (-[WebFrame _handleUnimplementablePolicyWithErrorCode:forURL:]):
   26560         * WebView.subproj/WebFrameView.m:
   26561         * WebView.subproj/WebHTMLRepresentation.m:
   26562         (-[WebHTMLRepresentation receivedError:withDataSource:]):
   26563         * WebView.subproj/WebImageRepresentation.m:
   26564         (-[WebImageRepresentation receivedError:withDataSource:]):
   26565         * WebView.subproj/WebLocationChangeDelegate.h:
   26566         * WebView.subproj/WebMainResourceClient.m:
   26567         (-[WebMainResourceClient receivedError:]):
   26568         (-[WebMainResourceClient cancelWithError:]):
   26569         (-[WebMainResourceClient interruptForPolicyChangeError]):
   26570         (-[WebMainResourceClient connection:didFailLoadingWithError:]):
   26571         (-[WebResourceDelegateProxy connection:didFailLoadingWithError:]):
   26572         * WebView.subproj/WebPolicyDelegate.h:
   26573         * WebView.subproj/WebResourceLoadDelegate.h:
   26574         * WebView.subproj/WebTextRepresentation.m:
   26575         (-[WebTextRepresentation receivedError:withDataSource:]):
   26576         * WebView.subproj/WebView.h:
   26577         * WebView.subproj/WebViewPrivate.h:
   26578         * WebView.subproj/WebViewPrivate.m:
   26579         (-[WebView _receivedError:fromDataSource:]):
   26580         (-[WebView _mainReceivedError:fromDataSource:complete:]):
   26581 
   26582 2003-04-24  Darin Adler  <darin (a] apple.com>
   26583 
   26584         Reviewed by John.
   26585 
   26586         * WebView.subproj/WebViewPrivate.m: (-[WebView _updateWebCoreSettingsFromPreferences:]):
   26587         Added a call to the new setDefaultTextEncoding: method in WebCore. A preparation
   26588         step for some encoding bug fixes.
   26589 
   26590         * WebView.subproj/WebHTMLView.m: (-[WebHTMLView addSuperviewObservers]): Improved a comment.
   26591         
   26592 === Safari-75 ===
   26593 
   26594 2003-04-24  Maciej Stachowiak  <mjs (a] apple.com> (checked in by Darin)
   26595 
   26596         Reviewed by Ken and Darin.
   26597 
   26598         Fixed an authentication crashing bug that crept into the last few
   26599         changes, plus a typo.
   26600         * Panels.subproj/WebAuthenticationPanel.m:
   26601         (-[WebAuthenticationPanel setUpForChallenge:]): Remove extra space.
   26602         (-[WebAuthenticationPanel runAsSheetOnWindow:withChallenge:]): Store
   26603         the challenge properly.
   26604 
   26605 2003-04-22  Maciej Stachowiak  <mjs (a] apple.com>
   26606 
   26607         Reviewed by Darin.
   26608 
   26609         Adjusted for NSURLCredential changes.
   26610 
   26611         * Panels.subproj/WebAuthenticationPanel.m:
   26612         (-[WebAuthenticationPanel runAsModalDialogWithChallenge:]):
   26613         (-[WebAuthenticationPanel sheetDidEnd:returnCode:contextInfo:]):
   26614 
   26615 2003-04-23  Chris Blumenberg  <cblu (a] apple.com>
   26616 
   26617         Reviewed by darin.
   26618 
   26619         * English.lproj/StringsNotToBeLocalized.txt: updated
   26620 
   26621 2003-04-23  Chris Blumenberg  <cblu (a] apple.com>
   26622 
   26623         Fixed: 3161374 - safari windows don't allow text/URL dragging on the first click
   26624 
   26625         Reviewed by john.
   26626 
   26627         * WebView.subproj/WebHTMLView.m:
   26628         (-[WebHTMLView _isSelectionEvent:]): new, determines if the event occurred over the selection
   26629         (-[WebHTMLView acceptsFirstMouse:]): newly implemented, return result of _isSelectionEvent:
   26630         (-[WebHTMLView shouldDelayWindowOrderingForEvent:]): newly implemented, return result of _isSelectionEvent:
   26631 
   26632 2003-04-23  Chris Blumenberg  <cblu (a] apple.com>
   26633 
   26634         Renamed the policy delegate methods.
   26635 
   26636         Reviewed by john.
   26637 
   26638         * WebView.subproj/WebDefaultPolicyDelegate.m:
   26639         (-[WebDefaultPolicyDelegate webView:unableToImplementPolicyWithError:frame:]):
   26640         (-[WebDefaultPolicyDelegate webView:decidePolicyForNavigationAction:request:frame:decisionListener:]):
   26641         (-[WebDefaultPolicyDelegate webView:decidePolicyForNewWindowAction:request:newFrameName:decisionListener:]):
   26642         * WebView.subproj/WebFramePrivate.m:
   26643         (-[WebFrame _handleUnimplementablePolicyWithErrorCode:forURL:]):
   26644         (-[WebFrame _checkNewWindowPolicyForRequest:action:frameName:formState:andCall:withSelector:]):
   26645         (-[WebFrame _checkNavigationPolicyForRequest:dataSource:formState:andCall:withSelector:]):
   26646         * WebView.subproj/WebMainResourceClient.m:
   26647         (-[WebMainResourceClient checkContentPolicyForResponse:]):
   26648         * WebView.subproj/WebPolicyDelegate.h:
   26649 
   26650 2003-04-22  Ken Kocienda  <kocienda (a] apple.com>
   26651 
   26652         Reviewed by Darin
   26653 
   26654         Updated to use API-approved methods for accessing 
   26655         protocol-specific URL request data.
   26656 
   26657         * WebView.subproj/WebDataProtocol.m:
   26658         (-[NSURLRequest _webDataRequestParametersForReading]):
   26659         (-[NSURLRequest _webDataRequestParametersForWriting]):
   26660 
   26661 2003-04-22  Maciej Stachowiak  <mjs (a] apple.com>
   26662 
   26663         Reviewed by Darin.
   26664 
   26665         Renamed classes to match API document.
   26666         * Panels.subproj/WebAuthenticationPanel.h:
   26667         * Panels.subproj/WebAuthenticationPanel.m:
   26668         (-[WebAuthenticationPanel setUpForChallenge:]):
   26669         (-[WebAuthenticationPanel runAsModalDialogWithChallenge:]):
   26670         (-[WebAuthenticationPanel runAsSheetOnWindow:withChallenge:]):
   26671         (-[WebAuthenticationPanel sheetDidEnd:returnCode:contextInfo:]):
   26672         * Panels.subproj/WebPanelAuthenticationHandler.h:
   26673         * Panels.subproj/WebPanelAuthenticationHandler.m:
   26674         (-[WebPanelAuthenticationHandler init]):
   26675         (-[WebPanelAuthenticationHandler dealloc]):
   26676         (-[WebPanelAuthenticationHandler isReadyToStartAuthentication:]):
   26677         (-[WebPanelAuthenticationHandler startAuthentication:]):
   26678         (-[WebPanelAuthenticationHandler cancelAuthentication:]):
   26679         (-[WebPanelAuthenticationHandler _authenticationDoneWithChallenge:result:]):
   26680         * Panels.subproj/WebStandardPanels.m:
   26681         (-[WebStandardPanels setUsesStandardAuthenticationPanel:]):
   26682 
   26683 2003-04-21  Ken Kocienda  <kocienda (a] apple.com>
   26684 
   26685         Reviewed by Darin
   26686 
   26687         API changes in NSURLProtocol and its subclasses:
   26688 
   26689         +canHandleURL: becomes +canInitWithRequest:
   26690         +canonicalURLForURL: becomes +canonicalRequestForRequest:
   26691 
   26692         Added new _webIsDataProtocolURL: helper method.
   26693 
   26694         * WebView.subproj/WebBaseResourceHandleDelegate.m:
   26695         (-[WebBaseResourceHandleDelegate connection:didReceiveResponse:]):
   26696         * WebView.subproj/WebDataProtocol.h:
   26697         * WebView.subproj/WebDataProtocol.m:
   26698         (+[WebDataProtocol _webIsDataProtocolURL:]):
   26699         (+[WebDataProtocol canInitWithRequest:]):
   26700         (+[WebDataProtocol canonicalRequestForRequest:]):
   26701         * WebView.subproj/WebFramePrivate.m:
   26702         (-[WebFrame _addBackForwardItemClippedAtTarget:]):
   26703         (-[WebFrame _transitionToCommitted:]):
   26704 
   26705 2003-04-21  Darin Adler  <darin (a] apple.com>
   26706 
   26707         * Plugins.subproj/WebNetscapePluginStream.m: Removed unnecessary #import of <WebFoundation/WebFoundation.h>.
   26708 
   26709 2003-04-21  Maciej Stachowiak  <mjs (a] apple.com>
   26710 
   26711         Reviewed by Richard.
   26712 
   26713         Updated for file renames.
   26714 
   26715         * Panels.subproj/WebAuthenticationPanel.h:
   26716         * Panels.subproj/WebPanelAuthenticationHandler.h:
   26717         * Panels.subproj/WebStandardPanels.m:
   26718 
   26719 2003-04-21  Chris Blumenberg  <cblu (a] apple.com>
   26720         Fixed previous "Reviewed by".
   26721 
   26722         * ChangeLog:
   26723 
   26724 2003-04-21  Chris Blumenberg  <cblu (a] apple.com>
   26725 
   26726         Fixed: 3140990 - Safari: Error attempting to load movie from Rhino records
   26727         Renamed plug-in view methods to mention that they take URL strings.
   26728         
   26729         Reviewed by john.
   26730 
   26731         * WebCoreSupport.subproj/WebBridge.m:
   26732         (-[WebBridge viewForPluginWithURLString:attributes:baseURLString:MIMEType:]): renamed, try to find the plug-in using the extension of the SRC URL if the plug-in isn't found using the MIME type.
   26733         (-[WebBridge viewForJavaAppletWithFrame:attributes:baseURLString:]): renamed
   26734 
   26735 2003-04-18  Chris Blumenberg  <cblu (a] apple.com>
   26736 
   26737         Fixed: 3139385 - don't accept drags from other frames in the same WebView
   26738 
   26739         Reviewed by john.
   26740 
   26741         * WebView.subproj/WebFrameView.m: moved drag destination code from WebFrameView to WebView
   26742         (-[WebFrameView initWithFrame:]): removed drag registration code
   26743         * WebView.subproj/WebFrameViewPrivate.h:
   26744         * WebView.subproj/WebFrameViewPrivate.m:
   26745         * WebView.subproj/WebHTMLView.m:
   26746         (-[WebHTMLView dragImage:at:offset:event:pasteboard:source:slideBack:]): unregister drag types on the WebView
   26747         (-[WebHTMLView draggedImage:endedAt:operation:]): reregister drag types on the WebView
   26748         * WebView.subproj/WebImageView.m:
   26749         (-[WebImageView mouseDragged:]): unregister drag types on the WebView
   26750         (-[WebImageView draggedImage:endedAt:operation:]): reregister drag types on the WebView
   26751         * WebView.subproj/WebView.m: moved drag destination code from WebFrameView to WebView
   26752         (-[WebView draggingEntered:]): moved from WebFrameView
   26753         (-[WebView prepareForDragOperation:]): ditto
   26754         (-[WebView performDragOperation:]): ditto
   26755         (-[WebView concludeDragOperation:]): ditto
   26756         * WebView.subproj/WebViewPrivate.h:
   26757         * WebView.subproj/WebViewPrivate.m:
   26758         (-[WebView _registerDraggedTypes]): ditto
   26759 
   26760 2003-04-17  John Sullivan  <sullivan (a] apple.com>
   26761 
   26762         Reviewed by Maciej.
   26763 
   26764         * History.subproj/WebHistoryPrivate.m:
   26765         (-[WebHistoryPrivate _loadHistoryGuts:]):
   26766         if we can't load the file as a dictionary, try loading it
   26767         the old-fashioned array way. This makes the history file
   26768         format change forward-compatible.
   26769 
   26770 2003-04-17  Chris Blumenberg  <cblu (a] apple.com>
   26771 
   26772         Fixed: 3160751 - Can't use non-'.txt' file extension for text files?
   26773 
   26774         Reviewed by mjs.
   26775 
   26776         * English.lproj/StringsNotToBeLocalized.txt:
   26777         * Misc.subproj/WebNSURLResponseExtras.m:
   26778         (-[NSURL _web_suggestedFilenameForSavingWithMIMEType:]): don't correct the file extension for plain text files
   26779 
   26780 2003-04-17  John Sullivan  <sullivan (a] apple.com>
   26781 
   26782         - fixed 3232332 -- History file should be versioned since 
   26783         we might change it in the future
   26784         - fixed 3220355 -- Console error message at launch when 
   26785         there's no history file
   26786 
   26787         Note: a downside of this change is that the history formats
   26788         before and after this change are not compatible. You will
   26789         get no history each time you cross that boundary by running
   26790         different Safaris.
   26791 
   26792         Reviewed by Maciej.
   26793 
   26794         * History.subproj/WebHistoryPrivate.m:
   26795         (-[WebHistoryPrivate _loadHistoryGuts:]):
   26796         check for file-doesn't-exist case before complaining about
   26797         being unable to read existing file; expect to read dictionary
   26798         rather than array, and check version in dictionary.
   26799         (-[WebHistoryPrivate _saveHistoryGuts:]):
   26800         save dictionary that includes version as well as array of
   26801         items by date.
   26802 
   26803 2003-04-17  Richard Williamson   <rjw (a] apple.com>
   26804 
   26805         Fixed typos in headerdoc comments.
   26806 
   26807         * WebView.subproj/WebFrame.h:
   26808 
   26809 2003-04-17  Richard Williamson   <rjw (a] apple.com>
   26810 
   26811         Drop down yet one more level to avoid intialization horkage.
   26812         Call objc_getClass() instead of NSClassFromString().
   26813         
   26814         Reviewed by darin.
   26815 
   26816         * WebView.subproj/WebHTMLViewPrivate.m:
   26817         (+[WebHTMLView load]):
   26818 
   26819 2003-04-17  Darin Adler  <darin (a] apple.com>
   26820 
   26821         Reviewed by John.
   26822 
   26823         * WebView.subproj/WebDataProtocol.m: (+[NSURLRequest _webDataRequestURLForData:]):
   26824         Register the WebDataProtocol here instead of doing it with a load method, since this
   26825         is the bottleneck that must be used before that protocol is needed. It's good to have
   26826         one less load method, and this may fix a problem reported by a Panther WebKit client
   26827         on intrigue-dev too.
   26828 
   26829 2003-04-16  Ken Kocienda  <kocienda (a] apple.com>
   26830 
   26831         Reviewed by Darin
   26832 
   26833         Fixed call to load synchronous URL. Now conforms to new API
   26834         which allows callers to access error object associated with 
   26835         the load.
   26836 
   26837         * WebView.subproj/WebFramePrivate.m:
   26838         (-[WebFrame _loadItem:withLoadType:]):
   26839 
   26840 2003-04-16  Chris Blumenberg  <cblu (a] apple.com>
   26841 
   26842         - Progressively load plain text in our text view.
   26843         - Fixed: 3177603 - vCards appear in browser, not downloaded
   26844 
   26845         Reviewed by darin.
   26846 
   26847         * WebView.subproj/WebTextRepresentation.m:
   26848         (-[WebTextRepresentation setDataSource:]): added FIXME about document source of RTF not working
   26849         (-[WebTextRepresentation receivedData:withDataSource:]): feed data to the text view, progressively for plain text
   26850         * WebView.subproj/WebTextView.m:
   26851         (+[WebTextView unsupportedTextMIMETypes]): include text/directory, another vcard MIME type
   26852         (-[WebTextView setDataSource:]): do 1-time attribute settings
   26853         (-[WebTextView dataSourceUpdated:]): do nothing
   26854 
   26855 2003-04-16  Ken Kocienda  <kocienda (a] apple.com>
   26856 
   26857         Reviewed by David
   26858 
   26859         Moved this NSURLProtocolClient implementor to API-approved
   26860         interface.
   26861 
   26862         * WebView.subproj/WebDataProtocol.m:
   26863         (-[WebDataProtocol startLoading]):
   26864 
   26865 2003-04-16  Ken Kocienda  <kocienda (a] apple.com>
   26866 
   26867         Fix deployment build breaker caused by uninitialized variable.
   26868 
   26869         * WebView.subproj/WebViewPrivate.m:
   26870         (-[WebView _loadBackForwardListFromOtherView:]):
   26871 
   26872 2003-04-16  Darin Adler  <darin (a] apple.com>
   26873 
   26874         Reviewed by John.
   26875 
   26876         - fixed 3226281 -- REGRESSION: crash in WebHTMLView removeMouseMovedObserver closing gist.com
   26877 
   26878         * Plugins.subproj/WebPluginController.m: (-[WebPluginController showStatus:]):
   26879         Use _webView instead of _controller.
   26880         
   26881         * WebCoreSupport.subproj/WebTextRendererFactory.m: Remove stray semicolon.
   26882         
   26883         * WebView.subproj/WebHTMLView.m:
   26884         (-[WebHTMLView removeMouseMovedObserver]): Use _webView instead of _controller.
   26885         (-[WebHTMLView menuForEvent:]): Ditto.
   26886         (-[WebHTMLView namesOfPromisedFilesDroppedAtDestination:]): Ditto.
   26887         * WebView.subproj/WebHTMLViewPrivate.h: Rename _controller to _webView.
   26888         * WebView.subproj/WebHTMLViewPrivate.m:
   26889         (-[WebHTMLView _webView]): Use _web_superviewOfClass to find the WebView. This dodges possible
   26890         stale unretained pointer issues with getting the WebView through the WebFrame, which is what
   26891         fixes the bug.
   26892         (-[WebHTMLView _updateMouseoverWithEvent:]): Use _webView instead of _controller.
   26893         (+[WebHTMLView _pasteboardTypes]): Put the types in order from most preferred to least.
   26894         (-[WebHTMLView _writeSelectionToPasteboard:]): Ditto.
   26895 
   26896 2003-04-15  Richard Williamson   <rjw (a] apple.com>
   26897 
   26898         Create the dictionary for volatile values.  Without this fix
   26899         values were never volatile!
   26900         
   26901         Reviewed by mjs.
   26902 
   26903         * WebView.subproj/WebPreferences.m:
   26904         (-[WebPreferences _init]):
   26905         (-[WebPreferences init]):
   26906         (+[WebPreferences standardPreferences]):
   26907         (-[WebPreferences dealloc]):
   26908 
   26909 2003-04-15  Richard Williamson   <rjw (a] apple.com>
   26910 
   26911         Fix for 3226746.  Remove some ancient and apparantly invalid cruft.
   26912         
   26913         Reviewed by trey.
   26914 
   26915         * WebView.subproj/WebFramePrivate.m:
   26916         (-[WebFrame _setDataSource:]):
   26917 
   26918 2003-04-15  Richard Williamson   <rjw (a] apple.com>
   26919 
   26920         Fixed clipping of progressive images to correctly clip.
   26921         
   26922         Reviewed by darin.
   26923 
   26924         * WebCoreSupport.subproj/WebImageRenderer.m:
   26925         (-[WebImageRenderer drawClippedToValidInRect:fromRect:]):
   26926 
   26927 2003-04-15  Ken Kocienda  <kocienda (a] apple.com>
   26928 
   26929         Reviewed by Darin
   26930 
   26931         Name change from WebCacheObject to NSCachedURLResponse.    
   26932         No functional changes.
   26933 
   26934         * WebView.subproj/WebDataProtocol.m:
   26935         (-[WebDataProtocol startLoadingWithCacheObject:]):
   26936 
   26937 2003-04-15  Trey Matteson  <trey (a] apple.com>
   26938 
   26939         3227514 Open window in "Same Page" should copy entire back/forward list
   26940 
   26941         New support to load a new view by copying the whole backforward
   26942         list and driving the new view to the current item.
   26943 
   26944         Reviewed by John.
   26945 
   26946         * WebView.subproj/WebViewPrivate.h:
   26947         * WebView.subproj/WebViewPrivate.m:
   26948         (-[WebView _loadItem:]):  Old routine, which only loaded an item.
   26949         (-[WebView _loadItemsFromOtherView:]):  New routine that does the works.
   26950 
   26951 2003-04-15  Ken Kocienda  <kocienda (a] apple.com>
   26952 
   26953         Reviewed by John
   26954 
   26955         Name change from WebProtocolClient to NSURLProtocolClient.
   26956         No functional changes.
   26957 
   26958         * WebView.subproj/WebDataProtocol.m:
   26959         (-[WebDataProtocol startLoadingWithCacheObject:]):
   26960 
   26961 2003-04-15  Ken Kocienda  <kocienda (a] apple.com>
   26962 
   26963         Reviewed by Darin
   26964 
   26965         Name change from WebProtocol to NSURLProtocol.
   26966         No functional changes.
   26967 
   26968         * WebView.subproj/WebDataProtocol.h:
   26969         * WebView.subproj/WebDataProtocol.m:
   26970         (-[NSURLRequest _webDataRequestParametersForReading]):
   26971         (-[NSURLRequest _webDataRequestParametersForWriting]):
   26972         (+[WebDataProtocol load]):
   26973         * WebView.subproj/WebFrame.m:
   26974 
   26975 2003-04-14  Trey Matteson  <trey (a] apple.com>
   26976 
   26977         3009051 - Find on Page stops (once) at end of page, should wrap automatically        WebKit
   26978         3051546 - Find on Page doesn't work for frameset pages
   26979         3058437 - can have a selection in two frames at the same time (problem for finding in frames)
   26980         3097498 - Find Previous continues to "Find Next" until end of paragraph        3097507 - Find Next searches from previous find hit instead of current selection        Primary changes here:  I added a wrap flag to the searchFor method, which is needed to
   26981         control how we search as we traverse the frame tree.  A new method is added to WebView
   26982         that knows about traversing the frame tree as we search.  HTMLView and TextView both
   26983         clear their selections when they lose first responder (see 3228554 for possible
   26984         improvements to that change).
   26985 
   26986         Reviewed by Maciej.
   26987 
   26988         * Misc.subproj/WebSearchableTextView.m:
   26989         Added wrap flag, pass on to TextView.
   26990         Ensure we do some searching when we would previous get a zero range to search in.
   26991         * WebView.subproj/WebDocument.h:
   26992         * WebView.subproj/WebFramePrivate.h:
   26993         * WebView.subproj/WebFramePrivate.m:
   26994         These are all basic methods to support forwards and backwards traversal of
   26995         the frame tree.  Modeled after same methods we have for traversing the DOM.
   26996         (-[WebFrame _nextSibling]):
   26997         (-[WebFrame _previousSibling]):
   26998         (-[WebFrame _lastChild]):
   26999         (-[WebFrame _nextFrameWithWrap:]):
   27000         (-[WebFrame _previousFrameWithWrap:]):
   27001         * WebView.subproj/WebHTMLView.m:
   27002         (-[WebHTMLView searchFor:direction:caseSensitive:wrap:]):  Added wrap flag,
   27003         pass it to bridge.
   27004         (-[WebHTMLView resignFirstResponder]):  Clear selection when we lose firstResp.
   27005         * WebView.subproj/WebTextView.m:
   27006         (-[WebTextView resignFirstResponder]):  Clear selection when we lose firstResp.
   27007         * WebView.subproj/WebView.m:
   27008         (-[WebView _currentFrame]):  Return the frame holding the first responder.
   27009         (-[WebView _searchFor:direction:caseSensitive:wrap:]):  Main work:  traverse the
   27010         frame tree and drive the overall find.
   27011         * WebView.subproj/WebViewPrivate.h:
   27012 
   27013 2003-04-14  Chris Blumenberg  <cblu (a] apple.com>
   27014 
   27015         Log time spent loading each plug-in.
   27016 
   27017         Reviewed by mjs.
   27018 
   27019         * Misc.subproj/WebIconDatabase.m:
   27020         (-[WebIconDatabase _iconsForIconURLString:]): fixed logging code
   27021         (-[WebIconDatabase _scaleIcon:toSize:]): fixed logging code
   27022         * Plugins.subproj/WebNetscapePluginPackage.m:
   27023         (-[WebNetscapePluginPackage load]): log time spent loading a plug-in
   27024         * Plugins.subproj/WebPluginController.m:
   27025         (-[WebPluginController startAllPlugins]): only log if there are plug-ins to start
   27026         (-[WebPluginController stopAllPlugins]): only log if there are plug-ins to stop
   27027         (-[WebPluginController destroyAllPlugins]): only log if there are plug-ins to destroy
   27028 
   27029 2003-04-13  Trey Matteson  <trey (a] apple.com>
   27030 
   27031         3150693 - open new window on "same page" doesn't give me the same frame content
   27032 
   27033         The core is a new support method that loads a WebView given a HistoryItem, which
   27034         thus restores all frames of that item, and optionally the form and scroll state.
   27035 
   27036         * History.subproj/WebHistoryItem.m:
   27037         (-[WebHistoryItem copyWithZone:]):  Copy the docState, scrollPosition, isTargetItem.
   27038         No good        reason to have left these out when I wrote this method.
   27039         * WebView.subproj/WebFramePrivate.h:
   27040         * WebView.subproj/WebFramePrivate.m:
   27041         (-[WebFrame _saveDocumentAndScrollState]):  New method to run the frame tree and
   27042         save all form/scroll state to the current item.
   27043         * WebView.subproj/WebView.m:
   27044         _goToItem:withLoadType: moved to WebViewPrivate.m
   27045         * WebView.subproj/WebViewPrivate.h:
   27046         * WebView.subproj/WebViewPrivate.m:
   27047         (-[WebView _goToItem:withLoadType:]):  Moved from WebView.m, no change.
   27048         (-[WebView _loadItem:showingInView:]):  New method to load the view with the item.
   27049 
   27050 2003-04-12  Chris Blumenberg  <cblu (a] apple.com>
   27051 
   27052         Fixed: 3162338 - Embedding SVG with <object type="image/svg+xml"> doesn't work
   27053 
   27054         Reviewed by dave.
   27055 
   27056         * WebCoreSupport.subproj/WebImageRendererFactory.m:
   27057         (-[WebImageRendererFactory supportedMIMETypes]): code moved from +[WebImageView supportedImageMIMETypes]
   27058         * WebView.subproj/WebImageView.m:
   27059         (+[WebImageView supportedImageMIMETypes]): return -[WebImageRendererFactory supportedMIMETypes]
   27060 
   27061 2003-04-13  Maciej Stachowiak  <mjs (a] apple.com>
   27062 
   27063         Reviewed by Trey.
   27064 
   27065         * WebView.subproj/WebDefaultWindowOperationsDelegate.m:
   27066         (-[WebDefaultWindowOperationsDelegate webView:setContentRect:]):
   27067         Implemented in terms of webView:setFrame: to save clients work.
   27068 
   27069 2003-04-11  Chris Blumenberg  <cblu (a] apple.com>
   27070 
   27071         Removed WebKitErrorResourceLoadInterruptedByPolicyChange error because it isn't used. 
   27072 
   27073         Reviewed by john.
   27074 
   27075         * Misc.subproj/WebKitErrors.h:
   27076         * Misc.subproj/WebKitErrors.m:
   27077         (registerErrors):
   27078         * WebKit.pbproj/project.pbxproj:
   27079 
   27080 2003-04-11  Trey Matteson  <trey (a] apple.com>
   27081 
   27082         3148002 - printing shouldn't depend on the size of the window
   27083 
   27084         The basic strategy is copied from khtmlview's print method:  We reset the width
   27085         of the document to the paper width minus margins, and relayout before paginating
   27086         and printing.
   27087 
   27088         Reviewed by Richard.
   27089 
   27090         * WebKit.pbproj/project.pbxproj:  Someone is using an old version...
   27091         * WebView.subproj/WebDynamicScrollBarsView.m:
   27092         (-[WebDynamicScrollBarsView reflectScrolledClipView:]):  Don't do the dynamic
   27093         scrollbar update magic when printing.
   27094         * WebView.subproj/WebHTMLView.m:
   27095         (-[WebHTMLView layoutToPageWidth:]):  New routine, basically the old layout
   27096         method with a new parameter.  If we're given an width, we call a different
   27097         bridge method.
   27098         (-[WebHTMLView layout]):  Just call above method with width==0
   27099         (-[WebHTMLView drawRect:]):  Protect setting/resetting of graphics context and
   27100         additional clip with a DURING/HANDLER.  I saw an assertion failure that could
   27101         be explained by this, so this is mostly a beartrap for that problem.
   27102         (-[WebHTMLView _setPrinting:pageWidth:]):  Pass page width through to others.
   27103         (-[WebHTMLView beginDocument]):  If we are not in a frame set, do a layout
   27104         using the page width.
   27105         (-[WebHTMLView endDocument]):  Pass 0 to new pageWidth: arg.
   27106 
   27107 2003-04-08  Trey Matteson  <trey (a] apple.com>
   27108 
   27109         3220349 - assertion failure in [WebFrame _recursiveGoToItem:...] hitting Back while loading movie
   27110 
   27111         The problem was that when we go back we call stopLoading on the top frame, but
   27112         that has a bogus optimization to not do any work if state=Completed.  That is a
   27113         bogus test if a subframe is doing a load.  The fix is to just always tell the
   27114         dataSources to stopLoading.  They already bail quickly when they are not loading,
   27115         so there is no significant additional cost.
   27116 
   27117         Reviewed by Richard.
   27118 
   27119         * WebView.subproj/WebFrame.m:
   27120         (-[WebFrame stopLoading]):
   27121 
   27122 === Safari-73 ===
   27123 
   27124 2003-04-10  Richard Williamson   <rjw (a] apple.com>
   27125 
   27126         Fixed 3219525
   27127         
   27128         Our work-around for the CG pattern cache bogosity was always bypassed,
   27129         consequently we'd unnecessarily burn lots of memory filling that cache.
   27130         
   27131         Reviewed by mjs & gramps.
   27132 
   27133         * WebCoreSupport.subproj/WebImageRenderer.m:
   27134         (-[WebImageRenderer drawClippedToValidInRect:fromRect:]):
   27135         (-[WebImageRenderer tileInRect:fromPoint:]):
   27136 
   27137 2003-04-10  Darin Adler (Maciej committing for Darin)  <darin (a] apple.com>
   27138 
   27139         Reviewed by Maciej.
   27140 
   27141         - fixed 3225042 - MallocDebug shows "access after deallocated" problem in WebFrameView
   27142 
   27143         * WebView.subproj/WebFrameView.m:
   27144         (-[WebFrameView dealloc]): Nil out _private.
   27145         (-[WebFrameView nextKeyView]): Check _private for nil.
   27146         (-[WebFrameView previousKeyView]): Check _private for nil.
   27147  
   27148 2003-04-10  Richard Williamson   <rjw (a] apple.com>
   27149 
   27150         Fix performance regression with iBench (post 71).  The iBench cheat was being defeated.
   27151         
   27152         Ensure that the layout timer is always invalidated when a frame completes 
   27153         or is cancelled.
   27154         
   27155         Reviewed by mjs & gramps.
   27156 
   27157         * WebView.subproj/WebFrame.m:
   27158         (-[WebFrame stopLoading]):
   27159         * WebView.subproj/WebFramePrivate.m:
   27160         (-[WebFrame _setState:]):
   27161 
   27162 2003-04-10  Trey Matteson  <trey (a] apple.com>
   27163 
   27164         3224973 - Safari sometimes stores data for AUTOCOMPLETE=OFF fields and password fields
   27165 
   27166         Just glue for calling a new WC function.
   27167 
   27168         Reviewed by Darin.
   27169 
   27170         * WebView.subproj/WebHTMLRepresentation.h:
   27171         * WebView.subproj/WebHTMLRepresentation.m:
   27172         (-[WebHTMLRepresentation elementWithName:inForm:]):
   27173 
   27174 === Safari-72 ===
   27175 
   27176 2003-04-10  Maciej Stachowiak  <mjs (a] apple.com>
   27177 
   27178         Reviewed by Chris.
   27179 
   27180         - fixed 3224690 - REGRESSION: Download related errors aren't preserved across launches
   27181 
   27182         * WebKit.pbproj/project.pbxproj: Install WebKitErrorsPrivate.h as SPI.
   27183 
   27184 2003-04-10  Darin Adler  <darin (a] apple.com>
   27185 
   27186         Reviewed by Trey.
   27187 
   27188         - fixed 3224622 -- REGRESSION: in an empty window, repeated tabs don't cycle back to location field
   27189 
   27190         Added logic to WebFrameView's next/previous that matches the logic in WebHTMLView.
   27191         Looking for a better solution some day to the whole nextKeyView thing.
   27192 
   27193         * WebView.subproj/WebFrameView.m:
   27194         (-[WebFrameView nextKeyView]): If being called from nextValidKeyView, return the nextKeyView
   27195         of the WebView rather than of self.
   27196         (-[WebFrameView previousKeyView]): Ditto.
   27197         (-[WebFrameView nextValidKeyView]): Set the inNextValidKeyView flag.
   27198         (-[WebFrameView previousValidKeyView]): Ditto.
   27199         
   27200         * WebView.subproj/WebFrameViewPrivate.h: Add the inNextValidKeyView flag.
   27201 
   27202 2003-04-10  Maciej Stachowiak  <mjs (a] apple.com>
   27203 
   27204         Reviewed by Darin.
   27205 
   27206         Another launch time speedup - don't load the WebKit WebError
   27207         strings until we actually make a WebKit error. This prevents the
   27208         WebKit localized strings file from being loaded during normal startup.
   27209 
   27210         * Downloads.subproj/WebDownload.m:
   27211         (+[WebDownloadPrivate initialize]): Don't register WebKit errors.
   27212         (-[WebDownload _errorWithCode:]): Use _webKitErrorWithCode:failingURL:
   27213         * Misc.subproj/WebKitErrors.m:
   27214         (+[WebError _webKitErrorWithCode:failingURL:]): Wrapper that registers the
   27215         WebKit error codes first.
   27216         * Misc.subproj/WebKitErrorsPrivate.h:
   27217         * WebView.subproj/WebFramePrivate.m:
   27218         (-[WebFrame _handleUnimplementablePolicyWithErrorCode:forURL:]):  Use 
   27219         _webKitErrorWithCode:failingURL:
   27220         (-[WebFrame _loadItem:withLoadType:]):  Use _webKitErrorWithCode:failingURL:
   27221         * WebView.subproj/WebFrameView.m:
   27222         * WebView.subproj/WebMainResourceClient.m:
   27223         (-[WebMainResourceClient interruptForPolicyChangeError]):  Use _webKitErrorWithCode:failingURL:
   27224 
   27225 2003-04-10  Chris Blumenberg  <cblu (a] apple.com>
   27226 
   27227         Fixed: 3222896 - REGRESSION: sound plays after closing a window with a RealPlayer plug-in in it
   27228 
   27229         Reviewed by darin.
   27230 
   27231         * Plugins.subproj/WebBaseNetscapePluginView.m:
   27232         (-[WebBaseNetscapePluginView viewDidMoveToHostWindow]): We were starting plug-in on window close because that's when the host window is set to nil. Just check if we now have a host window before we start. 
   27233 
   27234 2003-04-10  Darin Adler  <darin (a] apple.com>
   27235 
   27236         Reviewed by Trey.
   27237 
   27238         - speed up startup by not calling [NSImage imageFileTypes] until we need to
   27239 
   27240         * WebCoreSupport.subproj/WebBridge.m: (-[WebBridge frameRequiredForMIMEType:]):
   27241         Call _viewClassForMIMEType instead of _viewTypes, since _viewClassForMIMEType is now optimized
   27242         by not loading the image types unless needed.
   27243 
   27244         * WebView.subproj/WebDataSourcePrivate.m:
   27245         (-[WebDataSource _representationClass]): Call _representationClassForMIMEType instead of
   27246         _repTypes, since _representationClassForMIMEType is now optimized by not loading the image
   27247         types unless needed.
   27248         (+[WebDataSource _repTypesAllowImageTypeOmission:]): Added. Moved the guts of _repTypes
   27249         in here. If you pass YES, doesn't bother adding the image types yet.
   27250         (+[WebDataSource _repTypes]): Now calls _repTypesAllowImageTypeOmission:NO.
   27251         (+[WebDataSource _representationClassForMIMEType:]): First try the dictionary without
   27252         requiring the image types, then only in the case where we get nil, try with the image types.
   27253         
   27254         * WebView.subproj/WebFrameViewPrivate.m:
   27255         (-[WebFrameView _makeDocumentViewForDataSource:]): Call _viewClassForMIMEType instead of
   27256         _viewTypes, since _viewClassForMIMEType is now optimized by not loading the image types
   27257         unless needed.
   27258         (+[WebFrameView _viewTypesAllowImageTypeOmission:]): Added. Moved the guts of _viewTypes
   27259         in here. If you pass YES, doesn't bother adding the image types yet.
   27260         (+[WebFrameView _viewTypes]): Now calls _viewTypesAllowImageTypeOmission:NO.
   27261         (+[WebFrameView _viewClassForMIMEType:]): First try the dictionary without requiring
   27262         the image types, then only in the case where we get nil, try with the image types.
   27263 
   27264 2003-04-09  Trey Matteson  <trey (a] apple.com>
   27265 
   27266         3223413 - crash in [CompletionController controlTextDidChange] at travelocity.com
   27267 
   27268         This was a great one to get steps for repro - it has shown up at least twice before.
   27269 
   27270         The problem is that when there is a focused TextField within a frame, the proper
   27271         FormDelegate messages were not being sent on refresh or b/f.  The cause was that
   27272         the FirstResponder would be reset in the middle of detaching the frame, at which point
   27273         our object graph was already half taken apart.  Fix is to detect that case before
   27274         doing the detach work, and endEditing explicitly.
   27275 
   27276         Reviewed by Darin.
   27277 
   27278         * ChangeLog:
   27279         * Misc.subproj/WebKitLogging.h:
   27280         * Misc.subproj/WebKitLogging.m:   New FormDelegate logging category.
   27281         * WebCoreSupport.subproj/WebBridge.m:
   27282         All changes in here are just calling LOG for the new category.
   27283         (-[WebBridge controlTextDidBeginEditing:]):
   27284         (-[WebBridge controlTextDidEndEditing:]):
   27285         (-[WebBridge controlTextDidChange:]):
   27286         (-[WebBridge control:textShouldBeginEditing:]):
   27287         (-[WebBridge control:textShouldEndEditing:]):
   27288         (-[WebBridge control:didFailToFormatString:errorDescription:]):
   27289         (-[WebBridge control:didFailToValidatePartialString:errorDescription:]):
   27290         (-[WebBridge control:isValidObject:]):
   27291         (-[WebBridge control:textView:doCommandBySelector:]):
   27292         * WebView.subproj/WebFramePrivate.m:
   27293         (-[WebFrame _setDataSource:]):  The fix, as described above.
   27294 
   27295 2003-04-09  Richard Williamson   <rjw (a] apple.com>
   27296 
   27297         Fix for 3222904.  This change fixes the immediate symptoms of the bug,
   27298         but we need to come back to this issue after beta 2.  Bug 3223929 captures
   27299         the other problems.
   27300         
   27301         Reviewed by gramps.
   27302 
   27303         * WebView.subproj/WebDataSourcePrivate.h:
   27304         * WebView.subproj/WebDataSourcePrivate.m:
   27305         (-[WebDataSource __setRequest:]):
   27306         (-[WebDataSource _setRequest:]):
   27307         * WebView.subproj/WebFramePrivate.m:
   27308         (-[WebFrame _shouldReloadForCurrent:andDestination:]):
   27309         (-[WebFrame _loadItem:withLoadType:]):
   27310         (-[WebFrame _loadURL:referrer:loadType:target:triggeringEvent:form:formValues:]):
   27311 
   27312 2003-04-09  Maciej Stachowiak  <mjs (a] apple.com>
   27313 
   27314         Reviewed by Chris, Trey, Darin and Don.
   27315 
   27316         - fixed 3223568 - site icons lost when moving from older Safari to 71
   27317 
   27318         * Misc.subproj/WebIconDatabase.m:
   27319         (-[WebIconDatabase _createFileDatabase]): Rename old database containing directory to
   27320         new, so we carry over old databases. The format is forward but not backward compatible.
   27321         (-[WebIconDatabase _loadIconDictionaries]): Treat no version at all as version 1, so we
   27322         can load old-style databases.
   27323 
   27324         Reviewed by Trey.
   27325 
   27326         * English.lproj/StringsNotToBeLocalized.txt: Updated.
   27327 2003-04-09  Chris Blumenberg  <cblu (a] apple.com>
   27328 
   27329         Fixed: 3223022 - Plug-in content bleeds onto frontmost tab
   27330 
   27331         Reviewed by darin.
   27332 
   27333         * Plugins.subproj/WebBaseNetscapePluginView.m:
   27334         (-[WebBaseNetscapePluginView viewDidMoveToWindow]): Explicitly call setWindow when the plug-in view is moved out of the window so it is clipped out of sight.
   27335 
   27336 2003-04-08  Trey Matteson  <trey (a] apple.com>
   27337 
   27338         3221355 document is numb to clicks after going back
   27339 
   27340         The layoutTimer now does a layout if the doc is in state Completed,
   27341         in addition to LayoutAcceptable.
   27342 
   27343         Reviewed by Richard.
   27344 
   27345         * WebView.subproj/WebFramePrivate.m:
   27346         (-[WebFrame _timedLayout:]):
   27347 
   27348 2003-04-08  Chris Blumenberg  <cblu (a] apple.com>
   27349 
   27350         Fixed: 3221128 - Double grey lines on macromedia.com home page
   27351 
   27352         Flash relies on the ordering of attributes in the EMBED tag (which is really stupid). salign must come after scale.
   27353         Changed our plug-in API's to preserve orderings using arrays rather than lose orderings when using dictionaries. 
   27354 
   27355         Reviewed by trey.
   27356 
   27357         * Plugins.subproj/WebBaseNetscapePluginView.h:
   27358         * Plugins.subproj/WebBaseNetscapePluginView.m:
   27359         * Plugins.subproj/WebNetscapePluginEmbeddedView.h:
   27360         * Plugins.subproj/WebNetscapePluginEmbeddedView.m:
   27361         (-[WebNetscapePluginEmbeddedView initWithFrame:plugin:URL:baseURL:MIMEType:attributeKeys:attributeValues:]): take attributeKeys and attributeValues instead of a dictionary
   27362         * WebCoreSupport.subproj/WebBridge.m:
   27363         (-[WebBridge viewForPluginWithURL:attributes:baseURL:MIMEType:]): create attributeKeys and attributeValues to pass to the above method
   27364         (-[WebBridge viewForJavaAppletWithFrame:attributes:baseURL:]): create attributeKeys and attributeValues to pass to the above method
   27365 
   27366 2003-04-08  Chris Blumenberg  <cblu (a] apple.com>
   27367 
   27368         Fixed: 3220463 - REGRESSION: PDF viewer plug-in does not display (worked in 69 and previous)
   27369 
   27370         Reviewed by darin.
   27371 
   27372         * Plugins.subproj/WebNetscapePluginDocumentView.m:
   27373         (-[WebNetscapePluginDocumentView didStart]): always call redeliverStream. Have WebNetscapePluginRepresentation determine if it actually needs to do that.
   27374         * Plugins.subproj/WebNetscapePluginRepresentation.h:
   27375         * Plugins.subproj/WebNetscapePluginRepresentation.m:
   27376         (-[WebNetscapePluginRepresentation receivedData:withDataSource:]): keep track of _dataLengthReceived which is independent of the data received by the data source
   27377         (-[WebNetscapePluginRepresentation redeliverStream]): only redeliver the stream if _dataLengthReceived is greater than 0
   27378 
   27379 2003-04-07  Chris Blumenberg  <cblu (a] apple.com>
   27380 
   27381         Fixed: 3206018 - REGRESSION: Clicks on the BBC news ticker applet don't open story in new window
   27382 
   27383         MSIE and Netscape for Windows treat a nil target as _top. Since this is usually the target audience of applet developers, we will mimic this. This makes 3206018 behave as expected.
   27384 
   27385         Reviewed by gramps.
   27386 
   27387         * Plugins.subproj/WebPluginController.m:
   27388         (-[WebPluginController showURL:inFrame:]): treat nil as _top.
   27389 
   27390 2003-04-07  Richard Williamson  <rjw (a] apple.com>
   27391 
   27392         API conveniences for IB.
   27393         
   27394         Reviewed by Maciej.
   27395 
   27396         * WebView.subproj/WebView.h:
   27397         * WebView.subproj/WebView.m:
   27398         (-[WebView canGoBack]):
   27399         (-[WebView canGoForward]):
   27400         (-[WebView reload:]):
   27401         (-[WebView canMakeTextSmaller]):
   27402         (-[WebView canMakeTextLarger]):
   27403         (-[WebView makeTextSmaller:]):
   27404         (-[WebView makeTextLarger:]):
   27405 
   27406 2003-04-07  Richard Williamson  <rjw (a] apple.com>
   27407 
   27408         Fix for 3220988.  Cancel frame load if it's detached before
   27409         finished loading.
   27410 
   27411         Reviewed by Maciej.
   27412 
   27413         * WebCoreSupport.subproj/WebBridge.m:
   27414         (-[WebBridge frameDetached]):
   27415         * WebView.subproj/WebFrame.h:
   27416         * WebView.subproj/WebFramePrivate.h:
   27417         * WebView.subproj/WebFramePrivate.m:
   27418         (-[WebFrame _removeChild:]):
   27419 
   27420 2003-04-07  Maciej Stachowiak  <mjs (a] apple.com>
   27421 
   27422         Reviewed by Richard.
   27423 
   27424         - fixed 3219584 - REGRESSION: launch times appear slower in v71
   27425 
   27426         * WebView.subproj/WebView.m:
   27427         (+[WebView canShowMIMEType:]): Avoid loading plugin database if we
   27428         can find a view without doing so.
   27429 
   27430 2003-04-07  Darin Adler  <darin (a] apple.com>
   27431 
   27432         * WebView.subproj/WebUserAgentSpoofTable.c: Regenerated.
   27433         When I landed my last change to the .gperf file I forgot to land this.
   27434 
   27435 === Safari-71 ===
   27436 
   27437 2003-04-04  Darin Adler  <darin (a] apple.com>
   27438 
   27439         Reviewed by Ken.
   27440 
   27441         - fixed 3217687 -- REGRESSION: printing uses widths from screen fonts, messing up layout
   27442 
   27443         * WebCoreSupport.subproj/WebTextRendererFactory.m: Removed now-unused rendererWithFont:
   27444         which called, the now-removed usingPrinterFonts method. WebCore now calls the one with
   27445         the usingPrinterFont parameter.
   27446         
   27447         * WebView.subproj/WebHTMLView.m:
   27448         (-[WebHTMLView drawRect:]): Remove setUsingPrinterFonts: calls. This is now handled by the
   27449         document on the WebCore side. 
   27450         (-[WebHTMLView _setPrinting:]): Ditto.
   27451 
   27452 2003-04-04  Maciej Stachowiak  <mjs (a] apple.com>
   27453 
   27454         Reviewed by Trey.
   27455 
   27456         - fixed 3188914 - loop checking for Flash at http://www.scottsmind.com/celebrity_defacer/index.php
   27457         * Plugins.subproj/WebBaseNetscapePluginView.m:
   27458         (-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:]): Take a mutable request,
   27459         and make sure to set referrer to the frame URL (as other browsers do).
   27460         (-[WebBaseNetscapePluginView getURLNotify:target:notifyData:]): pass an NSMutableURLRequest.
   27461         (-[WebBaseNetscapePluginView getURL:target:]): Likewise.
   27462         (-[WebBaseNetscapePluginView _postURLNotify:target:len:buf:file:notifyData:allowHeaders:]):
   27463         If the plug-in passes a Content-Length header, take it out of the
   27464         headers and truncate the content appropriately to make
   27465         WebFoundation happy.
   27466 
   27467 2003-04-03  Richard Williamson  <rjw (a] apple.com>
   27468 
   27469         Fix checks for about: to avoid using our 'fake' request when
   27470         using WebDataProtocol.  This fixes the assertion in the Snippet
   27471         Editor.
   27472         
   27473         Reviewed by mjs.
   27474 
   27475         * WebView.subproj/WebMainResourceClient.m:
   27476         (-[WebMainResourceClient continueAfterContentPolicy:response:]):
   27477 
   27478 2003-04-03  Trey Matteson  <trey (a] apple.com>
   27479 
   27480         3218212 REGRESSION: page on screen draws ugly while printing is happening
   27481 
   27482         Turn autodisplay of the window off while we print.
   27483 
   27484         Reviewed by Darin.
   27485 
   27486         * WebView.subproj/WebHTMLView.m:
   27487         (-[WebHTMLView beginDocument]):  Turn it off.
   27488         (-[WebHTMLView endDocument]):  and back on.
   27489 
   27490 2003-04-03  Maciej Stachowiak  <mjs (a] apple.com>
   27491 
   27492         Reviewed by Trey.
   27493 
   27494         - removed no-longer forwarding of become/resignFirstResponder
   27495         * WebView.subproj/WebHTMLViewPrivate.m: Removed
   27496         become/resignFirstResponder poses for WebNSTextView.
   27497 
   27498 2003-04-03  Maciej Stachowiak  <mjs (a] apple.com>
   27499 
   27500         Reviewed by Richard and Don.
   27501 
   27502         - fixed 3218262 - REGRESSION: Page address becomes about:blank when command-clicking bookmark to load tab
   27503 
   27504         * WebView.subproj/WebDataProtocol.m:
   27505         (-[NSURLRequest _webDataRequestParametersForWriting]): Renamed
   27506         from _webDataRequestParameters.
   27507         (-[NSURLRequest _webDataRequestParametersForReading]): Like the
   27508         above, but make sure nto to create the part if it does not exist.
   27509         (-[NSURLRequest _webDataRequestData]): Use _webDataRequestParametersForReading.
   27510         (-[NSURLRequest _webDataRequestEncoding]): Likewise.
   27511         (-[NSURLRequest _webDataRequestBaseURL]): Likewise.
   27512         (-[NSURLRequest _webDataRequestSetData:]):Use _webDataRequestParametersForWriting.
   27513         (-[NSURLRequest _webDataRequestSetEncoding:]): Likewise.
   27514         (-[NSURLRequest _webDataRequestSetBaseURL:]): Likewise.
   27515         (-[NSURLRequest _webDataRequestExternalRequest]): Use _webDataRequestParametersForReading.
   27516 
   27517 2003-04-03  Richard Williamson   <rjw (a] apple.com>
   27518 
   27519         Tweaks to minimize access to the parts of a WebDataRequest
   27520         that turn out to be slow.  Although we've changed NSURLRequest
   27521         to be faster, it's still good to keep these tweaks.
   27522         
   27523         Reviewed by ken.
   27524 
   27525         * WebView.subproj/WebBaseResourceHandleDelegate.m:
   27526         (-[WebBaseResourceHandleDelegate connection:willSendRequest:redirectResponse:]):
   27527         (-[WebBaseResourceHandleDelegate connection:didReceiveResponse:]):
   27528         * WebView.subproj/WebDataProtocol.h:
   27529         * WebView.subproj/WebDataProtocol.m:
   27530         (-[NSURLRequest _webDataRequestExternalRequest]):
   27531         (+[WebDataProtocol canHandleURL:]):
   27532         * WebView.subproj/WebDataSource.m:
   27533         (-[WebDataSource request]):
   27534 
   27535 2003-04-03  Trey Matteson  <trey (a] apple.com>
   27536 
   27537         3067928 - printing should not break lines in half
   27538 
   27539         This is just glue to call the right piece in WebCore.
   27540 
   27541         Reviewed by Darin.
   27542 
   27543         (-[WebHTMLView adjustPageHeightNew:top:bottom:limit:]):
   27544         Defer to WebCore to set pagination boundary.
   27545 
   27546 2003-04-03  Richard Williamson   <rjw (a] apple.com>
   27547 
   27548         As requested by Nancy, drop "Is" and "Are" from setters,
   27549         but leave them in place on the getters.
   27550         
   27551         Reviewed by cblu.
   27552 
   27553         * WebView.subproj/WebPreferences.h:
   27554         * WebView.subproj/WebPreferences.m:
   27555         (-[WebPreferences setJavaEnabled:]):
   27556         (-[WebPreferences setJavaScriptEnabled:]):
   27557         (-[WebPreferences setPlugInsEnabled:]):
   27558 
   27559 2003-04-03  Darin Adler  <darin (a] apple.com>
   27560 
   27561         Reviewed by Ken.
   27562 
   27563         - remove spoof entries as decided in meeting with Don, Dave, Mark Malone
   27564 
   27565         * WebView.subproj/WebUserAgentSpoofTable.gperf: Remove battle.net because it's only there to
   27566         make Darin happy, and the site works fine without it. Remove pier1.com and disney.go.com because
   27567         we want to try evangelism first in both those cases, and having a released version where the
   27568         site works weakens our evangelism efforts.
   27569         
   27570         * WebView.subproj/WebUserAgentSpoofTable.c: Regenerated.
   27571 
   27572         - disable workaround for Panther bug in Panther builds
   27573 
   27574         * Misc.subproj/WebNSImageExtras.m: (-[NSImage _web_dissolveToFraction:]): Add ifdefs.
   27575         
   27576 2003-04-02  Maciej Stachowiak  <mjs (a] apple.com>
   27577 
   27578         Reviewed by Trey.
   27579 
   27580         - fixed 3213556 - VIP: parent.mainFrameWidth=undefined on page refresh results in missing content
   27581 
   27582         * WebView.subproj/WebFramePrivate.m:
   27583         (-[WebFrame _loadItem:withLoadType:]): When reload or going back/forward,
   27584         make sure to load the original URL of the item, not it's most recent URL.
   27585         (-[WebFrame _loadURL:intoChild:]): Likewise.
   27586 
   27587 2003-04-02  Richard Williamson  <rjw (a] apple.com>
   27588 
   27589         Raise exceptions when these methods are called inappropriately.
   27590         
   27591         Reviewed by Trey.
   27592 
   27593         * History.subproj/WebBackForwardList.m:
   27594         (-[WebBackForwardList goBack]):
   27595         (-[WebBackForwardList goForward]):
   27596         (-[WebBackForwardList goToItem:]):
   27597 
   27598 2003-04-02  Richard Williamson  <rjw (a] apple.com>
   27599 
   27600         Added new API on WebFrame, loadData: and loadString:
   27601         
   27602         Reviewed by Maciej.
   27603 
   27604         Fixed loading of cocoa plugins.
   27605         
   27606         Reviewed by Chris.
   27607         
   27608         * History.subproj/WebBackForwardList.m:
   27609         (-[WebBackForwardList _entries]):
   27610         * Plugins.subproj/WebBasePluginPackage.h:
   27611         * Plugins.subproj/WebBasePluginPackage.m:
   27612         (-[WebBasePluginPackage bundle]):
   27613         * Plugins.subproj/WebPluginDatabase.h:
   27614         * Plugins.subproj/WebPluginDatabase.m:
   27615         (-[WebPluginDatabase init]):
   27616         (-[WebPluginDatabase loadPluginIfNeededForMIMEType:]):
   27617         (-[WebPluginDatabase dealloc]):
   27618         * WebKit.pbproj/project.pbxproj:
   27619         * WebView.subproj/WebBaseResourceHandleDelegate.m:
   27620         (-[WebBaseResourceHandleDelegate connection:willSendRequest:redirectResponse:]):
   27621         (-[WebBaseResourceHandleDelegate connection:didReceiveResponse:]):
   27622         * WebView.subproj/WebDataProtocol.h: Added.
   27623         * WebView.subproj/WebDataProtocol.m: Added.
   27624         (-[WebDataRequestParameters copyWithZone:]):
   27625         (-[WebDataRequestParameters mutableCopyWithZone:]):
   27626         (-[WebDataRequestParameters dealloc]):
   27627         (+[NSURLRequest _webDataRequestURLForData:]):
   27628         (-[NSURLRequest _webDataRequestParameters]):
   27629         (-[NSURLRequest _webDataRequestData]):
   27630         (-[NSURLRequest _webDataRequestSetData:]):
   27631         (-[NSURLRequest _webDataRequestEncoding]):
   27632         (-[NSURLRequest _webDataRequestSetEncoding:]):
   27633         (-[NSURLRequest _webDataRequestBaseURL]):
   27634         (-[NSURLRequest _webDataRequestSetBaseURL:]):
   27635         (-[NSURLRequest _webDataRequestExternalRequest]):
   27636         (+[WebDataProtocol load]):
   27637         (+[WebDataProtocol doesURLHaveInternalDataScheme:]):
   27638         (+[WebDataProtocol canHandleURL:]):
   27639         (+[WebDataProtocol canonicalURLForURL:]):
   27640         (-[WebDataProtocol startLoadingWithCacheObject:]):
   27641         (-[WebDataProtocol stopLoading]):
   27642         * WebView.subproj/WebDataSource.m:
   27643         (-[WebDataSource initialRequest]):
   27644         (-[WebDataSource request]):
   27645         * WebView.subproj/WebDataSourcePrivate.m:
   27646         (-[WebDataSource _commitIfReady:]):
   27647         * WebView.subproj/WebFrame.h:
   27648         * WebView.subproj/WebFrame.m:
   27649         (-[WebFrame loadRequest:]):
   27650         (-[WebFrame loadString:baseURL:]):
   27651         * WebView.subproj/WebFramePrivate.m:
   27652         (-[WebFrame _addBackForwardItemClippedAtTarget:]):
   27653         (-[WebFrame _transitionToCommitted:]):
   27654         * WebView.subproj/WebFrameViewPrivate.m:
   27655         (-[WebFrameView _makeDocumentViewForDataSource:]):
   27656         * WebView.subproj/WebView.m:
   27657         (+[WebView canShowMIMEType:]):
   27658 
   27659 2003-04-02  Maciej Stachowiak  <mjs (a] apple.com>
   27660 
   27661         Reviewed by Ken.
   27662 
   27663         - fixed 3177183 - disneyland.com says "500 Internal Server Error"
   27664 
   27665         * WebView.subproj/WebUserAgentSpoofTable.gperf: Spoof as Mac IE
   27666         for disney.go.com
   27667         * WebView.subproj/WebUserAgentSpoofTable.c: Regenerated.
   27668 
   27669 2003-04-02  Richard Williamson  <rjw (a] apple.com>
   27670 
   27671         Reviewed by john.
   27672 
   27673         * WebView.subproj/WebPreferences.h:
   27674         (-[WebPreferences setUserStyleSheetLocation:]): Cleaned up arg and comment.
   27675 
   27676 2003-04-02  Richard Williamson  <rjw (a] apple.com>
   27677 
   27678         Fix for 3200447.  Use class_pose to pose so as to avoid
   27679         indirect invocation of appkit class initializers.
   27680         
   27681         Reviewed by darin.
   27682 
   27683         * WebView.subproj/WebHTMLViewPrivate.m:
   27684         (+[WebHTMLView load]):
   27685 
   27686 2003-04-02  Richard Williamson  <rjw (a] apple.com>
   27687 
   27688         Removed private headers.
   27689         
   27690         Reviewed by john.
   27691 
   27692         * Misc.subproj/WebKit.h:
   27693 
   27694 2003-04-01  Trey Matteson  <trey (a] apple.com>
   27695 
   27696         3174227 - aggressive caching of generated pages causes problems with WIKI
   27697 
   27698         We decided to fix half the observed behavior, as all the bad behavior is
   27699         arguably due to a mis-configured server (that sets a max-age=60 on
   27700         all its pages).
   27701 
   27702         The fix is that when a redirect comes in response to a POST we force a
   27703         load from origin, since this is a common technique sites do to prevent
   27704         a post from ending up in the b/f list, and it is very likely you are
   27705         on your way back to look at data that you believe you just edited. 
   27706 
   27707         Reviewed by Ken.
   27708 
   27709         * WebView.subproj/WebFramePrivate.m:
   27710         (-[WebFrame _loadItem:withLoadType:]):  Nit cleanup.  Remove unused arg.
   27711         (-[WebFrame _recursiveGoToItem:fromItem:withLoadType:]):
   27712         Same nit cleanup.
   27713         * WebView.subproj/WebMainResourceClient.m:
   27714         (-[WebMainResourceClient connection:willSendRequest:redirectResponse:]):
   27715         Force loadFromOrigin if we have a redirect in response to a POST.
   27716         * WebView.subproj/WebResourceLoadDelegate.h:
   27717         Add headerdoc comment for redirectResponse param.
   27718 
   27719 2003-04-01  Maciej Stachowiak  <mjs (a] apple.com>
   27720 
   27721         Reviewed by Richard.
   27722 
   27723         - fixed 3214748 - REGRESSION: After using latest Safari for awhile, can't launch older Safaris (icon db problem)
   27724 
   27725         * Misc.subproj/WebIconDatabase.m:
   27726         Changed icon cache path, since we are breaking compatibility and the old version
   27727         does not support versioning.
   27728         (-[WebIconDatabase _loadIconDictionaries]): Check version.
   27729         (-[WebIconDatabase _updateFileDatabase]): Save version.
   27730 
   27731 2003-04-01  Ken Kocienda  <kocienda (a] apple.com>
   27732 
   27733         Reviewed by Darin
   27734 
   27735         NSURLConnectionDelegate is no longer a formal protocol.
   27736 
   27737         NSURLConnection no longer has a loadWithDelegate: method. Loads
   27738         start implicitly at init time. Some clients have been updated
   27739         to call the willSendRequest:redirectResponse: callback manually
   27740         since this callback is no longer sent for initial loads.
   27741 
   27742         * Downloads.subproj/WebDownload.m:
   27743         (-[WebDownload initWithRequest:]):
   27744         (-[WebDownload _initWithLoadingResource:request:response:delegate:proxy:]):
   27745         (-[WebDownload loadWithDelegate:]):
   27746         * Misc.subproj/WebIconLoader.h:
   27747         * Misc.subproj/WebIconLoader.m:
   27748         (-[WebIconLoader startLoading]):
   27749         * WebView.subproj/WebBaseResourceHandleDelegate.h:
   27750         * WebView.subproj/WebBaseResourceHandleDelegate.m:
   27751         (-[WebBaseResourceHandleDelegate loadWithRequest:]):
   27752         * WebView.subproj/WebMainResourceClient.h:
   27753         * WebView.subproj/WebMainResourceClient.m:
   27754         (-[WebMainResourceClient loadWithRequest:]):
   27755         (-[WebResourceDelegateProxy setDelegate:]):
   27756 
   27757 2003-04-01  Darin Adler  <darin (a] apple.com>
   27758 
   27759         Reviewed by John.
   27760 
   27761         - fixed 3213918 -- REGRESSION: printing Mapquest directions, screen font is used, causing exception, crashes
   27762         - fixed 3144287 -- CSS with media=print not used when printing
   27763 
   27764         * WebView.subproj/WebFramePrivate.m: (-[WebFrame _opened]): Don't call the reapplyStyles
   27765         method directly here, use setNeedsToApplyStyles instead.
   27766         * WebView.subproj/WebHTMLView.m:
   27767         (-[WebHTMLView reapplyStyles]): Pass the appropriate device type here.
   27768         (-[WebHTMLView drawRect:]): Don't call setUsingPrinterFonts:NO at the end of this method
   27769         if we were already using printer fonts at the start. This was the bug fix.
   27770         (-[WebHTMLView _setPrinting:]): Renamed from _setUsingPrinterFonts since this now controls
   27771         the styles used too, not just the fonts.
   27772         (-[WebHTMLView beginDocument]): Updated for _setPrinting name change.
   27773         (-[WebHTMLView endDocument]): Ditto.
   27774         * WebView.subproj/WebHTMLViewPrivate.h: Renamed "usingPrinterFonts" field to "printing".
   27775 
   27776 2003-04-01  Richard Williamson  <rjw (a] apple.com>
   27777 
   27778         Fixed ~2% performance regression problem.  The regression
   27779         was caused by the allocation of a forwarder on every 
   27780         delegate callback.  Modified code to only create forwarders once,
   27781         and reset when delegates change.
   27782         
   27783         Reviewed by Ken.
   27784 
   27785         * WebCoreSupport.subproj/WebBridge.m:
   27786         (-[WebBridge objectLoadedFromCacheWithURL:response:size:]):
   27787         * WebView.subproj/WebBaseResourceHandleDelegate.h:
   27788         * WebView.subproj/WebBaseResourceHandleDelegate.m:
   27789         (-[WebBaseResourceHandleDelegate setDataSource:]):
   27790         (-[WebBaseResourceHandleDelegate connection:willSendRequest:redirectResponse:]):
   27791         (-[WebBaseResourceHandleDelegate connection:didReceiveResponse:]):
   27792         (-[WebBaseResourceHandleDelegate connection:didReceiveData:]):
   27793         (-[WebBaseResourceHandleDelegate connectionDidFinishLoading:]):
   27794         * WebView.subproj/WebView.m:
   27795         (-[WebView setWindowOperationsDelegate:]):
   27796         (-[WebView setResourceLoadDelegate:]):
   27797         (-[WebView setContextMenuDelegate:]):
   27798         (-[WebView setPolicyDelegate:]):
   27799         (-[WebView setLocationChangeDelegate:]):
   27800         * WebView.subproj/WebViewPrivate.h:
   27801         * WebView.subproj/WebViewPrivate.m:
   27802         (-[WebViewPrivate dealloc]):
   27803         (-[WebView _locationChangeDelegateForwarder]):
   27804         (-[WebView _resourceLoadDelegateForwarder]):
   27805         (-[WebView _cacheResourceLoadDelegateImplementations]):
   27806         (-[WebView _resourceLoadDelegateImplementations]):
   27807         (-[WebView _policyDelegateForwarder]):
   27808         (-[WebView _contextMenuDelegateForwarder]):
   27809         (-[WebView _windowOperationsDelegateForwarder]):
   27810         (-[_WebSafeForwarder forwardInvocation:]):
   27811 
   27812         * API-Issues.rtf:
   27813         Notes to self.
   27814         
   27815 2003-04-01  Darin Adler  <darin (a] apple.com>
   27816 
   27817         * English.lproj/StringsNotToBeLocalized.txt: Allowed update-alex-localizable-strings
   27818         to sort this file.
   27819 
   27820 2003-03-31  Trey Matteson  <trey (a] apple.com>
   27821 
   27822         3212724 - bookmarks and history items have screwed up designated inits
   27823 
   27824         and support code for:
   27825         3116315 - autocomplete needs some prioritization magic
   27826 
   27827         The main changes are adding and maintaining a visitCount to the HistoryItem,
   27828         cleaning up the init methods of HistoryItem.  Also lastVisitedDate is now
   27829         set explicitly instead of automatically getting the current date.
   27830 
   27831         Reviewed by John.
   27832 
   27833         * History.subproj/WebHistory.m:
   27834         (-[WebHistory addItemForURL:]):  Set lastVisitedDate of new item.
   27835         (-[WebHistory _itemForURLString:]):  New helper routine.
   27836         * History.subproj/WebHistoryItem.h:  Conform to NSCopying.
   27837         * History.subproj/WebHistoryItem.m:
   27838         (-[WebHistoryItem init]):  Behave like a designated initializer.
   27839         (-[WebHistoryItem copyWithZone:]):  New.
   27840         (-[WebHistoryItem initWithURL:title:]):  Call the designated initializer.
   27841         (-[WebHistoryItem initWithURL:target:parent:title:]):    Call the designated initializer.
   27842         Don't blindly init lastVisitedDate.
   27843         (-[WebHistoryItem setLastVisitedDate:]):  Update visitCount too.
   27844         (-[WebHistoryItem visitCount]):  New getter.
   27845         (-[WebHistoryItem setVisitCount:]):  New setter.
   27846         (-[WebHistoryItem _mergeAutoCompleteHints:]):  Combine autocomplete info
   27847         of two items.  Used when one item replaces another in the history.
   27848         (-[WebHistoryItem dictionaryRepresentation]):  Write visitCount.
   27849         (-[WebHistoryItem initFromDictionaryRepresentation:]):  Read visitCount.
   27850         * History.subproj/WebHistoryItemPrivate.h:
   27851         * History.subproj/WebHistoryPrivate.h:
   27852         * History.subproj/WebHistoryPrivate.m:
   27853         (-[WebHistoryPrivate addItem:]):  Merge autocomplete date from old item to new.
   27854         (-[WebHistoryPrivate itemForURLString:]):   s/entry/item/
   27855         (-[WebHistoryPrivate containsItemForURLString:]):   s/entry/item/
   27856         (-[WebHistoryPrivate containsURL:]):   s/entry/item/
   27857         (-[WebHistoryPrivate itemForURL:]):   s/entry/item/
   27858         (-[WebHistoryPrivate _loadHistoryGuts:]):  Skip history items without visitDate.
   27859         * WebView.subproj/WebFramePrivate.m:
   27860         (-[WebFrame _transitionToCommitted:]):  Update last visitTime when we revisit
   27861         the same URL (since no new history item is created).
   27862 
   27863 2003-03-31  Richard Williamson  <rjw (a] apple.com>
   27864 
   27865         Fixed 3213637.  We weren't calling the correct delegate method,
   27866         setStatus: instead of webView:setStatus:
   27867         
   27868         Reviewed by darin.
   27869 
   27870         * Plugins.subproj/WebBaseNetscapePluginView.m:
   27871         (-[WebBaseNetscapePluginView status:]):
   27872 
   27873 2003-03-31  Maciej Stachowiak  <mjs (a] apple.com>
   27874 
   27875         Reviewed by Chris.
   27876 
   27877         - fixed 3210813 - REGRESSION: full size stock chart on etrade shows up empty after viewing mini stock chart
   27878 
   27879         I fixed this by adding a "negative cache" of icon URLs that loaded
   27880         something but failed to yield an icon. This prevents us from
   27881         asking for the site icon over and over, which was messing up the
   27882         session cookie.
   27883         * Misc.subproj/WebIconDatabase.m:
   27884         (-[WebIconDatabase init]):
   27885         (-[WebIconDatabase iconForURL:withSize:cache:]):
   27886         (-[WebIconDatabase _updateFileDatabase]):
   27887         (-[WebIconDatabase _iconsForIconURLString:]):
   27888         (-[WebIconDatabase _setHaveNoIconForIconURL:]):
   27889         (-[WebIconDatabase _releaseIconForIconURLString:]):
   27890         * Misc.subproj/WebIconDatabasePrivate.h:
   27891         * Misc.subproj/WebIconLoader.h:
   27892         * Misc.subproj/WebIconLoader.m:
   27893         (-[WebIconLoader startLoading]):
   27894         (-[WebIconLoader connectionDidFinishLoading:]):
   27895         * WebView.subproj/WebDataSourcePrivate.m:
   27896         (-[WebDataSource _iconLoaderReceivedPageIcon:]):
   27897 
   27898 2003-03-31  Darin Adler  <darin (a] apple.com>
   27899 
   27900         * English.lproj/InfoPlist.strings: Changed "1.0 Beta" to "1.0 Beta 2".
   27901         * WebKit.pbproj/project.pbxproj: Changed "1.0 Beta" to "1.0 Beta 2".
   27902 
   27903         * English.lproj/StringsNotToBeLocalized.txt: Updated for recent changes.
   27904 
   27905         * English.lproj/Localizable.strings: Regenerated (new script, "1.0 Beta 2").
   27906 
   27907 2003-03-31  Richard Williamson  <rjw (a] apple.com>
   27908 
   27909         Reviewed by darin.
   27910 
   27911         * History.subproj/WebHistory.h:
   27912         Added use of WebHistoryItemsKey instead of @"Entries".
   27913         
   27914         * History.subproj/WebHistory.m:(-[WebHistory _sendNotification:entries:]):
   27915         Use WebHistoryItemsKey as key instead of @"Entries".
   27916         
   27917         * History.subproj/WebHistoryItem.m: (-[WebHistoryItem init]):
   27918         Fix double allocation of WebHistoryPrivate.
   27919 
   27920         * WebKit/WebKit.exp
   27921         Added export for WebHistoryItemsKey
   27922         
   27923         * WebKit/API-Issues.rtf
   27924         Notes.
   27925         
   27926 2003-03-31  Darin Adler  <darin (a] apple.com>
   27927 
   27928         Reviewed by Chris.
   27929 
   27930         - improved default behaviors in window operations delegate
   27931 
   27932         * WebView.subproj/WebDefaultWindowOperationsDelegate.m:
   27933         (-[WebDefaultWindowOperationsDelegate webViewShowWindowBehindFrontmost:]): Removed unused method.
   27934         (-[WebDefaultWindowOperationsDelegate webViewCloseWindow:]): Added default implementation, calls close on window.
   27935         (-[WebDefaultWindowOperationsDelegate webViewFocusWindow:]): Added default implementation, makeKeyAndOrderFront.
   27936         (-[WebDefaultWindowOperationsDelegate webViewUnfocusWindow:]): Added default implementation, uses _cycleWindowsReversed as needed.
   27937         (-[WebDefaultWindowOperationsDelegate webViewFirstResponderInWindow:]): Added default implementation, calls firstResponder.
   27938         (-[WebDefaultWindowOperationsDelegate webView:makeFirstResponderInWindow:]): Added default implementation, calls makeFirstResponder.
   27939         (-[WebDefaultWindowOperationsDelegate webViewIsResizable:]): Added default implementation, calls showsResizeIndicator.
   27940         (-[WebDefaultWindowOperationsDelegate webView:setResizable:]): Added default implementation, calls setShowsResizeIndicator.
   27941         (-[WebDefaultWindowOperationsDelegate webView:setFrame:]): Use display:YES, not display:NO.
   27942         (-[WebDefaultWindowOperationsDelegate webViewFrame:]): Return NSZeroRect if window is nil instead of random garbage.
   27943         (-[WebDefaultWindowOperationsDelegate webView:setContentRect:]): Use display:YES, not display:NO.
   27944         (-[WebDefaultWindowOperationsDelegate webViewContentRect:]): Return NSZeroRect if window is nil instead of random garbage.
   27945         (-[WebDefaultWindowOperationsDelegate webView: runJavaScriptAlertPanelWithMessage:]): Added a FIXME because we should have a default implementation here.
   27946         (-[WebDefaultWindowOperationsDelegate webView:runJavaScriptConfirmPanelWithMessage:]): Ditto.
   27947         (-[WebDefaultWindowOperationsDelegate webView:runJavaScriptTextInputPanelWithPrompt:defaultText:]): Put a default implementation here.
   27948         (-[WebDefaultWindowOperationsDelegate webView:runOpenPanelForFileButtonWithResultListener:]): Added a FIXME because we should have a default implementation here.
   27949 
   27950 2003-03-29  Chris Blumenberg  <cblu (a] apple.com>
   27951 
   27952         Fixed: 3178058 - Plug-ins are stopped/reloaded when switching tabs
   27953         Made the "Enable plug-ins" preference toggle in real-time again.
   27954 
   27955         No events including null events are sent when a plug-in is in a non-frontmost tab. This causes Flash movies to pause (which is nice) and QT movies to continue to play.
   27956 
   27957         Reviewed by darin.
   27958 
   27959         * Plugins.subproj/WebBaseNetscapePluginView.h:
   27960         * Plugins.subproj/WebBaseNetscapePluginView.m:
   27961         (-[WebBaseNetscapePluginView saveAndSetPortStateForUpdate:]): use the current window, clip out the plug-in when not in an actual window
   27962         (-[WebBaseNetscapePluginView restorePortState:]): use the current window
   27963         (-[WebBaseNetscapePluginView sendEvent:]): added asserts
   27964         (-[WebBaseNetscapePluginView sendActivateEvent:]): tweak
   27965         (-[WebBaseNetscapePluginView sendNullEvent]): tweak
   27966         (-[WebBaseNetscapePluginView restartNullEvents]): tweak
   27967         (-[WebBaseNetscapePluginView isInResponderChain]): tweak
   27968         (-[WebBaseNetscapePluginView performKeyEquivalent:]): tweak
   27969         (-[WebBaseNetscapePluginView canStart]): new, implemented by subclasses
   27970         (-[WebBaseNetscapePluginView didStart]): new, implemented by subclasses
   27971         (-[WebBaseNetscapePluginView addWindowObservers]): new
   27972         (-[WebBaseNetscapePluginView removeWindowObservers]): new
   27973         (-[WebBaseNetscapePluginView start]): check pref, call canStart, addWindowObservers and didStart
   27974         (-[WebBaseNetscapePluginView stop]): call removeWindowObservers
   27975         (-[WebBaseNetscapePluginView currentWindow]): new, returns the actual window else the host window
   27976         (-[WebBaseNetscapePluginView initWithFrame:]): observer pref change notifications
   27977         (-[WebBaseNetscapePluginView dealloc]): call removeObserver
   27978         (-[WebBaseNetscapePluginView viewWillMoveToWindow:]): stop if there is no host window
   27979         (-[WebBaseNetscapePluginView viewDidMoveToWindow]): start if we moved to a window
   27980         (-[WebBaseNetscapePluginView viewWillMoveToHostWindow:]): stop if there will be no windows
   27981         (-[WebBaseNetscapePluginView viewDidMoveToHostWindow]): start if there is a window
   27982         (-[WebBaseNetscapePluginView preferencesHaveChanged:]): renamed, start or stop
   27983         (-[WebBaseNetscapePluginView destroyStream:reason:]): tweak
   27984         (-[NSData _web_locationAfterFirstBlankLine]): tweak
   27985         * Plugins.subproj/WebNetscapePluginDocumentView.m:
   27986         (-[WebNetscapePluginDocumentView initWithFrame:]): call setAutoresizingMask here
   27987         (-[WebNetscapePluginDocumentView canStart]): new, return YES if there is a data source
   27988         (-[WebNetscapePluginDocumentView didStart]): redeliver the stream if there is any data
   27989         (-[WebNetscapePluginDocumentView setDataSource:]): start if there is a current window
   27990         (-[WebNetscapePluginDocumentView layout]): no need to call setWindow, this is done in the superclass
   27991         (-[WebNetscapePluginDocumentView viewWillMoveToHostWindow:]): forward to super to make compiler happy
   27992         (-[WebNetscapePluginDocumentView viewDidMoveToHostWindow]): forward to super to make compiler happy
   27993         * Plugins.subproj/WebNetscapePluginEmbeddedView.m:
   27994         (-[WebNetscapePluginEmbeddedView didStart]): start the load
   27995         (-[WebNetscapePluginEmbeddedView dataSource]): tweak
   27996         * WebView.subproj/WebDocument.h: added viewWillMoveToHostWindow: and viewDidMoveToHostWindow
   27997         * WebView.subproj/WebFramePrivate.h:
   27998         * WebView.subproj/WebFramePrivate.m:
   27999         (-[WebFrame _viewWillMoveToHostWindow:]): forward to document view and subframes
   28000         (-[WebFrame _viewDidMoveToHostWindow]): forward to document view and subframes
   28001         * WebView.subproj/WebHTMLView.m:
   28002         (-[WebHTMLView viewWillMoveToHostWindow:]): forward to plug-in views
   28003         (-[WebHTMLView viewDidMoveToHostWindow]): forward to plug-in views
   28004         (-[NSArray _web_makePluginViewsPerformSelector:withObject:]): new
   28005         * WebView.subproj/WebHTMLViewPrivate.m:
   28006         (-[WebHTMLView _reset]): don't stop plug-ins here. WebBaseNetscapePluginView can handle that
   28007         * WebView.subproj/WebImageView.m:
   28008         (-[WebImageView viewWillMoveToHostWindow:]): implement new WebDocumentView methods
   28009         (-[WebImageView viewDidMoveToHostWindow]): implement new WebDocumentView methods
   28010         * WebView.subproj/WebTextView.m:
   28011         (-[WebTextView viewWillMoveToHostWindow:]): implement new WebDocumentView methods
   28012         (-[WebTextView viewDidMoveToHostWindow]): implement new WebDocumentView methods
   28013         * WebView.subproj/WebView.h:
   28014         * WebView.subproj/WebView.m:
   28015         (-[WebView setHostWindow:]): new
   28016         (-[WebView hostWindow]): new
   28017         * WebView.subproj/WebViewPrivate.h:
   28018         * WebView.subproj/WebViewPrivate.m:
   28019         (-[WebViewPrivate dealloc]): release the host window
   28020 
   28021 2003-03-31  Darin Adler  <darin (a] apple.com>
   28022 
   28023         Reviewed by John.
   28024 
   28025         * WebCoreSupport.subproj/WebBridge.m:
   28026         (-[WebBridge nextKeyViewOutsideWebFrameViews]): Get next key view from WebView, only using
   28027         the top level WebFrameView if the WebView doesn't have one set (for compatibility in case
   28028         some of our current WebKit clients are using this).
   28029         (-[WebBridge previousKeyViewOutsideWebFrameViews]): Ditto.
   28030 
   28031 2003-03-31  Darin Adler  <darin (a] apple.com>
   28032 
   28033         Reviewed by John.
   28034 
   28035         - fixed 3211730 -- REGRESSION: Flash spawns blank page then loads new page inside banner itself
   28036 
   28037         * Plugins.subproj/WebBaseNetscapePluginView.m: (-[WebBaseNetscapePluginView loadPluginRequest:]):
   28038         Load the request in the frame we found or created, not always in our own frame (oops!).
   28039 
   28040         - other changes
   28041 
   28042         * History.subproj/WebHistory.h: Update comments to all say "Item" instead of "Entry".
   28043         They didn't match the method names any more.
   28044         
   28045         * WebView.subproj/WebView.m:
   28046         (-[WebView acceptsFirstResponder]): Return YES.
   28047         (-[WebView becomeFirstResponder]): Pass first responder on to the WebFrameView in the same way
   28048         the WebFrameView passes it on to the document view.
   28049 
   28050 2003-03-30  Maciej Stachowiak  <mjs (a] apple.com>
   28051 
   28052         Reviewed by Darin.
   28053 
   28054         - fixed 3204257 - CNN's 'war on iraq' ticker stops on mouseover
   28055 
   28056         * WebView.subproj/WebHTMLViewPrivate.h:
   28057         * WebView.subproj/WebHTMLViewPrivate.m:
   28058         (-[WebHTMLView _updateMouseoverWithEvent:]): When leaving an HTML
   28059         view, tell it that the mouse moved outside everything in the view,
   28060         even accounting for scrolled off portions (otherwise khtml gets
   28061         confused). This makes cross-frame mouse enter/leave work properly.
   28062         (-[WebHTMLView _clearLastHitViewIfSelf]): Method to clear last hit view,
   28063         so we don't need to retain it.
   28064         * WebView.subproj/WebHTMLView.m:
   28065         (-[WebHTMLView dealloc]): Call _clearLastHitViewIfSelf.
   28066 
   28067 2003-03-28  Richard Williamson  <rjw (a] apple.com>
   28068 
   28069         Fix typo in comments that broke headerdoc.
   28070         
   28071         * WebView.subproj/WebWindowOperationsDelegate.h:
   28072 
   28073 2003-03-28  Ken Kocienda  <kocienda (a] apple.com>
   28074 
   28075         Reviewed by John
   28076 
   28077         Imports NSURLConnection private header to access NSURLConnection code 
   28078         that did not make the API cut.
   28079 
   28080         * WebView.subproj/WebBaseResourceHandleDelegate.m:
   28081         * WebView.subproj/WebMainResourceClient.m:
   28082 
   28083 2003-03-28  Ken Kocienda  <kocienda (a] apple.com>
   28084 
   28085         Reviewed by Trey
   28086 
   28087         NSURLConnection class method changed name:
   28088             canInitWithRequest: -> canHandleRequest:
   28089 
   28090         Moved to API-approved model for synchronous loads.
   28091         Removed fixme I put in yesterday having to do with
   28092         reposting form data. The feature is fully functional
   28093         again.
   28094 
   28095         * Plugins.subproj/WebNetscapePluginStream.m:
   28096         (-[WebNetscapePluginStream initWithRequest:pluginPointer:notifyData:]):
   28097         * WebView.subproj/WebDefaultContextMenuDelegate.m:
   28098         (-[WebDefaultContextMenuDelegate webView:contextMenuItemsForElement:defaultMenuItems:]):
   28099         * WebView.subproj/WebDefaultPolicyDelegate.m:
   28100         (-[WebDefaultPolicyDelegate webView:decideNavigationPolicyForAction:andRequest:inFrame:decisionListener:]):
   28101         * WebView.subproj/WebFramePrivate.m:
   28102         (-[WebFrame _loadItem:fromItem:withLoadType:]):
   28103         (-[WebFrame _continueAfterNavigationPolicy:]):
   28104 
   28105 2003-03-28  Ken Kocienda  <kocienda (a] apple.com>
   28106 
   28107         Reviewed by Darin
   28108 
   28109         Cosmetic change. Instances of 'resource' as a local variable
   28110         name have been changed to 'connection'. Some other changes
   28111         related to this cosmetic cleanup were done as well.
   28112 
   28113         As part of this change, I needed to change some 'connection'
   28114         method arguments to 'con' to avoid the name conflict now
   28115         that instance variables are named .connection'.
   28116 
   28117         * Downloads.subproj/WebDownload.m:
   28118         (-[WebDownloadPrivate dealloc]):
   28119         (-[WebDownload initWithRequest:]):
   28120         (-[WebDownload _initWithLoadingResource:request:response:delegate:proxy:]):
   28121         (+[WebDownload _downloadWithLoadingResource:request:response:delegate:proxy:]):
   28122         (-[WebDownload loadWithDelegate:]):
   28123         (-[WebDownload _downloadEnded]):
   28124         (-[WebDownload _cancelWithError:]):
   28125         * Downloads.subproj/WebDownloadPrivate.h:
   28126         * Plugins.subproj/WebNetscapePluginStream.m:
   28127         (-[WebNetscapePluginStream connection:didReceiveResponse:]):
   28128         (-[WebNetscapePluginStream connection:didReceiveData:]):
   28129         (-[WebNetscapePluginStream connectionDidFinishLoading:]):
   28130         (-[WebNetscapePluginStream connection:didFailLoadingWithError:]):
   28131         * WebCoreSupport.subproj/WebSubresourceClient.m:
   28132         (-[WebSubresourceClient connection:willSendRequest:redirectResponse:]):
   28133         (-[WebSubresourceClient connection:didReceiveResponse:]):
   28134         (-[WebSubresourceClient connection:didReceiveData:]):
   28135         (-[WebSubresourceClient connectionDidFinishLoading:]):
   28136         (-[WebSubresourceClient connection:didFailLoadingWithError:]):
   28137         * WebView.subproj/WebBaseResourceHandleDelegate.h:
   28138         * WebView.subproj/WebBaseResourceHandleDelegate.m:
   28139         (-[WebBaseResourceHandleDelegate _releaseResources]):
   28140         (-[WebBaseResourceHandleDelegate startLoading:]):
   28141         (-[WebBaseResourceHandleDelegate loadWithRequest:]):
   28142         (-[WebBaseResourceHandleDelegate setDefersCallbacks:]):
   28143         (-[WebBaseResourceHandleDelegate connection:willSendRequest:redirectResponse:]):
   28144         (-[WebBaseResourceHandleDelegate connection:didReceiveResponse:]):
   28145         (-[WebBaseResourceHandleDelegate connection:didReceiveData:]):
   28146         (-[WebBaseResourceHandleDelegate connectionDidFinishLoading:]):
   28147         (-[WebBaseResourceHandleDelegate connection:didFailLoadingWithError:]):
   28148         (-[WebBaseResourceHandleDelegate cancelWithError:]):
   28149         * WebView.subproj/WebMainResourceClient.m:
   28150         (-[WebMainResourceClient receivedError:]):
   28151         (-[WebMainResourceClient cancelWithError:]):
   28152         (-[WebMainResourceClient connection:willSendRequest:redirectResponse:]):
   28153         (-[WebMainResourceClient continueAfterContentPolicy:response:]):
   28154         (-[WebMainResourceClient connection:didReceiveResponse:]):
   28155         (-[WebMainResourceClient connection:didReceiveData:]):
   28156         (-[WebMainResourceClient connectionDidFinishLoading:]):
   28157         (-[WebMainResourceClient connection:didFailLoadingWithError:]):
   28158         (-[WebMainResourceClient startLoading:]):
   28159 
   28160 2003-03-28  Ken Kocienda  <kocienda (a] apple.com>
   28161 
   28162         Reviewed by Darin
   28163 
   28164         Changed names for URL connection callback methods to       
   28165         use the API-approved names. No functional changes.
   28166 
   28167         * Downloads.subproj/WebDownload.h:
   28168         * Downloads.subproj/WebDownload.m:
   28169         (-[WebDownload _initWithLoadingResource:request:response:delegate:proxy:]):
   28170         (-[WebDownload connection:willSendRequest:redirectResponse:]):
   28171         (-[WebDownload connection:didReceiveResponse:]):
   28172         (-[WebDownload connection:didReceiveData:]):
   28173         (-[WebDownload connectionDidFinishLoading:]):
   28174         (-[WebDownload connection:didFailLoadingWithError:]):
   28175         * Misc.subproj/WebIconLoader.m:
   28176         (-[WebIconLoader connectionDidFinishLoading:]):
   28177         (-[WebIconLoader connection:willSendRequest:redirectResponse:]):
   28178         (-[WebIconLoader connection:didReceiveResponse:]):
   28179         (-[WebIconLoader connection:didReceiveData:]):
   28180         (-[WebIconLoader connection:didFailLoadingWithError:]):
   28181         * Plugins.subproj/WebNetscapePluginStream.m:
   28182         (-[WebNetscapePluginStream connection:didReceiveResponse:]):
   28183         (-[WebNetscapePluginStream connection:didReceiveData:]):
   28184         (-[WebNetscapePluginStream connectionDidFinishLoading:]):
   28185         (-[WebNetscapePluginStream connection:didFailLoadingWithError:]):
   28186         * WebCoreSupport.subproj/WebBridge.m:
   28187         (-[WebBridge objectLoadedFromCacheWithURL:response:size:]):
   28188         * WebCoreSupport.subproj/WebSubresourceClient.m:
   28189         (-[WebSubresourceClient connection:willSendRequest:redirectResponse:]):
   28190         (-[WebSubresourceClient connection:didReceiveResponse:]):
   28191         (-[WebSubresourceClient connection:didReceiveData:]):
   28192         (-[WebSubresourceClient connectionDidFinishLoading:]):
   28193         (-[WebSubresourceClient connection:didFailLoadingWithError:]):
   28194         * WebView.subproj/WebBaseResourceHandleDelegate.m:
   28195         (-[WebBaseResourceHandleDelegate connection:willSendRequest:redirectResponse:]):
   28196         (-[WebBaseResourceHandleDelegate connection:didReceiveResponse:]):
   28197         (-[WebBaseResourceHandleDelegate connection:didReceiveData:]):
   28198         (-[WebBaseResourceHandleDelegate connectionDidFinishLoading:]):
   28199         (-[WebBaseResourceHandleDelegate connection:didFailLoadingWithError:]):
   28200         * WebView.subproj/WebDefaultResourceLoadDelegate.m:
   28201         (-[WebDefaultResourceLoadDelegate webView:resource:willSendRequest:redirectResponse:fromDataSource:]):
   28202         * WebView.subproj/WebMainResourceClient.m:
   28203         (-[WebMainResourceClient receivedError:]):
   28204         (-[WebMainResourceClient connection:willSendRequest:redirectResponse:]):
   28205         (-[WebMainResourceClient continueAfterContentPolicy:response:]):
   28206         (-[WebMainResourceClient connection:didReceiveResponse:]):
   28207         (-[WebMainResourceClient connection:didReceiveData:]):
   28208         (-[WebMainResourceClient connectionDidFinishLoading:]):
   28209         (-[WebMainResourceClient connection:didFailLoadingWithError:]):
   28210         (-[WebMainResourceClient startLoading:]):
   28211         (-[WebResourceDelegateProxy connection:willSendRequest:redirectResponse:]):
   28212         (-[WebResourceDelegateProxy connection:didReceiveResponse:]):
   28213         (-[WebResourceDelegateProxy connection:didReceiveData:]):
   28214         (-[WebResourceDelegateProxy connectionDidFinishLoading:]):
   28215         (-[WebResourceDelegateProxy connection:didFailLoadingWithError:]):
   28216         * WebView.subproj/WebResourceLoadDelegate.h:
   28217 
   28218 2003-03-27  Chris Blumenberg  <cblu (a] apple.com>
   28219 
   28220         Left out a "!" in my last check-in.
   28221 
   28222         * Plugins.subproj/WebNetscapePluginPackage.m:
   28223         (-[WebNetscapePluginPackage load]):
   28224 
   28225 
   28226 2003-03-27  Chris Blumenberg  <cblu (a] apple.com>
   28227 
   28228         - Allow Netscape plug-ins that don't have resource files to load in Safari.
   28229         - Added more error handling when loading plug-ins.
   28230 
   28231         Reviewed by darin.
   28232 
   28233         * Plugins.subproj/WebNetscapePluginPackage.m:
   28234         (-[WebNetscapePluginPackage load]):
   28235 
   28236 2003-03-27  Maciej Stachowiak  <mjs (a] apple.com>
   28237 
   28238         Reviewed by Darin.
   28239 
   28240         - fixed 3192344 - nil-deref in KWin::info scrolling amazon while other shopping tabs load
   28241         - fixed 3098365 - Default window size changes as a result of popup windows
   28242         - fixed 3189291 - javascript window.close() closes window, not just originating tab
   28243 
   28244         * WebCoreSupport.subproj/WebBridge.m:
   28245         (-[WebBridge setWindowIsResizable:]): New bridge method, implemented
   28246         by calling window operations delegate.
   28247         (-[WebBridge windowIsResizable]): Likewise.
   28248         (-[WebBridge firstResponder]): Likewise.
   28249         (-[WebBridge makeFirstResponder:]): Likewise.
   28250         (-[WebBridge closeWindow]): Likewise.
   28251 
   28252 2003-03-27  Ken Kocienda  <kocienda (a] apple.com>
   28253 
   28254         Reviewed by Darin
   28255 
   28256         Changed WebResource to NSURLConnection. Some other "supporting" names
   28257         changed as well. Note that there are no functional modifications,
   28258         only name changes.
   28259 
   28260         * Downloads.subproj/WebDownload.m:
   28261         (-[WebDownload initWithRequest:]):
   28262         (-[WebDownload _initWithLoadingResource:request:response:delegate:proxy:]):
   28263         (+[WebDownload _downloadWithLoadingResource:request:response:delegate:proxy:]):
   28264         (-[WebDownload loadWithDelegate:]):
   28265         (-[WebDownload resource:willSendRequest:]):
   28266         (-[WebDownload resource:didReceiveResponse:]):
   28267         (-[WebDownload resource:didReceiveData:]):
   28268         (-[WebDownload resourceDidFinishLoading:]):
   28269         (-[WebDownload resource:didFailLoadingWithError:]):
   28270         * Downloads.subproj/WebDownloadPrivate.h:
   28271         * Misc.subproj/WebIconLoader.h:
   28272         * Misc.subproj/WebIconLoader.m:
   28273         (-[WebIconLoader startLoading]):
   28274         (-[WebIconLoader resourceDidFinishLoading:]):
   28275         (-[WebIconLoader resource:willSendRequest:]):
   28276         (-[WebIconLoader resource:didReceiveResponse:]):
   28277         (-[WebIconLoader resource:didReceiveData:]):
   28278         (-[WebIconLoader resource:didFailLoadingWithError:]):
   28279         * Plugins.subproj/WebNetscapePluginStream.h:
   28280         * Plugins.subproj/WebNetscapePluginStream.m:
   28281         (-[WebNetscapePluginStream initWithRequest:pluginPointer:notifyData:]):
   28282         (-[WebNetscapePluginStream resource:didReceiveResponse:]):
   28283         (-[WebNetscapePluginStream resource:didReceiveData:]):
   28284         (-[WebNetscapePluginStream resourceDidFinishLoading:]):
   28285         (-[WebNetscapePluginStream resource:didFailLoadingWithError:]):
   28286         * WebCoreSupport.subproj/WebBridge.m:
   28287         * WebCoreSupport.subproj/WebSubresourceClient.m:
   28288         (-[WebSubresourceClient resource:willSendRequest:]):
   28289         (-[WebSubresourceClient resource:didReceiveResponse:]):
   28290         (-[WebSubresourceClient resource:didReceiveData:]):
   28291         (-[WebSubresourceClient resourceDidFinishLoading:]):
   28292         (-[WebSubresourceClient resource:didFailLoadingWithError:]):
   28293         * WebView.subproj/WebBaseResourceHandleDelegate.h:
   28294         * WebView.subproj/WebBaseResourceHandleDelegate.m:
   28295         (-[WebBaseResourceHandleDelegate loadWithRequest:]):
   28296         (-[WebBaseResourceHandleDelegate resource:willSendRequest:]):
   28297         (-[WebBaseResourceHandleDelegate resource:didReceiveResponse:]):
   28298         (-[WebBaseResourceHandleDelegate resource:didReceiveData:]):
   28299         (-[WebBaseResourceHandleDelegate resourceDidFinishLoading:]):
   28300         (-[WebBaseResourceHandleDelegate resource:didFailLoadingWithError:]):
   28301         * WebView.subproj/WebDataSource.h:
   28302         * WebView.subproj/WebDataSource.m:
   28303         * WebView.subproj/WebDataSourcePrivate.m:
   28304         * WebView.subproj/WebDefaultContextMenuDelegate.m:
   28305         (-[WebDefaultContextMenuDelegate webView:contextMenuItemsForElement:defaultMenuItems:]):
   28306         * WebView.subproj/WebDefaultPolicyDelegate.m:
   28307         (-[WebDefaultPolicyDelegate webView:decideNavigationPolicyForAction:andRequest:inFrame:decisionListener:]):
   28308         * WebView.subproj/WebDefaultResourceLoadDelegate.m:
   28309         * WebView.subproj/WebFramePrivate.m:
   28310         (-[WebFrame _continueAfterNavigationPolicy:]):
   28311         (-[WebFrame _postWithURL:referrer:target:data:contentType:triggeringEvent:form:formValues:]):
   28312         * WebView.subproj/WebMainResourceClient.h:
   28313         * WebView.subproj/WebMainResourceClient.m:
   28314         (-[WebMainResourceClient resource:willSendRequest:]):
   28315         (-[WebMainResourceClient resource:didReceiveResponse:]):
   28316         (-[WebMainResourceClient resource:didReceiveData:]):
   28317         (-[WebMainResourceClient resourceDidFinishLoading:]):
   28318         (-[WebMainResourceClient resource:didFailLoadingWithError:]):
   28319         (-[WebResourceDelegateProxy setDelegate:]):
   28320         (-[WebResourceDelegateProxy resource:willSendRequest:]):
   28321         (-[WebResourceDelegateProxy resource:didReceiveResponse:]):
   28322         (-[WebResourceDelegateProxy resource:didReceiveData:]):
   28323         (-[WebResourceDelegateProxy resourceDidFinishLoading:]):
   28324         (-[WebResourceDelegateProxy resource:didFailLoadingWithError:]):
   28325         * WebView.subproj/WebPolicyDelegate.h:
   28326         * WebView.subproj/WebView.h:
   28327         * WebView.subproj/WebView.m:
   28328         * WebView.subproj/WebViewPrivate.m:
   28329 
   28330 2003-03-27  Richard Williamson   <rjw (a] apple.com>
   28331 
   28332         API change: WebHistory initWithFile: -> initWithContentsOfURL:
   28333         
   28334         Reviewed by Ken.
   28335 
   28336         * History.subproj/WebHistory.h:
   28337         * History.subproj/WebHistory.m:
   28338         (-[WebHistory initWithContentsOfURL:]):
   28339         (-[WebHistory URL]):
   28340         * History.subproj/WebHistoryPrivate.h:
   28341         * History.subproj/WebHistoryPrivate.m:
   28342         (-[WebHistoryPrivate initWithContentsOfURL:]):
   28343         (-[WebHistoryPrivate dealloc]):
   28344         (-[WebHistoryPrivate _loadHistoryGuts:]):
   28345         (-[WebHistoryPrivate loadHistory]):
   28346         (-[WebHistoryPrivate _saveHistoryGuts:]):
   28347         (-[WebHistoryPrivate URL]):
   28348         (-[WebHistoryPrivate saveHistory]):
   28349 
   28350 2003-03-27  Darin Adler  <darin (a] apple.com>
   28351 
   28352         Reviewed by Shelley.
   28353 
   28354         - fixed 3157067 -- Pier1.com doesn't load; Microsoft VBScript runtime error in user-agent checking code
   28355         
   28356         Besides this fix, I also filed an evangelism bug, bug 3210612.
   28357 
   28358         * WebView.subproj/WebUserAgentSpoofTable.gperf: Added pier1.com.
   28359         * WebView.subproj/WebUserAgentSpoofTable.c: Regenerated.
   28360 
   28361 2003-03-27  Ken Kocienda  <kocienda (a] apple.com>
   28362 
   28363         Reviewed by Trey
   28364 
   28365         Moved to final NSURLResponse and NSHTTPURLResponse API.
   28366 
   28367         * Downloads.subproj/WebDownload.m:
   28368         * Misc.subproj/WebNSURLResponseExtras.m:
   28369         (-[NSURLResponse suggestedFilenameForSaving]):
   28370         (-[NSHTTPURLResponse suggestedFilenameForSaving]):
   28371         * Plugins.subproj/WebBaseNetscapePluginStream.m:
   28372         (-[WebBaseNetscapePluginStream setResponse:]):
   28373         * Plugins.subproj/WebNetscapePluginDocumentView.m:
   28374         (-[WebNetscapePluginDocumentView setDataSource:]):
   28375         * WebView.subproj/WebDataSourcePrivate.m:
   28376         (-[WebDataSource _representationClass]):
   28377         (-[WebDataSource _commitIfReady:]):
   28378         * WebView.subproj/WebFramePrivate.m:
   28379         (-[WebFrame _opened]):
   28380         (-[WebFrame _loadItem:fromItem:withLoadType:]):
   28381         * WebView.subproj/WebFrameViewPrivate.m:
   28382         (-[WebFrameView _makeDocumentViewForDataSource:]):
   28383         * WebView.subproj/WebMainResourceClient.m:
   28384         (-[WebMainResourceClient continueAfterContentPolicy:response:]):
   28385         (-[WebMainResourceClient checkContentPolicyForResponse:]):
   28386         (-[WebMainResourceClient resource:didReceiveResponse:]):
   28387         (-[WebMainResourceClient startLoading:]):
   28388         * WebView.subproj/WebTextRepresentation.m:
   28389         (-[WebTextRepresentation setDataSource:]):
   28390         * WebView.subproj/WebTextView.m:
   28391         (-[WebTextView dataSourceUpdated:]):
   28392 
   28393 === Safari-69 ===
   28394 
   28395 2003-03-26  Richard Williamson   <rjw (a] apple.com>
   28396 
   28397         File name change WebPluginError.[hm] -> WebPlugInError.[hm]
   28398 
   28399         * Misc.subproj/WebKit.h:
   28400         * Plugins.subproj/WebNullPluginView.m:
   28401         * Plugins.subproj/WebPlugInError.h:
   28402         * Plugins.subproj/WebPluginError.h: Removed.
   28403         * Plugins.subproj/WebPluginError.m: Removed.
   28404         * Plugins.subproj/WebPluginErrorPrivate.h:
   28405         * WebKit.pbproj/project.pbxproj:
   28406 
   28407 2003-03-26  Richard Williamson   <rjw (a] apple.com>
   28408 
   28409         WebPreferences API changes:
   28410         
   28411         JavaScriptCanOpenWindowsAutomatically -> javaScriptCanOpenWindowsAutomatically
   28412         setJavaScriptCanOpenWindowsAutomatically -> setJavaScriptCanOpenWindowsAutomatically
   28413         willLoadImagesAutomatically -> loadsImagesAutomatically
   28414         setWillLoadImagesAutomatically -> setLoadsImagesAutomatically
   28415         JavaEnabled -> isJavaEnabled
   28416         setJavaEnabled -> setIsJavaEnabled
   28417         JavaScriptEnabled -> isJavaScriptEnabled
   28418         setJavaScriptEnabled -> setIsJavaScriptEnabled
   28419         pluginsEnabled -> arePlugInsEnabled
   28420         setPluginsEnabled -> setArePlugInsEnabled
   28421         allowAnimatedImageLooping -> allowsAnimatedImageLooping
   28422         setAllowAnimatedImageLooping -> setAllowsAnimatedImageLooping
   28423         allowAnimatedImages -> allowsAnimatedImages
   28424         setAllowAnimatedImages -> setAllowsAnimatedImages
   28425         
   28426         Made WebHistoryItem's ivars private.
   28427 
   28428         WebPluginError API changes:
   28429         
   28430         pluginPageURL -> plugInPageURLString
   28431         contentURL -> contentURLString
   28432        
   28433         Reviewed by cblu.
   28434 
   28435         * API-Issues.rtf:
   28436         * History.subproj/WebHistoryItem.h:
   28437         * History.subproj/WebHistoryItem.m:
   28438         (-[WebHistoryItemPrivate dealloc]):
   28439         (-[WebHistoryItem init]):
   28440         (-[WebHistoryItem dealloc]):
   28441         (-[WebHistoryItem URLString]):
   28442         (-[WebHistoryItem originalURLString]):
   28443         (-[WebHistoryItem title]):
   28444         (-[WebHistoryItem setDisplayTitle:]):
   28445         (-[WebHistoryItem icon]):
   28446         (-[WebHistoryItem lastVisitedDate]):
   28447         (-[WebHistoryItem hash]):
   28448         (-[WebHistoryItem anchor]):
   28449         (-[WebHistoryItem isEqual:]):
   28450         (-[WebHistoryItem description]):
   28451         (-[WebHistoryItem _retainIconInDatabase:]):
   28452         (-[WebHistoryItem initWithURL:target:parent:title:]):
   28453         (-[WebHistoryItem URL]):
   28454         (-[WebHistoryItem target]):
   28455         (-[WebHistoryItem parent]):
   28456         (-[WebHistoryItem setURL:]):
   28457         (-[WebHistoryItem setOriginalURLString:]):
   28458         (-[WebHistoryItem setTitle:]):
   28459         (-[WebHistoryItem setTarget:]):
   28460         (-[WebHistoryItem setParent:]):
   28461         (-[WebHistoryItem setLastVisitedDate:]):
   28462         (-[WebHistoryItem documentState]):
   28463         (-[WebHistoryItem scrollPoint]):
   28464         (-[WebHistoryItem setScrollPoint:]):
   28465         (-[WebHistoryItem setAnchor:]):
   28466         (-[WebHistoryItem isTargetItem]):
   28467         (-[WebHistoryItem setIsTargetItem:]):
   28468         (-[WebHistoryItem _recurseToFindTargetItem]):
   28469         (-[WebHistoryItem targetItem]):
   28470         (-[WebHistoryItem formData]):
   28471         (-[WebHistoryItem setFormData:]):
   28472         (-[WebHistoryItem formContentType]):
   28473         (-[WebHistoryItem setFormContentType:]):
   28474         (-[WebHistoryItem formReferrer]):
   28475         (-[WebHistoryItem setFormReferrer:]):
   28476         (-[WebHistoryItem children]):
   28477         (-[WebHistoryItem addChildItem:]):
   28478         (-[WebHistoryItem childItemWithName:]):
   28479         (-[WebHistoryItem dictionaryRepresentation]):
   28480         (-[WebHistoryItem initFromDictionaryRepresentation:]):
   28481         (-[WebHistoryItem setAlwaysAttemptToUsePageCache:]):
   28482         (-[WebHistoryItem alwaysAttemptToUsePageCache]):
   28483         (-[WebHistoryItem _scheduleRelease]):
   28484         (-[WebHistoryItem setHasPageCache:]):
   28485         (-[WebHistoryItem pageCache]):
   28486         * Plugins.subproj/WebPluginError.h:
   28487         * Plugins.subproj/WebPluginError.m:
   28488         (-[WebPlugInError plugInPageURLString]):
   28489         * WebView.subproj/WebPreferences.h:
   28490         * WebView.subproj/WebPreferences.m:
   28491         (-[WebPreferences isJavaEnabled]):
   28492         (-[WebPreferences setIsJavaEnabled:]):
   28493         (-[WebPreferences isJavaScriptEnabled]):
   28494         (-[WebPreferences setIsJavaScriptEnabled:]):
   28495         (-[WebPreferences javaScriptCanOpenWindowsAutomatically]):
   28496         (-[WebPreferences arePlugInsEnabled]):
   28497         (-[WebPreferences setArePlugInsEnabled:]):
   28498         (-[WebPreferences allowsAnimatedImages]):
   28499         (-[WebPreferences allowsAnimatedImageLooping]):
   28500         (-[WebPreferences setAllowsAnimatedImageLooping:]):
   28501         (-[WebPreferences setLoadsImagesAutomatically:]):
   28502         (-[WebPreferences loadsImagesAutomatically]):
   28503         * WebView.subproj/WebViewPrivate.m:
   28504         (-[WebView _updateWebCoreSettingsFromPreferences:]):
   28505 
   28506 2003-03-26  Ken Kocienda  <kocienda (a] apple.com>
   28507 
   28508         Reviewed by Darin
   28509 
   28510         Changed WebResponse to NSURLResponse. Some other "supporting" names
   28511         changed as well. Note that there are no functional modifications,
   28512         only name changes.
   28513 
   28514         * Downloads.subproj/WebDownload.h:
   28515         * Downloads.subproj/WebDownload.m:
   28516         (-[WebDownload _initWithLoadingResource:request:response:delegate:proxy:]):
   28517         (+[WebDownload _downloadWithLoadingResource:request:response:delegate:proxy:]):
   28518         (-[WebDownload _setResponse:]):
   28519         (-[WebDownload resource:didReceiveResponse:]):
   28520         * Downloads.subproj/WebDownloadPrivate.h:
   28521         * Misc.subproj/WebIconLoader.m:
   28522         (-[WebIconLoader resource:didReceiveResponse:]):
   28523         * Misc.subproj/WebKit.h:
   28524         * Plugins.subproj/WebBaseNetscapePluginStream.h:
   28525         * Plugins.subproj/WebBaseNetscapePluginStream.m:
   28526         (-[WebBaseNetscapePluginStream setResponse:]):
   28527         * Plugins.subproj/WebNetscapePluginDocumentView.m:
   28528         * Plugins.subproj/WebNetscapePluginStream.m:
   28529         (-[WebNetscapePluginStream resource:didReceiveResponse:]):
   28530         * WebCoreSupport.subproj/WebBridge.m:
   28531         * WebCoreSupport.subproj/WebSubresourceClient.h:
   28532         * WebCoreSupport.subproj/WebSubresourceClient.m:
   28533         (-[WebSubresourceClient resource:didReceiveResponse:]):
   28534         * WebKit.pbproj/project.pbxproj:
   28535         * WebView.subproj/WebBaseResourceHandleDelegate.h:
   28536         * WebView.subproj/WebBaseResourceHandleDelegate.m:
   28537         (-[WebBaseResourceHandleDelegate resource:didReceiveResponse:]):
   28538         * WebView.subproj/WebDataSource.h:
   28539         * WebView.subproj/WebDataSource.m:
   28540         (-[WebDataSource response]):
   28541         * WebView.subproj/WebDataSourcePrivate.h:
   28542         * WebView.subproj/WebDataSourcePrivate.m:
   28543         (-[WebDataSource _setResponse:]):
   28544         (-[WebDataSource _commitIfReady:]):
   28545         (-[WebDataSource _addResponse:]):
   28546         * WebView.subproj/WebDefaultPolicyDelegate.m:
   28547         * WebView.subproj/WebDefaultResourceLoadDelegate.m:
   28548         (-[WebDefaultResourceLoadDelegate webView:resource:didReceiveResponse:fromDataSource:]):
   28549         * WebView.subproj/WebFramePrivate.m:
   28550         (-[WebFrame _opened]):
   28551         * WebView.subproj/WebFrameViewPrivate.m:
   28552         * WebView.subproj/WebHTMLRepresentation.m:
   28553         * WebView.subproj/WebMainResourceClient.h:
   28554         * WebView.subproj/WebMainResourceClient.m:
   28555         (-[WebMainResourceClient continueAfterContentPolicy:response:]):
   28556         (-[WebMainResourceClient continueAfterContentPolicy:]):
   28557         (-[WebMainResourceClient checkContentPolicyForResponse:]):
   28558         (-[WebMainResourceClient resource:didReceiveResponse:]):
   28559         (-[WebMainResourceClient startLoading:]):
   28560         (-[WebResourceDelegateProxy resource:didReceiveResponse:]):
   28561         * WebView.subproj/WebPolicyDelegate.h:
   28562         * WebView.subproj/WebResourceLoadDelegate.h:
   28563         * WebView.subproj/WebTextRepresentation.m:
   28564         * WebView.subproj/WebTextView.m:
   28565 
   28566 2003-03-26  Darin Adler  <darin (a] apple.com>
   28567 
   28568         * English.lproj/StringsNotToBeLocalized.txt: Updated for recent changes.
   28569 
   28570 2003-03-26  Darin Adler  <darin (a] apple.com>
   28571 
   28572         Reviewed by Trey.
   28573 
   28574         - fixed 3209091 -- REGRESSION: WebFrameView leak (world leak)
   28575 
   28576         * WebView.subproj/WebView.m:
   28577         (-[WebView _commonInitialization:frameName:groupName:]): Use copy, not retain,
   28578         on an incoming NSString parameter.
   28579         (-[WebView initWithFrame:frameName:groupName:]): Release the WebFrameView after
   28580         setting it up.
   28581 
   28582         - other changes
   28583 
   28584         * WebCoreSupport.subproj/WebImageRenderer.m:
   28585         (-[WebImageRenderer incrementalLoadWithBytes:length:complete:]):
   28586         Put the bug workaround here inside an ifdef so we don't compile it in on Panther.
   28587 
   28588 2003-03-26  Chris Blumenberg  <cblu (a] apple.com>
   28589 
   28590         Use the private _cfBundle method on NSBundle so we only create 1 bundle per plug-in package class.
   28591 
   28592         Reviewed by trey.
   28593 
   28594         * Plugins.subproj/WebBasePluginPackage.h:
   28595         * Plugins.subproj/WebBasePluginPackage.m:
   28596         (-[WebBasePluginPackage initWithPath:]):
   28597         (-[WebBasePluginPackage getPluginInfoFromBundleAndMIMEDictionary:]):
   28598         (-[WebBasePluginPackage dealloc]):
   28599         * Plugins.subproj/WebNetscapePluginPackage.h:
   28600         * Plugins.subproj/WebNetscapePluginPackage.m:
   28601         (-[WebNetscapePluginPackage openResourceFile]):
   28602         (-[WebNetscapePluginPackage closeResourceFile:]):
   28603         (-[WebNetscapePluginPackage getPluginInfoFromPLists]):
   28604         (-[WebNetscapePluginPackage initWithPath:]):
   28605         (-[WebNetscapePluginPackage load]):
   28606         (-[WebNetscapePluginPackage unload]):
   28607         * Plugins.subproj/WebPluginPackage.m:
   28608         (-[WebPluginPackage initWithPath:]):
   28609         (-[WebPluginPackage viewFactory]):
   28610         (-[WebPluginPackage load]):
   28611         (-[WebPluginPackage isLoaded]):
   28612 
   28613 2003-03-26  Ken Kocienda  <kocienda (a] apple.com>
   28614 
   28615         Reviewed by Maciej
   28616 
   28617         Finished conversion to NSMutableURLRequest. HTTP-specific
   28618         mutator methods are now properly placed on an HTTP
   28619         category of NSMutableURLRequest. All client code has
   28620         been updated to use NSMutableURLRequest where appropriate.
   28621 
   28622         * Misc.subproj/WebIconLoader.m:
   28623         (-[WebIconLoader startLoading]):
   28624         * WebCoreSupport.subproj/WebBridge.m:
   28625         (-[WebBridge createWindowWithURL:frameName:]):
   28626         * WebView.subproj/WebBaseResourceHandleDelegate.m:
   28627         (-[WebBaseResourceHandleDelegate resource:willSendRequest:]):
   28628         * WebView.subproj/WebDefaultContextMenuDelegate.m:
   28629         (-[WebDefaultContextMenuDelegate openNewWindowWithURL:]):
   28630         * WebView.subproj/WebFramePrivate.h:
   28631         * WebView.subproj/WebFramePrivate.m:
   28632         (-[WebFrame _addExtraFieldsToRequest:alwaysFromRequest:]):
   28633         * WebView.subproj/WebMainResourceClient.m:
   28634         (-[WebMainResourceClient resource:willSendRequest:]):
   28635 
   28636 2003-03-25  Richard Williamson   <rjw (a] apple.com>
   28637 
   28638         Changed use of plugin to plugIn in our public API
   28639         as instructed by those that must be obeyed.
   28640         
   28641         Reviewed by Trey.
   28642 
   28643         Changed userStyleSheetLocation to take/pass an NSURL.
   28644         
   28645         Reviewed by Chris
   28646         
   28647         * Plugins.subproj/WebNetscapePluginDocumentView.m:
   28648         (-[WebNetscapePluginDocumentView setDataSource:]):
   28649         * Plugins.subproj/WebNullPluginView.h:
   28650         * Plugins.subproj/WebNullPluginView.m:
   28651         (-[WebNullPluginView viewDidMoveToWindow]):
   28652         * Plugins.subproj/WebPluginError.h:
   28653         * Plugins.subproj/WebPluginError.m:
   28654         (-[WebPlugInError plugInPageURL]):
   28655         (-[WebPlugInError plugInName]):
   28656         * Plugins.subproj/WebPluginErrorPrivate.h:
   28657         * WebCoreSupport.subproj/WebBridge.m:
   28658         (-[WebBridge viewForPluginWithURL:attributes:baseURL:MIMEType:]):
   28659         (-[WebBridge viewForJavaAppletWithFrame:attributes:baseURL:]):
   28660         * WebView.subproj/WebDefaultResourceLoadDelegate.m:
   28661         (-[WebDefaultResourceLoadDelegate webView:plugInFailedWithError:dataSource:]):
   28662         * WebView.subproj/WebPreferences.h:
   28663         * WebView.subproj/WebPreferences.m:
   28664         (-[WebPreferences userStyleSheetLocation]):
   28665         (-[WebPreferences setUserStyleSheetLocation:]):
   28666         * WebView.subproj/WebResourceLoadDelegate.h:
   28667         * WebView.subproj/WebViewPrivate.m:
   28668         (-[WebView _updateWebCoreSettingsFromPreferences:]):
   28669 
   28670         * API-Issues.rtf:  notes to self
   28671 
   28672 2003-03-25  Chris Blumenberg  <cblu (a] apple.com>
   28673 
   28674         Fixed: 3135385 - many file types don't work with the QuickTime plugin in Safari
   28675 
   28676         Reviewed by trey.
   28677 
   28678         * Plugins.subproj/WebBasePluginPackage.h:
   28679         * Plugins.subproj/WebBasePluginPackage.m:
   28680         (+[WebBasePluginPackage pluginWithPath:]): tweak
   28681         (-[WebBasePluginPackage pathByResolvingSymlinksAndAliasesInPath:]): moved up from WebNetscapePluginPackage
   28682         (-[WebBasePluginPackage initWithPath:]): retain path, create bundle so subclasses don't have to do this work
   28683         (-[WebBasePluginPackage getPluginInfoFromBundleAndMIMEDictionary:]): was getMIMEInformation from WebPluginPackage
   28684         (-[WebBasePluginPackage dealloc]): release the bundle
   28685         (-[WebBasePluginPackage setMIMEToExtensionsDictionary:]): tweak
   28686         * Plugins.subproj/WebNetscapePluginPackage.h:
   28687         * Plugins.subproj/WebNetscapePluginPackage.m:
   28688         (+[WebNetscapePluginPackage preferredLocalizationName]): new
   28689         (-[WebNetscapePluginPackage openResourceFile]): tweak
   28690         (-[WebNetscapePluginPackage closeResourceFile:]): tweak
   28691         (-[WebNetscapePluginPackage stringForStringListID:andIndex:]): tweak
   28692         (-[WebNetscapePluginPackage getPluginInfoFromResources]): was getMIMEInformation
   28693         (-[WebNetscapePluginPackage pListForPath:createFile:]): new, calls BP_CreatePluginMIMETypesPreferences if createFile==YES
   28694         (-[WebNetscapePluginPackage getPluginInfoFromPLists]): calls getPluginInfoFromBundleAndMIMEDictionary with the MIME dictionary from the user's home dir.
   28695         (-[WebNetscapePluginPackage initWithPath:]): have the superclass do some initialization, call getPluginInfoFromPLists and/or getPluginInfoFromResources
   28696         (-[WebNetscapePluginPackage executableType]): tweak
   28697         (-[WebNetscapePluginPackage load]): get the BP_CreatePluginMIMETypesPreferences symbol
   28698         (-[WebNetscapePluginPackage unload]): tweak
   28699         (-[WebNetscapePluginPackage dealloc]): tweak
   28700         * Plugins.subproj/WebPluginPackage.h:
   28701         * Plugins.subproj/WebPluginPackage.m:
   28702         (-[WebPluginPackage initWithPath:]): have the superclass do some initialization, call getPluginInfoFromBundleAndMIMEDictionary
   28703         (-[WebPluginPackage viewFactory]): tweak
   28704         (-[WebPluginPackage load]): call principalClass
   28705         (-[WebPluginPackage isLoaded]): tweak
   28706         * Plugins.subproj/npapi.h: added declaration for the BP_CreatePluginMIMETypesPreferences function pointer. 
   28707 
   28708 2003-03-25  John Sullivan  <sullivan (a] apple.com>
   28709 
   28710         - WebKit part of fix for 3141794 -- No scroll bar for the 
   28711         "collections" column of the bookmarks window
   28712 
   28713         Reviewed by Darin.
   28714 
   28715         * WebView.subproj/WebDynamicScrollBarsView.h:
   28716         replaced disallowsScrolling boolean ivar with separate booleans for
   28717         disallowHorizontalScrolling and disallowVerticalScrolling
   28718 
   28719         * WebView.subproj/WebDynamicScrollBarsView.m:
   28720         (-[WebDynamicScrollBarsView updateScrollers]):
   28721         take the two disallow booleans into account separately
   28722         (-[WebDynamicScrollBarsView setAllowsHorizontalScrolling:]),
   28723         (-[WebDynamicScrollBarsView allowsHorizontalScrolling]),
   28724         (-[WebDynamicScrollBarsView setAllowsVerticalScrolling:]),
   28725         (-[WebDynamicScrollBarsView allowsVerticalScrolling]):
   28726         new methods, do the obvious
   28727         (-[WebDynamicScrollBarsView setAllowsScrolling:]):
   28728         changed to set both ivars
   28729         (-[WebDynamicScrollBarsView allowsScrolling]):
   28730         changed to return YES if scrolling is allowed in either direction
   28731 
   28732         * WebKit.exp: exported symbol for WebDynamicScrollBarsView class name
   28733 
   28734 2003-03-25  Ken Kocienda  <kocienda (a] apple.com>
   28735 
   28736         Reviewed by Richard
   28737 
   28738         Fixed a bug that could occur in the new immutable/mutable
   28739         request scheme. When opening a javascript window, it was
   28740         possible for a request passed as a method argument to be
   28741         released during the course of a method, particularly
   28742         after that request was passed to willSendRequest:.
   28743         The solution is to ask the data source for its current
   28744         request rather than using the one stored in the method
   28745         argument.
   28746 
   28747         * WebView.subproj/WebMainResourceClient.m:
   28748         (-[WebMainResourceClient startLoading:]):
   28749 
   28750 2003-03-24  Trey Matteson  <trey (a] apple.com>
   28751 
   28752         Pass -seg_addr_table_filename <FILENAME> to ld.  This makes our frameworks in
   28753         SYMROOT actually work for symbol resolution because they will have the correct
   28754         prebinding address.  It also fixes obscure B&I problems with prebinding
   28755         reported by Matt Reda.
   28756 
   28757         Note the reason all this is tricky for our projects is that we have a different
   28758         install location for Jaguar and Panther.  The purpose of this arg is to declare
   28759         at link time our eventual location, which allows the prebinding address to be
   28760         found in /AppleInternal/Developer/seg_addr_table.  We use a funky back-tick
   28761         expression within OTHER_LDFLAGS to get a conditional value depending on the
   28762         build train we are in.
   28763 
   28764         This can all go away once we only build on Panther and don't embed the
   28765         frameworks inside the Safari.app wrapper.
   28766 
   28767         In addition I fixed the OTHER_LDFLAGS settings in our build styles to be
   28768         additive instead of overriding, so we have the args we used for B&I in force
   28769         when building outside of B&I.
   28770 
   28771         Reviewed by Maciej.
   28772 
   28773         * WebKit.pbproj/project.pbxproj:
   28774 
   28775 2003-03-25  Ken Kocienda  <kocienda (a] apple.com>
   28776 
   28777         Reviewed by Darin
   28778 
   28779         Updated to use NSMutableURLRequest where appropriate.
   28780 
   28781         * Plugins.subproj/WebBaseNetscapePluginView.m:
   28782         (-[WebBaseNetscapePluginView requestWithURLCString:]):
   28783         (-[WebBaseNetscapePluginView _postURLNotify:target:len:buf:file:notifyData:allowHeaders:]):
   28784         * WebCoreSupport.subproj/WebSubresourceClient.m:
   28785         (+[WebSubresourceClient startLoadingResource:withURL:referrer:forDataSource:]):
   28786         * WebView.subproj/WebDataSource.h:
   28787         * WebView.subproj/WebDataSource.m:
   28788         (-[WebDataSource initWithRequest:]):
   28789         (-[WebDataSource request]):
   28790         * WebView.subproj/WebDataSourcePrivate.h:
   28791         * WebView.subproj/WebDataSourcePrivate.m:
   28792         (-[WebDataSource _setURL:]):
   28793         * WebView.subproj/WebFrame.m:
   28794         (-[WebFrame loadRequest:]):
   28795         (-[WebFrame reload]):
   28796         * WebView.subproj/WebFramePrivate.m:
   28797         (-[WebFrame _loadItem:fromItem:withLoadType:]):
   28798         (-[WebFrame _loadURL:referrer:loadType:target:triggeringEvent:form:formValues:]):
   28799         (-[WebFrame _postWithURL:referrer:target:data:contentType:triggeringEvent:form:formValues:]):
   28800         (-[WebFrame _reloadAllowingStaleDataWithOverrideEncoding:]):
   28801 
   28802 2003-03-25  Darin Adler  <darin (a] apple.com>
   28803 
   28804         Reviewed by John.
   28805 
   28806         - fixed 3205745 -- WebKit.framework's Localizable.strings file contains high ASCII in the Key definition.
   28807 
   28808         * English.lproj/Localizable.strings: Regenerated with the new version of the
   28809         extract-localizable-strings tool that uses \U syntax instead of "high ASCII".
   28810 
   28811         - changed cursive font back to "Apple Chancery" for now
   28812         
   28813         * WebView.subproj/WebPreferences.m: (+[WebPreferences initialize]): Change to "Apple Chancery".
   28814         * English.lproj/StringsNotToBeLocalized.txt: Update for above change.
   28815 
   28816 2003-03-24  Darin Adler  <darin (a] apple.com>
   28817 
   28818         Reviewed by Dave.
   28819 
   28820         - fixed 3206803 -- REGRESSION: Lucida Handwriting font doesn't work
   28821 
   28822         * WebCoreSupport.subproj/WebTextRendererFactory.m:
   28823         (acceptableChoice): Added. Returns NO if the weight/traits are no good.
   28824         (betterChoice): Added. Returns YES if the new weight/traits are better than the old.
   28825         (-[WebTextRendererFactory fontWithFamily:traits:size:]): Use the new functions to judge which
   28826         font is good enough. Now it will accept an italic font if that's all we have.
   28827 
   28828         - fixed 3206904 -- use "Lucida Handwriting" for "cursive" so it works on systems without Classic
   28829 
   28830         * WebView.subproj/WebPreferences.m: (+[WebPreferences initialize]):
   28831         Change default from "Apple Chancery" to "Lucida Handwriting".
   28832 
   28833         * English.lproj/StringsNotToBeLocalized.txt: Updated for this change.
   28834 
   28835 2003-03-24  Maciej Stachowiak  <mjs (a] apple.com>
   28836 
   28837         Reviewed by Richard.
   28838 
   28839         - made API (actually doc-only) changes needed for 3087535 -
   28840         bugzilla queries come back as downloaded files
   28841 
   28842         * Downloads.subproj/WebDownload.h: Documented that
   28843         download:didReceiveResponse: may be sent more than once.
   28844         * WebView.subproj/WebLocationChangeDelegate.h: Documented that
   28845         locationChangeCommittedForDataSource: may be sent more than once.
   28846         * WebView.subproj/WebPolicyDelegate.h: Documented that
   28847         decideContentPolicyForMIMEType:andRequest:inFrame: may be sent
   28848         more than once.
   28849         * WebView.subproj/WebResourceLoadDelegate.h: Documented that
   28850         resource:didReceiveResponse:fromDataSource: may be sent more than
   28851         once.
   28852 
   28853 2003-03-24  Maciej Stachowiak  <mjs (a] apple.com>
   28854 
   28855         Reviewed by Richard.
   28856 
   28857         - fixed 3083339 - significant top and side margin appended to new windows
   28858 
   28859         Part of the fix involves adding new window operation delegate methods.
   28860         * WebCoreSupport.subproj/WebBridge.m:
   28861         (-[WebBridge setWindowFrame:]): Tweaked code a bit.
   28862         (-[WebBridge windowFrame]): Added. 
   28863         (-[WebBridge setWindowContentRect:]): Added.
   28864         (-[WebBridge windowContentRect]): Added.
   28865         * WebView.subproj/WebDefaultWindowOperationsDelegate.m:
   28866         (-[WebDefaultWindowOperationsDelegate webView:setContentRect:]): Implemented.
   28867         (-[WebDefaultWindowOperationsDelegate webViewContentRect:]): Likewise.
   28868         * WebView.subproj/WebWindowOperationsDelegate.h:
   28869 
   28870 2003-03-24  Chris Blumenberg  <cblu (a] apple.com>
   28871 
   28872         Fixed: 3155489 - Seed: PostScript files display instead of downloading, often as a blank page
   28873         Fixed: 3106251 - quicken file not downloaded, can't save manually
   28874 
   28875         Reviewed by trey.
   28876 
   28877         * WebView.subproj/WebDataSourcePrivate.m:
   28878         (+[WebDataSource _repTypes]): call [WebImageView supportedImageMIMETypes]
   28879         * WebView.subproj/WebFrameViewPrivate.m:
   28880         (+[WebFrameView _viewTypes]): call [WebImageView supportedImageMIMETypes]
   28881         * WebView.subproj/WebImageView.h:
   28882         * WebView.subproj/WebImageView.m:
   28883         (+[WebImageView initialize]): was -initialize (oops)
   28884         (+[WebImageView unsupportedImageMIMETypes]): new, AppKit images that we shouldn't display inline, includes ps and pdf
   28885         (+[WebImageView supportedImageMIMETypes]): new, was in WebViewPrivate
   28886         * WebView.subproj/WebTextView.h:
   28887         * WebView.subproj/WebTextView.m:
   28888         (+[WebTextView unsupportedTextMIMETypes]): renamed, added text/qif (quicken)
   28889         * WebView.subproj/WebView.m:
   28890         (+[WebView canShowMIMEType:]): call [WebTextView unsupportedTextMIMETypes]
   28891         * WebView.subproj/WebViewPrivate.h: removed _supportedImageMIMETypes
   28892         * WebView.subproj/WebViewPrivate.m: removed _supportedImageMIMETypes
   28893 
   28894 2003-03-24  Ken Kocienda  <kocienda (a] apple.com>
   28895 
   28896         Reviewed by hyatt.
   28897 
   28898         Moved closer to target API for NSURLRequest. Merged in
   28899         final names for immutable and mutable versions of this
   28900         class and its HTTP category. The next step will be to
   28901         actually make the split between immutable/mutable
   28902         variants of NSURLRequest.
   28903 
   28904         In WebKit, this amounts to name changes only.
   28905 
   28906         * Misc.subproj/WebIconLoader.m:
   28907         (-[WebIconLoader startLoading]):
   28908         * Plugins.subproj/WebBaseNetscapePluginView.m:
   28909         (-[WebBaseNetscapePluginView _postURLNotify:target:len:buf:file:notifyData:allowHeaders:]):
   28910         * WebCoreSupport.subproj/WebBridge.m:
   28911         (-[WebBridge createWindowWithURL:frameName:]):
   28912         (-[WebBridge incomingReferrer]):
   28913         * WebCoreSupport.subproj/WebSubresourceClient.m:
   28914         (+[WebSubresourceClient startLoadingResource:withURL:referrer:forDataSource:]):
   28915         * WebView.subproj/WebBaseResourceHandleDelegate.m:
   28916         (-[WebBaseResourceHandleDelegate resource:willSendRequest:]):
   28917         * WebView.subproj/WebDataSourcePrivate.m:
   28918         * WebView.subproj/WebDefaultContextMenuDelegate.m:
   28919         (-[WebDefaultContextMenuDelegate openNewWindowWithURL:]):
   28920         * WebView.subproj/WebFrame.m:
   28921         (-[WebFrame reload]):
   28922         * WebView.subproj/WebFramePrivate.m:
   28923         (-[WebFrame _createItem]):
   28924         (-[WebFrame _loadItem:fromItem:withLoadType:]):
   28925         (-[WebFrame _addExtraFieldsToRequest:alwaysFromRequest:]):
   28926         (-[WebFrame _loadURL:referrer:loadType:target:triggeringEvent:form:formValues:]):
   28927         (-[WebFrame _postWithURL:referrer:target:data:contentType:triggeringEvent:form:formValues:]):
   28928         * WebView.subproj/WebMainResourceClient.m:
   28929         (-[WebMainResourceClient resource:willSendRequest:]):
   28930 
   28931 2003-03-22  Darin Adler  <darin (a] apple.com>
   28932 
   28933         Reviewed by John.
   28934 
   28935         - fixed 3203869 -- Monaco 9 looks different in Safari than in TextEdit (uses outline instead of bitmap)
   28936 
   28937         * Misc.subproj/WebKitNSStringExtras.m: (-[NSString _web_widthWithFont:]):
   28938         Pass usingPrinterFont:NO, since this is used exclusively for on-screen text, not printing.
   28939         * Misc.subproj/WebStringTruncator.m: (truncateString): Ditto.
   28940 
   28941         * WebCoreSupport.subproj/WebTextRenderer.h: Add usingPrinterFont boolean field and parameter to init.
   28942         * WebCoreSupport.subproj/WebTextRenderer.m: (-[WebTextRenderer initWithFont:forScreen:]):
   28943         Add usingPrinterFont parameter, and get the screen font if it's NO, also store the boolean
   28944         for later use.
   28945         (-[WebTextRenderer _floatWidthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:withPadding:applyRounding: attemptFontSubstitution:widths:fonts:glyphs:numGlyphs:letterSpacing:wordSpacing:fontFamilies:]):
   28946         Pass the usingPrinterFont parameter through when getting a substitute font.
   28947 
   28948         * WebCoreSupport.subproj/WebTextRendererFactory.h: Add separate caches for screen and printing text
   28949         renderers. Add usingPrinterFont parameter to our rendererWithFont: method (the one inherited from WebCore
   28950         still has no parameter).
   28951         * WebCoreSupport.subproj/WebTextRendererFactory.m:
   28952         (-[WebTextRendererFactory init]): Create both caches.
   28953         (-[WebTextRendererFactory dealloc]): Release both caches.
   28954         (-[WebTextRendererFactory rendererWithFont:]): Call the new rendererWithFont:usingPrinterFont: method,
   28955         passing usingPrinterFonts from the WebCore side. Thus any fonts fetched by WebCore during printing
   28956         are printing fonts, and otherwise they are screen fonts.
   28957         (-[WebTextRendererFactory rendererWithFont:usingPrinterFont:]): Added. Has the code from the old
   28958         rendererWithFont: method, but passes the usingPrinterFont parameter through to the WebTextRenderer
   28959         init method.
   28960         
   28961         * WebView.subproj/WebHTMLView.m:
   28962         (-[WebHTMLView initWithFrame:]): Don't set unused canDragTo and canDragFrom fields.
   28963         (-[WebHTMLView drawRect:]): Call -[WebTextRendererFactory setUsingPrinterFonts:] here if we are printing,
   28964         as indicated by the usingPrinterFonts field. The reason we do this only inside drawRect is so we don't
   28965         affect redraws of other HTML views that are not being printed that might be in "needs display" state when
   28966         printing began. 
   28967         (-[WebHTMLView _setUsingPrinterFonts:]): Added. Calls _setUsingPrinterFonts on all WebHTMLViews inside
   28968         this one, then does the work for this one. Uses the frame hierarchy rather than the view hierarchy, but
   28969         either would work. If printer font state is changing, then sets the WebTextRendererFactory mode, then
   28970         forces a layout and application of styles, but without triggering display.
   28971         (-[WebHTMLView beginDocument]): Do an explicit display so this view does not have to be displayed while
   28972         it is in "use printer fonts" mode. Then call _setUsingPrinterFonts:YES so that drawRect will use printer
   28973         fonts, and also that the WebCore data structures and layout will be updated to reflect printer fonts as
   28974         opposed to screen fonts.
   28975         (-[WebHTMLView endDocument]): Call _setUsingPrinterFonts:NO to restore things to normal after printing.
   28976         * WebView.subproj/WebHTMLViewPrivate.h: Removed unused canDragTo, canDragFrom, and liveAllowsScrolling
   28977         fields. Added usingPrinterFonts field.
   28978 
   28979         * English.lproj/StringsNotToBeLocalized.txt: Updated for recent changes.
   28980 
   28981 2003-03-24  Ken Kocienda  <kocienda (a] apple.com>
   28982 
   28983         Reviewed by Darin
   28984 
   28985         Removed now-obsolete WebResponseCachePolicy enum.
   28986         Once the new cache API is ready, there will be new features
   28987         to replace what this enum provided. Seeing as how this
   28988         enum was largely unused, there is no impact associated with         
   28989         removing it now.
   28990 
   28991         * WebCoreSupport.subproj/WebSubresourceClient.m:
   28992         (+[WebSubresourceClient startLoadingResource:withURL:referrer:forDataSource:]):
   28993 
   28994 2003-03-24  Ken Kocienda  <kocienda (a] apple.com>
   28995 
   28996         Reviewed by John
   28997 
   28998         Cleaned up some missed WebRequest -> NSURLRequest  
   28999         name conversions.
   29000 
   29001         * WebView.subproj/WebFramePrivate.m
   29002 
   29003 2003-03-24  Ken Kocienda  <kocienda (a] apple.com>
   29004 
   29005         Reviewed by John
   29006 
   29007         Changed WebRequest to NSURLRequest. Several other names,        
   29008         like some constants whose names were based on WebRequest,
   29009         changed as well.
   29010 
   29011         * Downloads.subproj/WebDownload.h:
   29012         * Downloads.subproj/WebDownload.m:
   29013         (-[WebDownload initWithRequest:]):
   29014         (-[WebDownload _initWithLoadingResource:request:response:delegate:proxy:]):
   29015         (+[WebDownload _downloadWithLoadingResource:request:response:delegate:proxy:]):
   29016         (-[WebDownload _setRequest:]):
   29017         (-[WebDownload resource:willSendRequest:]):
   29018         * Downloads.subproj/WebDownloadPrivate.h:
   29019         * Misc.subproj/WebIconLoader.m:
   29020         (-[WebIconLoader startLoading]):
   29021         (-[WebIconLoader resource:willSendRequest:]):
   29022         * Plugins.subproj/WebBaseNetscapePluginView.m:
   29023         (-[WebBaseNetscapePluginView requestWithURLCString:]):
   29024         (-[WebBaseNetscapePluginView loadPluginRequest:]):
   29025         (-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:]):
   29026         (-[WebBaseNetscapePluginView getURLNotify:target:notifyData:]):
   29027         (-[WebBaseNetscapePluginView getURL:target:]):
   29028         (-[WebBaseNetscapePluginView _postURLNotify:target:len:buf:file:notifyData:allowHeaders:]):
   29029         (-[WebPluginRequest initWithRequest:frameName:notifyData:]):
   29030         (-[WebPluginRequest request]):
   29031         * Plugins.subproj/WebBaseNetscapePluginViewPrivate.h:
   29032         * Plugins.subproj/WebNetscapePluginEmbeddedView.m:
   29033         (-[WebNetscapePluginEmbeddedView viewDidMoveToWindow]):
   29034         * Plugins.subproj/WebNetscapePluginStream.h:
   29035         * Plugins.subproj/WebNetscapePluginStream.m:
   29036         (-[WebNetscapePluginStream initWithRequest:pluginPointer:notifyData:]):
   29037         * Plugins.subproj/WebPluginController.m:
   29038         (-[WebPluginController showURL:inFrame:]):
   29039         * WebCoreSupport.subproj/WebBridge.m:
   29040         (-[WebBridge createWindowWithURL:frameName:]):
   29041         (-[WebBridge objectLoadedFromCacheWithURL:response:size:]):
   29042         (-[WebBridge isReloading]):
   29043         (-[WebBridge loadEmptyDocumentSynchronously]):
   29044         * WebCoreSupport.subproj/WebSubresourceClient.m:
   29045         (+[WebSubresourceClient startLoadingResource:withURL:referrer:forDataSource:]):
   29046         (-[WebSubresourceClient resource:willSendRequest:]):
   29047         * WebView.subproj/WebBaseResourceHandleDelegate.h:
   29048         * WebView.subproj/WebBaseResourceHandleDelegate.m:
   29049         (-[WebBaseResourceHandleDelegate startLoading:]):
   29050         (-[WebBaseResourceHandleDelegate loadWithRequest:]):
   29051         (-[WebBaseResourceHandleDelegate resource:willSendRequest:]):
   29052         * WebView.subproj/WebDataSource.h:
   29053         * WebView.subproj/WebDataSource.m:
   29054         (-[WebDataSource initWithRequest:]):
   29055         (-[WebDataSource initialRequest]):
   29056         (-[WebDataSource request]):
   29057         * WebView.subproj/WebDataSourcePrivate.h:
   29058         * WebView.subproj/WebDataSourcePrivate.m:
   29059         (-[WebDataSource _setURL:]):
   29060         (-[WebDataSource _setRequest:]):
   29061         (-[WebDataSource _originalRequest]):
   29062         (-[WebDataSource _lastCheckedRequest]):
   29063         (-[WebDataSource _setLastCheckedRequest:]):
   29064         * WebView.subproj/WebDefaultContextMenuDelegate.m:
   29065         (-[WebDefaultContextMenuDelegate webView:contextMenuItemsForElement:defaultMenuItems:]):
   29066         (-[WebDefaultContextMenuDelegate openNewWindowWithURL:]):
   29067         * WebView.subproj/WebDefaultPolicyDelegate.m:
   29068         (-[WebDefaultPolicyDelegate webView:decideNavigationPolicyForAction:andRequest:inFrame:decisionListener:]):
   29069         (-[WebDefaultPolicyDelegate webView:decideNewWindowPolicyForAction:andRequest:newFrameName:decisionListener:]):
   29070         * WebView.subproj/WebDefaultResourceLoadDelegate.m:
   29071         (-[WebDefaultResourceLoadDelegate webView:identifierForInitialRequest:fromDataSource:]):
   29072         (-[WebDefaultResourceLoadDelegate webView:resource:willSendRequest:fromDataSource:]):
   29073         * WebView.subproj/WebDefaultWindowOperationsDelegate.m:
   29074         * WebView.subproj/WebFrame.h:
   29075         * WebView.subproj/WebFrame.m:
   29076         (-[WebFrame loadRequest:]):
   29077         (-[WebFrame reload]):
   29078         * WebView.subproj/WebFramePrivate.h:
   29079         * WebView.subproj/WebFramePrivate.m:
   29080         (-[WebFrame _createItem]):
   29081         (-[WebFrame _loadItem:fromItem:withLoadType:]):
   29082         (-[WebFrame _loadRequest:triggeringAction:loadType:formState:]):
   29083         (-[WebFrame _invalidatePendingPolicyDecisionCallingDefaultAction:]):
   29084         (-[WebFrame _checkNewWindowPolicyForRequest:action:frameName:formState:andCall:withSelector:]):
   29085         (-[WebFrame _continueAfterNewWindowPolicy:]):
   29086         (-[WebFrame _checkNavigationPolicyForRequest:dataSource:formState:andCall:withSelector:]):
   29087         (-[WebFrame _continueAfterNavigationPolicy:]):
   29088         (-[WebFrame _continueFragmentScrollAfterNavigationPolicy:formState:]):
   29089         (-[WebFrame _addExtraFieldsToRequest:alwaysFromRequest:]):
   29090         (-[WebFrame _continueLoadRequestAfterNewWindowPolicy:frameName:formState:]):
   29091         (-[WebFrame _loadURL:referrer:loadType:target:triggeringEvent:form:formValues:]):
   29092         (-[WebFrame _postWithURL:referrer:target:data:contentType:triggeringEvent:form:formValues:]):
   29093         (-[WebFrame _reloadAllowingStaleDataWithOverrideEncoding:]):
   29094         (-[WebFrame _continueLoadRequestAfterNavigationPolicy:formState:]):
   29095         (-[WebFrame _loadRequest:inFrameNamed:]):
   29096         * WebView.subproj/WebFrameView.m:
   29097         (-[WebFrameView concludeDragOperation:]):
   29098         * WebView.subproj/WebImageRepresentation.m:
   29099         * WebView.subproj/WebMainResourceClient.m:
   29100         (-[WebMainResourceClient continueAfterNavigationPolicy:formState:]):
   29101         (-[WebMainResourceClient resource:willSendRequest:]):
   29102         (-[WebMainResourceClient continueAfterContentPolicy:response:]):
   29103         (-[WebMainResourceClient startLoading:]):
   29104         (-[WebResourceDelegateProxy resource:willSendRequest:]):
   29105         * WebView.subproj/WebPolicyDelegate.h:
   29106         * WebView.subproj/WebResourceLoadDelegate.h:
   29107         * WebView.subproj/WebView.m:
   29108         (-[WebView takeStringURLFrom:]):
   29109         * WebView.subproj/WebViewPrivate.h:
   29110         * WebView.subproj/WebViewPrivate.m:
   29111         (-[WebView _downloadURL:toDirectory:]):
   29112         (-[WebView _openNewWindowWithRequest:]):
   29113         * WebView.subproj/WebWindowOperationsDelegate.h:
   29114 
   29115 2003-03-21  Chris Blumenberg  <cblu (a] apple.com>
   29116 
   29117         Fixed: 3081681 - text/calendar should be downloaded instead of displayed
   29118         Fixed: 3177603 - vCards appear in browser, not downloaded
   29119 
   29120         Reviewed by darin.
   29121 
   29122         * WebView.subproj/WebDataSourcePrivate.h:
   29123         * WebView.subproj/WebDataSourcePrivate.m:
   29124         (+[WebDataSource _representationClassForMIMEType:]): was _canShowMIMEType
   29125         * WebView.subproj/WebFrameViewPrivate.h:
   29126         * WebView.subproj/WebFrameViewPrivate.m:
   29127         (+[WebFrameView _viewClassForMIMEType:]): was _canShowMIMEType
   29128         * WebView.subproj/WebTextView.h:
   29129         * WebView.subproj/WebTextView.m:
   29130         (+[WebTextView unshowableMIMETypes]): new, returns text types that shouldn't be shown
   29131         * WebView.subproj/WebView.m:
   29132         (+[WebView canShowMIMEType:]): call unshowableMIMETypes
   29133 
   29134 2003-03-20  Richard Williamson   <rjw (a] apple.com>
   29135 
   29136         Use "Item" consistently in the WebHistory and WebBackForwardList.
   29137         Change createSharedHistoryWithFile: to setSharedHistory:
   29138         Make the various page cache methods per WebBackForwardList instead of global.
   29139         
   29140         Reviewed by gramps.
   29141 
   29142         * History.subproj/WebBackForwardList.h:
   29143         * History.subproj/WebBackForwardList.m:
   29144         (-[WebBackForwardListPrivate dealloc]):
   29145         (-[WebBackForwardList init]):
   29146         (-[WebBackForwardList dealloc]):
   29147         (-[WebBackForwardList goBack]):
   29148         (-[WebBackForwardList goForward]):
   29149         (-[WebBackForwardList goToItem:]):
   29150         (-[WebBackForwardList backItem]):
   29151         (-[WebBackForwardList currentItem]):
   29152         (-[WebBackForwardList forwardItem]):
   29153         (-[WebBackForwardList containsItem:]):
   29154         (-[WebBackForwardList maximumSize]):
   29155         (-[WebBackForwardList setMaximumSize:]):
   29156         (-[WebBackForwardList description]):
   29157         (-[WebBackForwardList clearPageCache]):
   29158         (-[WebBackForwardList setPageCacheSize:]):
   29159         (-[WebBackForwardList pageCacheSize]):
   29160         (-[WebBackForwardList setUsesPageCache:]):
   29161         (-[WebBackForwardList usesPageCache]):
   29162         (-[WebBackForwardList backListCount]):
   29163         (-[WebBackForwardList forwardListCount]):
   29164         (-[WebBackForwardList itemAtIndex:]):
   29165         * History.subproj/WebHistory.h:
   29166         * History.subproj/WebHistory.m:
   29167         (-[_WebCoreHistoryProvider containsItemForURLString:]):
   29168         (+[WebHistory setSharedHistory:]):
   29169         (-[WebHistory addItemForURL:]):
   29170         (-[WebHistory addItem:]):
   29171         (-[WebHistory removeItem:]):
   29172         (-[WebHistory removeItems:]):
   29173         (-[WebHistory removeAllItems]):
   29174         (-[WebHistory addItems:]):
   29175         (-[WebHistory orderedItemsLastVisitedOnDay:]):
   29176         (-[WebHistory containsItemForURLString:]):
   29177         (-[WebHistory itemForURL:]):
   29178         * History.subproj/WebHistoryItem.h:
   29179         * History.subproj/WebHistoryPrivate.h:
   29180         * History.subproj/WebHistoryPrivate.m:
   29181         (-[WebHistoryPrivate insertItem:atDateIndex:]):
   29182         (-[WebHistoryPrivate removeItemForURLString:]):
   29183         (-[WebHistoryPrivate addItem:]):
   29184         (-[WebHistoryPrivate removeItem:]):
   29185         (-[WebHistoryPrivate removeItems:]):
   29186         (-[WebHistoryPrivate removeAllItems]):
   29187         (-[WebHistoryPrivate addItems:]):
   29188         (-[WebHistoryPrivate orderedItemsLastVisitedOnDay:]):
   29189         (-[WebHistoryPrivate containsItemForURLString:]):
   29190         (-[WebHistoryPrivate itemForURL:]):
   29191         (-[WebHistoryPrivate _loadHistoryGuts:]):
   29192         * WebCoreSupport.subproj/WebBridge.m:
   29193         (-[WebBridge goBackOrForward:]):
   29194         * WebKit.exp:
   29195         * WebKit.pbproj/project.pbxproj:
   29196         * WebView.subproj/WebDataSourcePrivate.m:
   29197         (-[WebDataSource _setTitle:]):
   29198         * WebView.subproj/WebFramePrivate.m:
   29199         (-[WebFrame _addBackForwardItemClippedAtTarget:]):
   29200         (-[WebFrame _transitionToCommitted:]):
   29201         (-[WebFrame _canCachePage]):
   29202         (-[WebFrame _purgePageCache]):
   29203         (-[WebFrame _goToItem:withLoadType:]):
   29204         (-[WebFrame _resetBackForwardListToCurrent]):
   29205         * WebView.subproj/WebLocationChangeDelegate.h:
   29206         * WebView.subproj/WebResourceLoadDelegate.h:
   29207         * WebView.subproj/WebView.h:
   29208         * WebView.subproj/WebView.m:
   29209         (-[WebView _commonInitialization:frameName:groupName:]):
   29210         (-[WebView setMaintainsBackForwardList:]):
   29211         (-[WebView goBack]):
   29212         (-[WebView goForward]):
   29213 
   29214 2003-03-20  Chris Blumenberg  <cblu (a] apple.com>
   29215 
   29216         Properly handle file URL directory errors.
   29217 
   29218         Reviewed by trey.
   29219 
   29220         * Misc.subproj/WebIconDatabase.m:
   29221         (-[WebIconDatabase _iconForFileURL:withSize:]): when file URL has no path, return generic file icon
   29222         * WebView.subproj/WebMainResourceClient.m:
   29223         (-[WebMainResourceClient interruptForPolicyChangeError]): set the URL, don't set it to nil!
   29224 
   29225 2003-03-20  Vicki Murley  <vicki (a] apple.com>
   29226 
   29227         don't include WebFoundation.h
   29228 
   29229         Reviewed by cblu.
   29230 
   29231         * Plugins.subproj/WebBaseNetscapePluginStream.m:
   29232         * Plugins.subproj/WebNetscapePluginRepresentation.m:
   29233         * Plugins.subproj/WebNetscapePluginStream.m:
   29234 
   29235 === Safari-68 ===
   29236 
   29237 2003-03-20  Darin Adler  <darin (a] apple.com>
   29238 
   29239         * English.lproj/StringsNotToBeLocalized.txt: Update for recent changes.
   29240 
   29241 2003-03-19  Ed Voas  voas (a] apple.com
   29242 
   29243         Reviewed by Richard.
   29244 
   29245         React to WebView API changes. Redo HIWebView API.
   29246 
   29247         * Carbon.subproj/HIWebView.h:
   29248         * Carbon.subproj/HIWebView.m:
   29249         (if):
   29250         (switch):
   29251         * Carbon.subproj/HIWebViewPriv.h: Removed.
   29252         * WebKit.exp:
   29253         * WebKit.pbproj/project.pbxproj:
   29254 
   29255 2003-03-19  Richard Williamson   <rjw (a] apple.com>
   29256 
   29257         Removed initWithView:* constructors from WebView.
   29258         New designated initializer for WebView is initWithFrame:frameName:groupName:
   29259         
   29260         Reviewed by cblu & ed.
   29261 
   29262         * Carbon.subproj/HIWebView.m:
   29263         * WebView.subproj/WebView.h:
   29264         * WebView.subproj/WebView.m:
   29265         (-[WebView init]):
   29266         (-[WebView initWithFrame:]):
   29267 
   29268 2003-03-19  Richard Williamson   <rjw (a] apple.com>
   29269 
   29270         Rename WebControllerPolicyDelegate*.[hm] to WebPolicyDelegate*.[hm]
   29271         
   29272         Reviewed by trey.
   29273 
   29274         * API-Issues.rtf:
   29275         * Misc.subproj/WebKit.h:
   29276         * WebKit.pbproj/project.pbxproj:
   29277         * WebView.subproj/WebControllerPolicyDelegate.h: Removed.
   29278         * WebView.subproj/WebControllerPolicyDelegate.m: Removed.
   29279         * WebView.subproj/WebControllerPolicyDelegatePrivate.h: Removed.
   29280         * WebView.subproj/WebDataSourcePrivate.m:
   29281         * WebView.subproj/WebDefaultContextMenuDelegate.m:
   29282         * WebView.subproj/WebFramePrivate.h:
   29283         * WebView.subproj/WebFramePrivate.m:
   29284         * WebView.subproj/WebFrameView.h:
   29285         * WebView.subproj/WebHTMLViewPrivate.m:
   29286         * WebView.subproj/WebMainResourceClient.m:
   29287         * WebView.subproj/WebPolicyDelegate.m:
   29288         * WebView.subproj/WebPolicyDelegatePrivate.h:
   29289         * WebView.subproj/WebView.m:
   29290         * WebView.subproj/WebViewPrivate.h:
   29291 
   29292 2003-03-19  Darin Adler  <darin (a] apple.com>
   29293 
   29294         Reviewed by John.
   29295 
   29296         - fixed 3202780 -- REGRESSION: progress bar, stop button, both get stuck in "loading" state (bartsoft.com)
   29297 
   29298         * WebView.subproj/WebDataSource.m: (-[WebDataSource isLoading]):
   29299         Add back the "is this page complete" check, so that subresource loads don't make us
   29300         think we're loading again, once the page is complete. On the other hand, frames
   29301         must still be checked independent of the "is this page complete" flag to avoid
   29302         reintroducing bug 3200611.
   29303 
   29304 2003-03-19  Ed Voas  voas (a] apple.com
   29305 
   29306         Reviewed by Richard.
   29307 
   29308         Got it working in non-compositing mode as well, so in theory it
   29309         can work inside a PowerPlant application as well. It's a bit of what
   29310         I'd consider a hack, but it's pretty straightforward.
   29311 
   29312         * Carbon.subproj/CarbonWindowAdapter.m:
   29313         (-[CarbonWindowAdapter setViewsNeedDisplay:]):
   29314         * Carbon.subproj/HIViewAdapter.h:
   29315         * Carbon.subproj/HIViewAdapter.m:
   29316         (+[HIViewAdapter bindHIViewToNSView:nsView:]):
   29317         (-[HIViewAdapter setNeedsDisplay:]):
   29318         (-[HIViewAdapter setNeedsDisplayInRect:]):
   29319         (SetViewNeedsDisplay):
   29320         * Carbon.subproj/HIWebView.m:
   29321         (if):
   29322 
   29323 2003-03-18  Maciej Stachowiak  <mjs (a] apple.com>
   29324 
   29325         Reviewed by Trey.
   29326 
   29327         - fixed 3127431 - bring the window with the named frame to the front
   29328 
   29329         * WebCoreSupport.subproj/WebBridge.m:
   29330         (-[WebBridge focusWindow]): Tell the window operations delegate to focus.
   29331         (-[WebBridge loadURL:referrer:reload:target:triggeringEvent:form:formValues:]):
   29332         If this navigation is meant for a different frame, focus its window.
   29333         (-[WebBridge postWithURL:referrer:target:data:contentType:triggeringEvent:form:formValues:]):
   29334         Likewise.
   29335 
   29336 2003-03-18  Trey Matteson  <trey (a] apple.com>
   29337 
   29338         3077223 full keyboard UI navigation fails in authentication sheet
   29339 
   29340         Hook up the views in this panel into a useful nextKeyView cycle.
   29341 
   29342         Reviewed by Maciej.
   29343 
   29344         * Panels.subproj/English.lproj/WebAuthenticationPanel.nib:
   29345 
   29346 2003-03-17  Trey Matteson  <trey (a] apple.com>
   29347 
   29348         Support for saving passwords on forms-based logins.  Biggest change is that
   29349         the willSubmitForm: message is async to allow a sheet to be presented.
   29350 
   29351         Also fixed @interface.*{ so prepare-change-log can swallow WebFramePrivate.m.
   29352 
   29353         Reviewed by Maciej.
   29354 
   29355         * WebView.subproj/WebControllerPolicyDelegate.m:
   29356         (-[WebPolicyDecisionListener continue]):  The decision listener also
   29357         implements WebFormSubmissionListener, to share some other impl.
   29358         * WebView.subproj/WebControllerPolicyDelegatePrivate.h:
   29359         * WebView.subproj/WebFormDelegate.h:
   29360         * WebView.subproj/WebFormDelegate.m:
   29361         (-[WebFormDelegate frame:willSubmitForm:withValues:submissionListener:]):
   29362         Take listener param for async API.
   29363         * WebView.subproj/WebFramePrivate.m:
   29364         (-[WebFrame _loadURL:referrer:loadType:target:triggeringEvent:form:formValues:]):
   29365         Latent bug.  Don't call willSubmitForm if no values are being submitted.
   29366         (-[WebFrame _postWithURL:referrer:target:data:contentType:triggeringEvent:form:formValues:]):
   29367         Latent bug.  Don't call willSubmitForm if no values are being submitted.
   29368         (-[WebFrame _continueAfterWillSubmitForm:]):
   29369         Continuation code for after FormDelegate is done with willSubmitForm.
   29370         (-[WebFrame _continueLoadRequestAfterNavigationPolicy:formState:]):
   29371         Pass new listener arg to willSubmitForm.
   29372         * WebView.subproj/WebHTMLRepresentation.h:
   29373         * WebView.subproj/WebHTMLRepresentation.m:
   29374         Nuke deadwood formIsLoginForm.
   29375         (-[WebHTMLRepresentation elementIsPassword:]):  Just pass through glue
   29376         over the bridge.
   29377 
   29378 2003-03-18  Richard Williamson   <rjw (a] apple.com>
   29379 
   29380         Another rename WebController*.[hm] to WebView*.[hm]
   29381         
   29382         Reviewed by darin.
   29383 
   29384         * Carbon.subproj/HIWebView.h:
   29385         * Misc.subproj/WebKit.h:
   29386         * Misc.subproj/WebNSPasteboardExtras.m:
   29387         * Panels.subproj/WebStandardPanelsPrivate.h:
   29388         * Plugins.subproj/WebBaseNetscapePluginView.m:
   29389         * Plugins.subproj/WebNetscapePluginDocumentView.m:
   29390         * Plugins.subproj/WebNetscapePluginEmbeddedView.m:
   29391         * Plugins.subproj/WebNetscapePluginStream.m:
   29392         * Plugins.subproj/WebNullPluginView.m:
   29393         * Plugins.subproj/WebPluginController.m:
   29394         * WebCoreSupport.subproj/WebBridge.m:
   29395         * WebCoreSupport.subproj/WebSubresourceClient.m:
   29396         * WebKit.pbproj/project.pbxproj:
   29397         * WebView.subproj/WebBaseResourceHandleDelegate.m:
   29398         * WebView.subproj/WebController.h: Removed.
   29399         * WebView.subproj/WebController.m: Removed.
   29400         * WebView.subproj/WebControllerPrivate.h: Removed.
   29401         * WebView.subproj/WebControllerPrivate.m: Removed.
   29402         * WebView.subproj/WebDataSource.m:
   29403         * WebView.subproj/WebDataSourcePrivate.m:
   29404         * WebView.subproj/WebDefaultContextMenuDelegate.m:
   29405         * WebView.subproj/WebDefaultPolicyDelegate.m:
   29406         * WebView.subproj/WebDefaultResourceLoadDelegate.m:
   29407         * WebView.subproj/WebDefaultWindowOperationsDelegate.m:
   29408         * WebView.subproj/WebFrame.m:
   29409         * WebView.subproj/WebFramePrivate.m:
   29410         * WebView.subproj/WebFrameView.m:
   29411         * WebView.subproj/WebFrameViewPrivate.m:
   29412         * WebView.subproj/WebHTMLView.m:
   29413         * WebView.subproj/WebHTMLViewPrivate.m:
   29414         * WebView.subproj/WebImageView.m:
   29415         * WebView.subproj/WebMainResourceClient.m:
   29416         * WebView.subproj/WebTextView.m:
   29417         * WebView.subproj/WebView.h:
   29418         * WebView.subproj/WebView.m:
   29419         * WebView.subproj/WebViewPrivate.h:
   29420         * WebView.subproj/WebViewPrivate.m:
   29421 
   29422 2003-03-18  Richard Williamson   <rjw (a] apple.com>
   29423 
   29424         Renamed WebView*.[hm] to WebFrameView*.[hm]
   29425         
   29426         * Misc.subproj/WebKit.h:
   29427         * Misc.subproj/WebNSViewExtras.m:
   29428         * Panels.subproj/WebStandardPanels.m:
   29429         * Plugins.subproj/WebBaseNetscapePluginView.m:
   29430         * Plugins.subproj/WebNetscapePluginDocumentView.m:
   29431         * Plugins.subproj/WebNetscapePluginEmbeddedView.m:
   29432         * Plugins.subproj/WebNetscapePluginRepresentation.m:
   29433         * Plugins.subproj/WebNullPluginView.m:
   29434         * Plugins.subproj/WebPluginController.m:
   29435         * Plugins.subproj/WebPluginDatabase.m:
   29436         * WebCoreSupport.subproj/WebBridge.m:
   29437         * WebKit.pbproj/project.pbxproj:
   29438         * WebView.subproj/WebController.m:
   29439         * WebView.subproj/WebControllerPrivate.m:
   29440         * WebView.subproj/WebDataSourcePrivate.m:
   29441         * WebView.subproj/WebDebugDOMNode.m:
   29442         * WebView.subproj/WebDefaultContextMenuDelegate.m:
   29443         * WebView.subproj/WebFrame.m:
   29444         * WebView.subproj/WebFramePrivate.m:
   29445         * WebView.subproj/WebFrameView.m:
   29446         * WebView.subproj/WebFrameViewPrivate.h:
   29447         * WebView.subproj/WebFrameViewPrivate.m:
   29448         * WebView.subproj/WebHTMLView.m:
   29449         * WebView.subproj/WebHTMLViewPrivate.m:
   29450         * WebView.subproj/WebImageView.m:
   29451         * WebView.subproj/WebMainResourceClient.m:
   29452         * WebView.subproj/WebRenderNode.m:
   29453         * WebView.subproj/WebTextView.m:
   29454         * WebView.subproj/WebView.h: Removed.
   29455         * WebView.subproj/WebView.m: Removed.
   29456         * WebView.subproj/WebViewPrivate.h: Removed.
   29457         * WebView.subproj/WebViewPrivate.m: Removed.
   29458 
   29459 2003-03-18  Richard Williamson   <rjw (a] apple.com>
   29460 
   29461         Stage 2 of WebController to WebView renaming.
   29462         
   29463         Reviewed by hyatt.
   29464 
   29465         * API-Issues.rtf:
   29466         * Carbon.subproj/HIWebView.h:
   29467         * Carbon.subproj/HIWebView.m:
   29468         * Misc.subproj/WebNSPasteboardExtras.m:
   29469         (-[NSPasteboard _web_bestURL]):
   29470         * Panels.subproj/WebStandardPanels.m:
   29471         (-[WebStandardPanels _didStartLoadingURL:inController:]):
   29472         (-[WebStandardPanels _didStopLoadingURL:inController:]):
   29473         (-[WebStandardPanels frontmostWindowLoadingURL:]):
   29474         * Panels.subproj/WebStandardPanelsPrivate.h:
   29475         * Plugins.subproj/WebBaseNetscapePluginView.h:
   29476         * Plugins.subproj/WebBaseNetscapePluginView.m:
   29477         (-[WebBaseNetscapePluginView controller]):
   29478         (-[WebBaseNetscapePluginView loadPluginRequest:]):
   29479         * Plugins.subproj/WebNetscapePluginDocumentView.m:
   29480         (-[WebNetscapePluginDocumentView setDataSource:]):
   29481         * Plugins.subproj/WebNetscapePluginRepresentation.m:
   29482         (-[WebNetscapePluginRepresentation isPluginViewStarted]):
   29483         (-[WebNetscapePluginRepresentation receivedData:withDataSource:]):
   29484         * Plugins.subproj/WebNullPluginView.m:
   29485         (-[WebNullPluginView viewDidMoveToWindow]):
   29486         * Plugins.subproj/WebPluginController.m:
   29487         (-[WebPluginController showStatus:]):
   29488         * WebCoreSupport.subproj/WebBridge.m:
   29489         (-[WebBridge mainFrame]):
   29490         (-[WebBridge createWindowWithURL:frameName:]):
   29491         (-[WebBridge showWindow]):
   29492         (-[WebBridge areToolbarsVisible]):
   29493         (-[WebBridge setToolbarsVisible:]):
   29494         (-[WebBridge areScrollbarsVisible]):
   29495         (-[WebBridge setScrollbarsVisible:]):
   29496         (-[WebBridge isStatusBarVisible]):
   29497         (-[WebBridge setStatusBarVisible:]):
   29498         (-[WebBridge setWindowFrame:]):
   29499         (-[WebBridge window]):
   29500         (-[WebBridge runJavaScriptAlertPanelWithMessage:]):
   29501         (-[WebBridge runJavaScriptConfirmPanelWithMessage:]):
   29502         (-[WebBridge runJavaScriptTextInputPanelWithPrompt:defaultText:returningText:]):
   29503         (-[WebBridge runOpenPanelForFileButtonWithResultListener:]):
   29504         (-[WebBridge setStatusText:]):
   29505         (-[WebBridge objectLoadedFromCacheWithURL:response:size:]):
   29506         (-[WebBridge setWebFrame:]):
   29507         (-[WebBridge createChildFrameNamed:withURL:renderPart:allowsScrolling:marginWidth:marginHeight:]):
   29508         (-[WebBridge userAgentForURL:]):
   29509         (-[WebBridge nextKeyViewOutsideWebFrameViews]):
   29510         (-[WebBridge previousKeyViewOutsideWebFrameViews]):
   29511         (-[WebBridge defersLoading]):
   29512         (-[WebBridge setDefersLoading:]):
   29513         (-[WebBridge setNeedsReapplyStyles]):
   29514         (-[WebBridge setNeedsLayout]):
   29515         (-[WebBridge pluginViewWithPackage:attributes:baseURL:]):
   29516         (-[WebBridge handleMouseDragged:]):
   29517         (-[WebBridge mayStartDragWithMouseDragged:]):
   29518         (-[WebBridge historyLength]):
   29519         (-[WebBridge goBackOrForward:]):
   29520         (formDelegate):
   29521         * WebCoreSupport.subproj/WebSubresourceClient.m:
   29522         (+[WebSubresourceClient startLoadingResource:withURL:referrer:forDataSource:]):
   29523         * WebKit.exp:
   29524         * WebView.subproj/WebBaseResourceHandleDelegate.h:
   29525         * WebView.subproj/WebBaseResourceHandleDelegate.m:
   29526         (-[WebBaseResourceHandleDelegate resource:willSendRequest:]):
   29527         (-[WebBaseResourceHandleDelegate resource:didReceiveResponse:]):
   29528         (-[WebBaseResourceHandleDelegate resource:didReceiveData:]):
   29529         (-[WebBaseResourceHandleDelegate resourceDidFinishLoading:]):
   29530         (-[WebBaseResourceHandleDelegate resource:didFailLoadingWithError:]):
   29531         (-[WebBaseResourceHandleDelegate cancelWithError:]):
   29532         * WebView.subproj/WebContextMenuDelegate.h:
   29533         * WebView.subproj/WebController.h:
   29534         * WebView.subproj/WebController.m:
   29535         (-[WebView _commonInitialization:frameName:groupName:]):
   29536         (-[WebView initWithFrame:]):
   29537         (-[WebView supportsTextEncoding]):
   29538         (-[WebView userAgentForURL:]):
   29539         * WebView.subproj/WebControllerPolicyDelegate.h:
   29540         * WebView.subproj/WebControllerPrivate.h:
   29541         * WebView.subproj/WebControllerPrivate.m:
   29542         (-[WebViewPrivate _clearControllerReferences:]):
   29543         (+[WebView canShowFile:]):
   29544         (+[WebView suggestedFileExtensionForMIMEType:]):
   29545         (-[WebView _createFrameNamed:inParent:allowsScrolling:]):
   29546         (-[WebView _findFrameNamed:]):
   29547         (-[WebView _openNewWindowWithRequest:]):
   29548         (-[WebView _menuForElement:]):
   29549         (-[WebView _mouseDidMoveOverElement:modifierFlags:]):
   29550         (-[WebView _frameForView:fromFrame:]):
   29551         * WebView.subproj/WebControllerSets.h:
   29552         * WebView.subproj/WebControllerSets.m:
   29553         (+[WebControllerSets addController:toSetNamed:]):
   29554         (+[WebControllerSets removeController:fromSetNamed:]):
   29555         * WebView.subproj/WebDataSource.h:
   29556         * WebView.subproj/WebDataSourcePrivate.h:
   29557         * WebView.subproj/WebDataSourcePrivate.m:
   29558         (-[WebDataSource _controller]):
   29559         (-[WebDataSource _setController:]):
   29560         (-[WebDataSource _startLoading:]):
   29561         (-[WebDataSource _setTitle:]):
   29562         (-[WebDataSource _setRequest:]):
   29563         (-[WebDataSource _layoutChildren]):
   29564         (+[WebDataSource _repTypes]):
   29565         (-[WebDataSource _receivedData:]):
   29566         (-[WebDataSource _updateIconDatabaseWithURL:]):
   29567         * WebView.subproj/WebDefaultContextMenuDelegate.m:
   29568         (-[WebDefaultContextMenuDelegate webView:contextMenuItemsForElement:defaultMenuItems:]):
   29569         (-[WebDefaultContextMenuDelegate openNewWindowWithURL:]):
   29570         (-[WebDefaultContextMenuDelegate downloadURL:]):
   29571         * WebView.subproj/WebDefaultLocationChangeDelegate.m:
   29572         (-[WebDefaultLocationChangeDelegate webView:locationChangeStartedForDataSource:]):
   29573         (-[WebDefaultLocationChangeDelegate webView:serverRedirectedForDataSource:]):
   29574         (-[WebDefaultLocationChangeDelegate webView:locationChangeCommittedForDataSource:]):
   29575         (-[WebDefaultLocationChangeDelegate webView:receivedPageTitle:forDataSource:]):
   29576         (-[WebDefaultLocationChangeDelegate webView:receivedPageIcon:forDataSource:]):
   29577         (-[WebDefaultLocationChangeDelegate webView:locationChangeDone:forDataSource:]):
   29578         (-[WebDefaultLocationChangeDelegate webView:willCloseLocationForDataSource:]):
   29579         (-[WebDefaultLocationChangeDelegate webView:locationChangedWithinPageForDataSource:]):
   29580         (-[WebDefaultLocationChangeDelegate webView:clientWillRedirectTo:delay:fireDate:forFrame:]):
   29581         (-[WebDefaultLocationChangeDelegate webView:clientRedirectCancelledForFrame:]):
   29582         * WebView.subproj/WebDefaultPolicyDelegate.m:
   29583         (-[WebDefaultPolicyDelegate webView:unableToImplementPolicyWithError:inFrame:]):
   29584         (-[WebDefaultPolicyDelegate webView:decideNavigationPolicyForAction:andRequest:inFrame:decisionListener:]):
   29585         (-[WebDefaultPolicyDelegate webView:decideNewWindowPolicyForAction:andRequest:newFrameName:decisionListener:]):
   29586         * WebView.subproj/WebDefaultResourceLoadDelegate.m:
   29587         (-[WebDefaultResourceLoadDelegate webView:identifierForInitialRequest:fromDataSource:]):
   29588         (-[WebDefaultResourceLoadDelegate webView:resource:willSendRequest:fromDataSource:]):
   29589         (-[WebDefaultResourceLoadDelegate webView:resource:didReceiveResponse:fromDataSource:]):
   29590         (-[WebDefaultResourceLoadDelegate webView:resource:didReceiveContentLength:fromDataSource:]):
   29591         (-[WebDefaultResourceLoadDelegate webView:resource:didFinishLoadingFromDataSource:]):
   29592         (-[WebDefaultResourceLoadDelegate webView:resource:didFailLoadingWithError:fromDataSource:]):
   29593         (-[WebDefaultResourceLoadDelegate webView:pluginFailedWithError:dataSource:]):
   29594         * WebView.subproj/WebDefaultWindowOperationsDelegate.m:
   29595         (-[WebDefaultWindowOperationsDelegate webView:runJavaScriptConfirmPanelWithMessage:]):
   29596         (-[WebDefaultWindowOperationsDelegate webView:runJavaScriptTextInputPanelWithPrompt:defaultText:]):
   29597         (-[WebDefaultWindowOperationsDelegate webView:runOpenPanelForFileButtonWithResultListener:]):
   29598         * WebView.subproj/WebFrame.h:
   29599         * WebView.subproj/WebFrame.m:
   29600         (-[WebFrame init]):
   29601         (-[WebFrame initWithName:webFrameView:webView:]):
   29602         (-[WebFrame frameView]):
   29603         (-[WebFrame webView]):
   29604         (-[WebFrame findFrameNamed:]):
   29605         (+[WebFrame registerViewClass:representationClass:forMIMEType:]):
   29606         * WebView.subproj/WebFramePrivate.h:
   29607         * WebView.subproj/WebFramePrivate.m:
   29608         (if):
   29609         (switch):
   29610         * WebView.subproj/WebHTMLView.h:
   29611         * WebView.subproj/WebHTMLViewPrivate.h:
   29612         * WebView.subproj/WebHTMLViewPrivate.m:
   29613         (-[WebHTMLView _controller]):
   29614         * WebView.subproj/WebImageView.m:
   29615         (-[WebImageView controller]):
   29616         (-[WebImageView menuForEvent:]):
   29617         * WebView.subproj/WebLocationChangeDelegate.h:
   29618         * WebView.subproj/WebMainResourceClient.m:
   29619         (-[WebMainResourceClient continueAfterContentPolicy:response:]):
   29620         (-[WebMainResourceClient checkContentPolicyForResponse:]):
   29621         * WebView.subproj/WebResourceLoadDelegate.h:
   29622         * WebView.subproj/WebTextView.m:
   29623         (-[WebTextView menuForEvent:]):
   29624         * WebView.subproj/WebView.h:
   29625         * WebView.subproj/WebView.m:
   29626         (-[WebFrameView setAllowsScrolling:]):
   29627         (-[WebFrameView allowsScrolling]):
   29628         (-[WebFrameView scrollView]):
   29629         (-[WebFrameView documentView]):
   29630         (-[WebFrameView drawRect:]):
   29631         (-[WebFrameView setFrameSize:]):
   29632         * WebView.subproj/WebViewPrivate.h:
   29633         * WebView.subproj/WebViewPrivate.m:
   29634         (-[WebFrameView _controller]):
   29635         (-[WebFrameView _setDocumentView:]):
   29636         (-[WebFrameView _setController:]):
   29637         (-[WebFrameView _contentView]):
   29638         (-[WebFrameView _verticalKeyboardScrollAmount]):
   29639         (-[WebFrameView _horizontalKeyboardScrollAmount]):
   29640         (-[WebFrameView _scrollToBottomLeft]):
   29641         (+[WebFrameView _viewTypes]):
   29642         * WebView.subproj/WebWindowOperationsDelegate.h:
   29643 
   29644 2003-03-18  Darin Adler  <darin (a] apple.com>
   29645 
   29646         Reviewed by Richard.
   29647 
   29648         - fixed 3187143 -- when a font-family has many variants, Safari chooses the wrong one
   29649 
   29650         * WebCoreSupport.subproj/WebTextRendererFactory.m:
   29651         (-[WebTextRendererFactory fontWithFamily:traits:size:]):
   29652         Changed the algorithm here in two ways. 1) Pick the family member with matching traits that has
   29653         a weight closest to 5, the standard weight; the old code picked the first family member with
   29654         matching traits. 2) Match traits based on a mask of which traits are the important ones. The old
   29655         code matched traits based on a rule of "if the trait bit is 1 it matters, otherwise don't care".
   29656 
   29657 2003-03-18  Darin Adler  <darin (a] apple.com>
   29658 
   29659         Reviewed by Richard.
   29660 
   29661         - fixed 3194756 -- REGRESSION: Geneva bold yields Geneva plain, used to yield Helvetica bold (apple.com)
   29662 
   29663         * WebCoreSupport.subproj/WebTextRendererFactory.m:
   29664         (-[WebTextRendererFactory fontWithFamily:traits:size:]):
   29665         Remove the first call to NSFontManager before we do our searching algorithm.
   29666         We always need to do the searching, because NSFontManager uses a different set of rules.
   29667 
   29668 2003-03-17  Chris Blumenberg  <cblu (a] apple.com>
   29669 
   29670         Fixed: 3200647 - File I/O related download errors just says "error"
   29671         Reviewed by darin.
   29672 
   29673         * Downloads.subproj/WebDownload.m:
   29674         (+[WebDownloadPrivate initialize]): call _registerWebKitErrors
   29675         * English.lproj/Localizable.strings:
   29676         * Misc.subproj/WebKitErrors.h: cleaned-up, removed unused errors
   29677         * Misc.subproj/WebKitErrors.m:
   29678         (+[WebError _registerWebKitErrors]):
   29679         (registerErrors):
   29680         * WebKit.pbproj/project.pbxproj:
   29681         * WebView.subproj/WebView.m:
   29682         (+[WebFrameView initialize]): call _registerWebKitErrors
   29683 
   29684 2003-03-17  Darin Adler  <darin (a] apple.com>
   29685 
   29686         Reviewed by Chris and Richard.
   29687 
   29688         - fixed 3200611 -- Progress indicator in tabs not shown for subframe loads
   29689 
   29690         * WebView.subproj/WebDataSource.m: (-[WebDataSource isLoading]):
   29691         Remove the early out for when we're in the WebFrameStateComplete state.
   29692         The top frame being complete does not really tell us anything about whether subframes
   29693         are complete, especially since they can have their locations changed without affecting
   29694         the top level frame at all.
   29695 
   29696         * English.lproj/StringsNotToBeLocalized.txt: Updated for recent changes.
   29697 
   29698 2003-03-17  Chris Blumenberg  <cblu (a] apple.com>
   29699 
   29700         Made data categories use the "_web_" prefix.
   29701 
   29702         Reviewed by darin.
   29703 
   29704         * Plugins.subproj/WebBaseNetscapePluginView.m:
   29705         (-[WebBaseNetscapePluginView _postURLNotify:target:len:buf:file:notifyData:allowHeaders:]):
   29706         (-[NSData _web_startsWithBlankLine]):
   29707         (-[NSData _web_locationAfterFirstBlankLine]):
   29708 
   29709 2003-03-17  Chris Blumenberg  <cblu (a] apple.com>
   29710 
   29711         Fixed: 3199105 - Accept carbon-style file URLs from plug-in POST requests
   29712         Fixed: 3148767 - POST (aka Flash Remoting) doesn't work from Flash
   29713 
   29714         Reviewed by kocienda.
   29715 
   29716         * Plugins.subproj/WebBaseNetscapePluginView.m:
   29717         (-[WebBaseNetscapePluginView _postURLNotify:target:len:buf:file:notifyData:allowHeaders:]): parse headers, handle carbon POSIX paths
   29718         (-[WebBaseNetscapePluginView postURLNotify:target:len:buf:file:notifyData:]): call _postURLNotify
   29719         (-[WebBaseNetscapePluginView postURL:target:len:buf:file:]): call _postURLNotify
   29720         (-[NSData startsWithBlankLine]): new
   29721         (-[NSData locationAfterFirstBlankLine]): new
   29722 
   29723 2003-03-17  Maciej Stachowiak  <mjs (a] apple.com>
   29724 
   29725         Reviewed by Darin.
   29726 
   29727         - fixed 3200259 - REGRESSION: Clicking on Flash links at homestarrunner.com creates blank windows
   29728 
   29729         * Plugins.subproj/WebBaseNetscapePluginView.m:
   29730         (-[WebBaseNetscapePluginView loadPluginRequest:]): Don't always
   29731         make the window, only do it if the frame doesn't already
   29732         exist. Duh.
   29733 
   29734 2003-03-17  Darin Adler  <darin (a] apple.com>
   29735 
   29736         Reviewed by Trey and Maciej.
   29737 
   29738         - fixed 3199154 -- REGRESSION: world leaks on any page load test
   29739 
   29740         * WebView.subproj/WebController.m: (-[WebController initWithView:frameName:groupName:]):
   29741         Call through to initWithFrame, the designated initializer, not init. Calling [super init] results
   29742         in calling our initWithFrame method, resulting in two calls to the _commonInitialization method.
   29743 
   29744 2003-03-17  Maciej Stachowiak  <mjs (a] apple.com>
   29745 
   29746         Reviewed by Trey.
   29747 
   29748         Adjusted for WebFoundation API changes.
   29749         * Panels.subproj/WebAuthenticationPanel.m:
   29750         (-[WebAuthenticationPanel setUpForRequest:]):
   29751 
   29752 2003-03-17  Darin Adler  <darin (a] apple.com>
   29753 
   29754         * English.lproj/StringsNotToBeLocalized.txt: Update for recent changes.
   29755 
   29756 2003-03-17  Chris Blumenberg  <cblu (a] apple.com>
   29757 
   29758         Fixed: 3199951 - Standalone plug-in content that is cancelled doesn't restart when switching tabs
   29759 
   29760         Instead of creating and managing resourceData in WebMainResourceClient then passing the ownership to WebDataSource, just manage it in WebDataSource. We had the prior behavior because we didn't buffer downloads. Now, we always buffer. The fix for the bug 
   29761 
   29762 
   29763 
   29764 
   29765 
   29766 
   29767 is to retain the incomplete data even though the load ends in error.
   29768 
   29769         Reviewed by darin.
   29770 
   29771         * WebView.subproj/WebDataSource.h: updated headerdoc for the data method
   29772         * WebView.subproj/WebDataSource.m:
   29773         (-[WebDataSource data]): just return resourceData
   29774         * WebView.subproj/WebDataSourcePrivate.h:
   29775         * WebView.subproj/WebDataSourcePrivate.m:
   29776         (-[WebDataSource _receivedData:]): create resourceData if necessary, append data to it.
   29777         * WebView.subproj/WebMainResourceClient.h:
   29778         * WebView.subproj/WebMainResourceClient.m:
   29779         (-[WebMainResourceClient initWithDataSource:]): don't work with resourceData
   29780         (-[WebMainResourceClient dealloc]): don't work with resourceData
   29781         (-[WebMainResourceClient resource:didReceiveData:]): don't work with resourceData
   29782         (-[WebMainResourceClient resourceDidFinishLoading:]): don't work with resourceData
   29783 
   29784 2003-03-16  Trey Matteson  <trey (a] apple.com>
   29785 
   29786         3198135 - need to fix our projects so SYMROOT is not stripped
   29787 
   29788         Tweaked stripping options:  B&I build does not COPY_PHASE_STRIP.
   29789         Deployment build still does.
   29790         We strip manually as part of the install that we do ourselves.
   29791 
   29792         Reviewed by Maciej.
   29793 
   29794         * WebKit.pbproj/project.pbxproj:
   29795 
   29796 2003-03-14  Chris Blumenberg  <cblu (a] apple.com>
   29797 
   29798         Backed out changes to WebBaseNetscapePluginView. Unintentional commit.
   29799 
   29800         * Plugins.subproj/WebBaseNetscapePluginView.m:
   29801         (-[WebBaseNetscapePluginView postURLNotify:target:len:buf:file:notifyData:]):
   29802         (-[WebBaseNetscapePluginView postURL:target:len:buf:file:]):
   29803 
   29804 2003-03-14  Chris Blumenberg  <cblu (a] apple.com>
   29805 
   29806         Fixed: 3198961 - REGRESSION: Stopping load of plug-in content is not reflected in UI
   29807 
   29808         Reviewed by mjs.
   29809 
   29810         * WebView.subproj/WebMainResourceClient.m:
   29811         (-[WebMainResourceClient cancelWithError:]): call receivedError so [dataSource _receivedError:error complete:YES] is called
   29812 
   29813 2003-03-14  Maciej Stachowiak  <mjs (a] apple.com>
   29814 
   29815         Reviewed by Don.
   29816 
   29817         - revert premature controller --> webView renaming, it's causing
   29818         problems with window opening and such.
   29819         * WebView.subproj/WebDefaultWindowOperationsDelegate.m:
   29820 
   29821 2003-03-14  Chris Blumenberg  <cblu (a] apple.com>
   29822 
   29823         Fixed: 3197872 - Standalone plug-in content isn't restarted when switching tabs
   29824         Fixed: 3189675 - assertion in plug-in code fails (nil window) with .swf page displaying standalone in a tab
   29825 
   29826         We start plug-ins when they are added to the window and stop them when they are removed. To restart a plug-in, the data stream must be redelivered. This works in the embedded plug-in case, but in the standalone plug-in case, the stream is delivered by th
   29827 
   29828 
   29829 
   29830 
   29831 
   29832 
   29833 e machinery in WebKit. The stream is only delivered once. This fix addresses that.
   29834 
   29835         Reviewed by trey.
   29836 
   29837         * Plugins.subproj/WebBaseNetscapePluginStream.m:
   29838         (-[WebBaseNetscapePluginStream setResponse:]): reset the offset ivar
   29839         (-[WebBaseNetscapePluginStream finishedLoadingWithData:]): If we create a file for the plug-in, handle the case where the file is already created.
   29840         * Plugins.subproj/WebBaseNetscapePluginView.h:
   29841         * Plugins.subproj/WebBaseNetscapePluginView.m:
   29842         (-[WebBaseNetscapePluginView isStarted]): added so the stream knows the state of the view
   29843         * Plugins.subproj/WebNetscapePluginDocumentView.m:
   29844         (-[WebNetscapePluginDocumentView initWithFrame:]): tweak
   29845         (-[WebNetscapePluginDocumentView viewDidMoveToWindow]): call redeliverStream if we are added back to the window
   29846         (-[WebNetscapePluginDocumentView setDataSource:]): only start the plug-in if we are in a window, don't assert
   29847         * Plugins.subproj/WebNetscapePluginRepresentation.h:
   29848         * Plugins.subproj/WebNetscapePluginRepresentation.m:
   29849         (-[WebNetscapePluginRepresentation dealloc]): release the retained data source and error
   29850         (-[WebNetscapePluginRepresentation setDataSource:]): retain the data source
   29851         (-[WebNetscapePluginRepresentation isPluginViewStarted]): new 
   29852         (-[WebNetscapePluginRepresentation receivedData:withDataSource:]): only do work if isPluginViewStarted
   29853         (-[WebNetscapePluginRepresentation receivedError:withDataSource:]): retain the error, only do work if isPluginViewStarted
   29854         (-[WebNetscapePluginRepresentation finishedLoadingWithDataSource:]): only do work if isPluginViewStarted
   29855         (-[WebNetscapePluginRepresentation redeliverStream]): call receivedData:: with all the received data up to this point. Call receivedError:: or finishedLoadingWithDataSource: if the load is already complete.
   29856 
   29857 2003-03-13  Maciej Stachowiak  <mjs (a] apple.com>
   29858 
   29859         Reviewed by Trey.
   29860 
   29861         - fixed 3188209 - REGRESSION: onmouseup handlers not running for most form elements
   29862 
   29863         * WebCoreSupport.subproj/WebFileButton.m:
   29864         (-[WebFileButton chooseButtonPressed:]): Send appropriate NSNotification. 
   29865         * WebView.subproj/WebHTMLViewPrivate.m:
   29866         (-[WebNSTextView mouseDown:]): Call fieldEditorDidMouseDown: on
   29867         delegate, if implemented, after calling super.
   29868 
   29869 2003-03-13  Richard Williamson   <rjw (a] apple.com>
   29870 
   29871         First stage of the WebController -> WebView, WebView -> WebFrameView.
   29872         This change does the WebView -> WebFrameView part of the change.  Also
   29873         changes WebController's inheritance.  It now inherits from NSView.  Also
   29874         added some simple action methods to WebController (soon to be WebView)
   29875         to facilitate IB hookup.
   29876         
   29877         Reviewed by Maciej.
   29878 
   29879         * Carbon.subproj/CarbonWindowAdapter.m:
   29880         * Carbon.subproj/HIWebView.h:
   29881         * Carbon.subproj/HIWebView.m:
   29882         (if):
   29883         (switch):
   29884         * Carbon.subproj/HIWebViewPriv.h:
   29885         * Misc.subproj/WebKitStatistics.m:
   29886         (+[WebKitStatistics viewCount]):
   29887         * Misc.subproj/WebKitStatisticsPrivate.h:
   29888         * Misc.subproj/WebNSViewExtras.h:
   29889         * Misc.subproj/WebNSViewExtras.m:
   29890         (-[NSView _web_parentWebFrameView]):
   29891         * Panels.subproj/WebStandardPanels.m:
   29892         (-[WebStandardPanels frontmostWindowLoadingURL:]):
   29893         * Plugins.subproj/WebNetscapePluginDocumentView.m:
   29894         (-[WebNetscapePluginDocumentView layout]):
   29895         * Plugins.subproj/WebNetscapePluginEmbeddedView.m:
   29896         (-[WebNetscapePluginEmbeddedView dataSource]):
   29897         * Plugins.subproj/WebNetscapePluginRepresentation.m:
   29898         (-[WebNetscapePluginRepresentation receivedData:withDataSource:]):
   29899         * Plugins.subproj/WebNullPluginView.m:
   29900         (-[WebNullPluginView viewDidMoveToWindow]):
   29901         * Plugins.subproj/WebPluginDatabase.m:
   29902         (-[WebPluginDatabase init]):
   29903         * WebCoreSupport.subproj/WebBridge.m:
   29904         (-[WebBridge areScrollbarsVisible]):
   29905         (-[WebBridge setScrollbarsVisible:]):
   29906         (-[WebBridge window]):
   29907         (-[WebBridge createChildFrameNamed:withURL:renderPart:allowsScrolling:marginWidth:marginHeight:]):
   29908         (-[WebBridge nextKeyViewOutsideWebFrameViews]):
   29909         (-[WebBridge previousKeyViewOutsideWebFrameViews]):
   29910         (-[WebBridge setNeedsReapplyStyles]):
   29911         (-[WebBridge setNeedsLayout]):
   29912         (-[WebBridge pluginViewWithPackage:attributes:baseURL:]):
   29913         (-[WebBridge frameRequiredForMIMEType:]):
   29914         (-[WebBridge handleMouseDragged:]):
   29915         (-[WebBridge mayStartDragWithMouseDragged:]):
   29916         * WebKit.exp:
   29917         * WebKit.pbproj/project.pbxproj:
   29918         * WebView.subproj/WebController.h:
   29919         * WebView.subproj/WebController.m:
   29920         (+[WebContentTypes canShowMIMEType:]):
   29921         (-[WebController _commonInitialization:frameName:groupName:]):
   29922         (-[WebController init]):
   29923         (-[WebController initWithFrame:]):
   29924         (-[WebController initWithView:]):
   29925         (-[WebController supportsTextEncoding]):
   29926         (-[WebController takeStringURLFrom:]):
   29927         (-[WebController goBack:]):
   29928         (-[WebController goForward:]):
   29929         (-[WebController stopLoading:]):
   29930         * WebView.subproj/WebControllerPrivate.h:
   29931         * WebView.subproj/WebControllerPrivate.m:
   29932         (-[WebControllerPrivate _clearControllerReferences:]):
   29933         (-[WebController _createFrameNamed:inParent:allowsScrolling:]):
   29934         (-[WebController _frameForView:fromFrame:]):
   29935         (-[WebController _frameForView:]):
   29936         * WebView.subproj/WebDataSource.m:
   29937         * WebView.subproj/WebDataSourcePrivate.m:
   29938         (-[WebDataSource _layoutChildren]):
   29939         (-[WebDataSource _receivedData:]):
   29940         * WebView.subproj/WebDebugDOMNode.h:
   29941         * WebView.subproj/WebDebugDOMNode.m:
   29942         (-[WebDebugDOMNode initWithWebFrameView:]):
   29943         * WebView.subproj/WebDefaultContextMenuDelegate.m:
   29944         (-[WebDefaultContextMenuDelegate controller:contextMenuItemsForElement:defaultMenuItems:]):
   29945         * WebView.subproj/WebDefaultLocationChangeDelegate.m:
   29946         (-[WebDefaultLocationChangeDelegate controller:locationChangeStartedForDataSource:]):
   29947         (-[WebDefaultLocationChangeDelegate controller:serverRedirectedForDataSource:]):
   29948         (-[WebDefaultLocationChangeDelegate controller:locationChangeCommittedForDataSource:]):
   29949         (-[WebDefaultLocationChangeDelegate controller:receivedPageTitle:forDataSource:]):
   29950         (-[WebDefaultLocationChangeDelegate controller:receivedPageIcon:forDataSource:]):
   29951         (-[WebDefaultLocationChangeDelegate controller:locationChangeDone:forDataSource:]):
   29952         (-[WebDefaultLocationChangeDelegate controller:willCloseLocationForDataSource:]):
   29953         (-[WebDefaultLocationChangeDelegate controller:locationChangedWithinPageForDataSource:]):
   29954         (-[WebDefaultLocationChangeDelegate controller:clientWillRedirectTo:delay:fireDate:forFrame:]):
   29955         (-[WebDefaultLocationChangeDelegate controller:clientRedirectCancelledForFrame:]):
   29956         * WebView.subproj/WebDefaultPolicyDelegate.m:
   29957         (-[WebDefaultPolicyDelegate controller:unableToImplementPolicyWithError:inFrame:]):
   29958         (-[WebDefaultPolicyDelegate controller:decideNavigationPolicyForAction:andRequest:inFrame:decisionListener:]):
   29959         (-[WebDefaultPolicyDelegate controller:decideNewWindowPolicyForAction:andRequest:newFrameName:decisionListener:]):
   29960         * WebView.subproj/WebDefaultResourceLoadDelegate.m:
   29961         (-[WebDefaultResourceLoadDelegate controller:identifierForInitialRequest:fromDataSource:]):
   29962         (-[WebDefaultResourceLoadDelegate controller:resource:willSendRequest:fromDataSource:]):
   29963         (-[WebDefaultResourceLoadDelegate controller:resource:didReceiveResponse:fromDataSource:]):
   29964         (-[WebDefaultResourceLoadDelegate controller:resource:didReceiveContentLength:fromDataSource:]):
   29965         (-[WebDefaultResourceLoadDelegate controller:resource:didFinishLoadingFromDataSource:]):
   29966         (-[WebDefaultResourceLoadDelegate controller:resource:didFailLoadingWithError:fromDataSource:]):
   29967         (-[WebDefaultResourceLoadDelegate controller:pluginFailedWithError:dataSource:]):
   29968         * WebView.subproj/WebDefaultWindowOperationsDelegate.m:
   29969         (-[WebDefaultWindowOperationsDelegate controller:runJavaScriptConfirmPanelWithMessage:]):
   29970         (-[WebDefaultWindowOperationsDelegate controller:runJavaScriptTextInputPanelWithPrompt:defaultText:]):
   29971         (-[WebDefaultWindowOperationsDelegate controller:runOpenPanelForFileButtonWithResultListener:]):
   29972         * WebView.subproj/WebDocument.h:
   29973         * WebView.subproj/WebDynamicScrollBarsView.m:
   29974         * WebView.subproj/WebFrame.h:
   29975         * WebView.subproj/WebFrame.m:
   29976         (-[WebFrame init]):
   29977         (-[WebFrame initWithName:webFrameView:controller:]):
   29978         (-[WebFrame view]):
   29979         (+[WebFrame registerViewClass:representationClass:forMIMEType:]):
   29980         * WebView.subproj/WebFramePrivate.h:
   29981         * WebView.subproj/WebFramePrivate.m:
   29982         (if):
   29983         (switch):
   29984         * WebView.subproj/WebHTMLView.h:
   29985         * WebView.subproj/WebHTMLView.m:
   29986         (-[WebHTMLView dragImage:at:offset:event:pasteboard:source:slideBack:]):
   29987         (-[WebHTMLView draggedImage:endedAt:operation:]):
   29988         (-[WebHTMLView becomeFirstResponder]):
   29989         * WebView.subproj/WebHTMLViewPrivate.m:
   29990         (-[WebHTMLView _controller]):
   29991         (-[WebHTMLView _frame]):
   29992         (-[WebHTMLView _elementAtPoint:]):
   29993         * WebView.subproj/WebImageView.m:
   29994         (-[WebImageView controller]):
   29995         (-[WebImageView menuForEvent:]):
   29996         (-[WebImageView mouseDragged:]):
   29997         (-[WebImageView draggedImage:endedAt:operation:]):
   29998         * WebView.subproj/WebLocationChangeDelegate.h:
   29999         * WebView.subproj/WebRenderNode.h:
   30000         * WebView.subproj/WebRenderNode.m:
   30001         (-[WebRenderNode initWithName:position:rect:view:children:]):
   30002         (-[WebRenderNode initWithWebFrameView:]):
   30003         * WebView.subproj/WebResourceLoadDelegate.h:
   30004         * WebView.subproj/WebTextView.m:
   30005         (-[WebTextView menuForEvent:]):
   30006         * WebView.subproj/WebView.h:
   30007         * WebView.subproj/WebView.m:
   30008         (-[WebFrameView initWithFrame:]):
   30009         (-[WebFrameView dealloc]):
   30010         * WebView.subproj/WebViewPrivate.h:
   30011         * WebView.subproj/WebViewPrivate.m:
   30012         * WebView.subproj/WebWindowOperationsDelegate.h:
   30013 
   30014 2003-03-13  John Sullivan  <sullivan (a] apple.com>
   30015 
   30016         Reviewed by Trey.
   30017 
   30018         * English.lproj/StringsNotToBeLocalized.txt:
   30019         Removed all the bookmarks-related strings that I forgot
   30020         to remove in my previous checkin.
   30021 
   30022 2003-03-13  John Sullivan  <sullivan (a] apple.com>
   30023 
   30024         Removed all the bookmarks code from WebKit; put it
   30025         in WebBrowser instead.
   30026 
   30027         Reviewed by Darin
   30028 
   30029         * Bookmarks.subproj/WebBookmark.h: Removed.
   30030         * Bookmarks.subproj/WebBookmark.m: Removed.
   30031         * Bookmarks.subproj/WebBookmarkGroup.h: Removed.
   30032         * Bookmarks.subproj/WebBookmarkGroup.m: Removed.
   30033         * Bookmarks.subproj/WebBookmarkGroupPrivate.h: Removed.
   30034         * Bookmarks.subproj/WebBookmarkImporter.h: Removed.
   30035         * Bookmarks.subproj/WebBookmarkImporter.m: Removed.
   30036         * Bookmarks.subproj/WebBookmarkLeaf.h: Removed.
   30037         * Bookmarks.subproj/WebBookmarkLeaf.m: Removed.
   30038         * Bookmarks.subproj/WebBookmarkList.h: Removed.
   30039         * Bookmarks.subproj/WebBookmarkList.m: Removed.
   30040         * Bookmarks.subproj/WebBookmarkPrivate.h: Removed.
   30041         * Bookmarks.subproj/WebBookmarkProxy.h: Removed.
   30042         * Bookmarks.subproj/WebBookmarkProxy.m: Removed.
   30043         * WebKit.exp:
   30044         removed all bookmark-related symbols
   30045         * WebKit.pbproj/project.pbxproj:
   30046         updated for removed files
   30047 
   30048 === Safari-67 ===
   30049 
   30050 2003-03-12  Chris Blumenberg  <cblu (a] apple.com>
   30051 
   30052         3196673 - REGRESSION: Assertion failure when download fails to create file
   30053         - Retain the download delegate because it will live longer than the WebController which it is an instance of.
   30054 
   30055         Reviewed by rjw.
   30056 
   30057         * Downloads.subproj/WebDownload.m:
   30058         (-[WebDownload _initWithLoadingResource:request:response:delegate:proxy:]): call _downloadStarted
   30059         (-[WebDownload loadWithDelegate:]): call _downloadStarted
   30060         (-[WebDownload _downloadStarted]): renamed from _loadStarted
   30061         (-[WebDownload _downloadEnded]): release delegate
   30062         (-[WebDownload resource:willSendRequest:]): reordered so if we are released in this method, we never call self
   30063         (-[WebDownload resourceDidFinishLoading:]): don't call _loadEnded because _downloadEnded gets called in _didCloseFile and _cancelWithError
   30064         (-[WebDownload resource:didFailLoadingWithError:]):  don't call _loadEnded because _downloadEnded gets called in _didCloseFile and _cancelWithError
   30065         (-[WebDownload _didCloseFile:]): call _downloadEnded
   30066         (-[WebDownload _cancelWithError:]): call _downloadEnded
   30067         * WebView.subproj/WebController.h: mention that the download delegate gets retained.
   30068 
   30069 2003-03-12  Darin Adler  <darin (a] apple.com>
   30070 
   30071         Reviewed by John.
   30072 
   30073         - fixed 3193552 -- REGRESSION: crash loading ftp directory URL
   30074         - fixed minor problems with setDefersCallbacks handling and object lifetime
   30075 
   30076         * WebView.subproj/WebBaseResourceHandleDelegate.h: Removed now-unused cancelQuietly.
   30077         * WebView.subproj/WebBaseResourceHandleDelegate.m:
   30078         (-[WebBaseResourceHandleDelegate cancel]): Changed cancel to tolerate being called
   30079         when we have already cancelled. It's an error to call cancelWithError once we
   30080         have cancelled.
   30081         
   30082         * WebView.subproj/WebMainResourceClient.m:
   30083         (-[WebMainResourceClient interruptForPolicyChangeError]): Added. New function to
   30084         create the WebError object for policy change.
   30085         (-[WebMainResourceClient stopLoadingForPolicyChange]): Changed to just be a call
   30086         to cancelWithError:.
   30087         (-[WebMainResourceClient resource:willSendRequest:]): Call setDefersCallbacks:YES
   30088         here; continueAfterNavigationPolicy already takes care of setDefersCallbacks:NO,
   30089         but we lost this one somewhere along the way.
   30090         (-[WebMainResourceClient continueAfterContentPolicy:response:]): Changed to call
   30091         receivedError: on interruptForPolicyChangeError directly. It wasn't clearer to call
   30092         a method named interruptForPolicyChange.
   30093         (-[WebMainResourceClient resource:didReceiveResponse:]): Don't bother calling
   30094         setDefersCallbacks:YES here any more; checkContentPolicyForResponse: takes care
   30095         of that so there's no need to do it here. Initialize _contentLength before calling
   30096         checkContentPolicyForResponse:, since that method can result in deallocating self.
   30097 
   30098 2003-03-12  John Sullivan  <sullivan (a] apple.com>
   30099 
   30100         Reviewed by Trey
   30101 
   30102         * English.lproj/StringsNotToBeLocalized.txt:
   30103         updated for recent changes
   30104 
   30105 2003-03-11  Chris Blumenberg  <cblu (a] apple.com>
   30106 
   30107         Fixed deployment build failure.
   30108 
   30109         * WebView.subproj/WebFramePrivate.m:
   30110 
   30111 2003-03-11  Richard Williamson   <rjw (a] apple.com>
   30112 
   30113         Added controller: parameter to all WebControllers delegates.
   30114         
   30115         Reviewed by chris.
   30116 
   30117         * Plugins.subproj/WebBaseNetscapePluginView.m:
   30118         (-[WebBaseNetscapePluginView loadPluginRequest:]):
   30119         * Plugins.subproj/WebNetscapePluginDocumentView.m:
   30120         (-[WebNetscapePluginDocumentView setDataSource:]):
   30121         * Plugins.subproj/WebNullPluginView.m:
   30122         (-[WebNullPluginView viewDidMoveToWindow]):
   30123         * Plugins.subproj/WebPluginController.m:
   30124         (-[WebPluginController showStatus:]):
   30125         * WebCoreSupport.subproj/WebBridge.m:
   30126         (-[WebBridge createWindowWithURL:frameName:]):
   30127         (-[WebBridge showWindow]):
   30128         (-[WebBridge areToolbarsVisible]):
   30129         (-[WebBridge setToolbarsVisible:]):
   30130         (-[WebBridge isStatusBarVisible]):
   30131         (-[WebBridge setStatusBarVisible:]):
   30132         (-[WebBridge setWindowFrame:]):
   30133         (-[WebBridge runJavaScriptAlertPanelWithMessage:]):
   30134         (-[WebBridge runJavaScriptConfirmPanelWithMessage:]):
   30135         (-[WebBridge runJavaScriptTextInputPanelWithPrompt:defaultText:returningText:]):
   30136         (-[WebBridge runOpenPanelForFileButtonWithResultListener:]):
   30137         (-[WebBridge setStatusText:]):
   30138         (-[WebBridge objectLoadedFromCacheWithURL:response:size:]):
   30139         * WebCoreSupport.subproj/WebSubresourceClient.m:
   30140         * WebView.subproj/WebBaseResourceHandleDelegate.m:
   30141         (-[WebBaseResourceHandleDelegate resource:willSendRequest:]):
   30142         (-[WebBaseResourceHandleDelegate resource:didReceiveResponse:]):
   30143         (-[WebBaseResourceHandleDelegate resource:didReceiveData:]):
   30144         (-[WebBaseResourceHandleDelegate resourceDidFinishLoading:]):
   30145         (-[WebBaseResourceHandleDelegate resource:didFailLoadingWithError:]):
   30146         (-[WebBaseResourceHandleDelegate cancelWithError:]):
   30147         * WebView.subproj/WebContextMenuDelegate.h:
   30148         * WebView.subproj/WebControllerPolicyDelegate.h:
   30149         * WebView.subproj/WebControllerPrivate.m:
   30150         (-[WebController _openNewWindowWithRequest:]):
   30151         (-[WebController _menuForElement:]):
   30152         (-[WebController _mouseDidMoveOverElement:modifierFlags:]):
   30153         * WebView.subproj/WebDataSourcePrivate.m:
   30154         (-[WebDataSource _startLoading:]):
   30155         (-[WebDataSource _setTitle:]):
   30156         (-[WebDataSource _setRequest:]):
   30157         (-[WebDataSource _updateIconDatabaseWithURL:]):
   30158         * WebView.subproj/WebDefaultContextMenuDelegate.m:
   30159         (-[WebDefaultContextMenuDelegate controller:contextMenuItemsForElement:defaultMenuItems:]):
   30160         * WebView.subproj/WebDefaultLocationChangeDelegate.m:
   30161         (-[WebDefaultLocationChangeDelegate controller:locationChangeStartedForDataSource:]):
   30162         (-[WebDefaultLocationChangeDelegate controller:serverRedirectedForDataSource:]):
   30163         (-[WebDefaultLocationChangeDelegate controller:locationChangeCommittedForDataSource:]):
   30164         (-[WebDefaultLocationChangeDelegate controller:receivedPageTitle:forDataSource:]):
   30165         (-[WebDefaultLocationChangeDelegate controller:receivedPageIcon:forDataSource:]):
   30166         (-[WebDefaultLocationChangeDelegate controller:locationChangeDone:forDataSource:]):
   30167         (-[WebDefaultLocationChangeDelegate controller:willCloseLocationForDataSource:]):
   30168         (-[WebDefaultLocationChangeDelegate controller:locationChangedWithinPageForDataSource:]):
   30169         (-[WebDefaultLocationChangeDelegate controller:clientWillRedirectTo:delay:fireDate:forFrame:]):
   30170         (-[WebDefaultLocationChangeDelegate controller:clientRedirectCancelledForFrame:]):
   30171         * WebView.subproj/WebDefaultPolicyDelegate.m:
   30172         (-[WebDefaultPolicyDelegate controller:unableToImplementPolicy:error:forURL:inFrame:]):
   30173         (-[WebDefaultPolicyDelegate controller:decideNavigationPolicyForAction:andRequest:inFrame:decisionListener:]):
   30174         (-[WebDefaultPolicyDelegate controller:decideNewWindowPolicyForAction:andRequest:newFrameName:decisionListener:]):
   30175         * WebView.subproj/WebDefaultResourceLoadDelegate.m:
   30176         (-[WebDefaultResourceLoadDelegate controller:identifierForInitialRequest:fromDataSource:]):
   30177         (-[WebDefaultResourceLoadDelegate controller:resource:willSendRequest:fromDataSource:]):
   30178         (-[WebDefaultResourceLoadDelegate controller:resource:didReceiveResponse:fromDataSource:]):
   30179         (-[WebDefaultResourceLoadDelegate controller:resource:didReceiveContentLength:fromDataSource:]):
   30180         (-[WebDefaultResourceLoadDelegate controller:resource:didFinishLoadingFromDataSource:]):
   30181         (-[WebDefaultResourceLoadDelegate controller:resource:didFailLoadingWithError:fromDataSource:]):
   30182         (-[WebDefaultResourceLoadDelegate controller:pluginFailedWithError:dataSource:]):
   30183         * WebView.subproj/WebDefaultWindowOperationsDelegate.m:
   30184         (-[WebDefaultWindowOperationsDelegate controller:runJavaScriptConfirmPanelWithMessage:]):
   30185         (-[WebDefaultWindowOperationsDelegate controller:runJavaScriptTextInputPanelWithPrompt:defaultText:]):
   30186         (-[WebDefaultWindowOperationsDelegate controller:runOpenPanelForFileButtonWithResultListener:]):
   30187         * WebView.subproj/WebFramePrivate.m:
   30188         (if):
   30189         (switch):
   30190         * WebView.subproj/WebLocationChangeDelegate.h:
   30191         * WebView.subproj/WebMainResourceClient.m:
   30192         (-[WebMainResourceClient checkContentPolicyForResponse:andCallSelector:]):
   30193         * WebView.subproj/WebResourceLoadDelegate.h:
   30194         * WebView.subproj/WebWindowOperationsDelegate.h:
   30195 
   30196 2003-03-11  Maciej Stachowiak  <mjs (a] apple.com>
   30197 
   30198         Reviewed by Richard.
   30199 
   30200         Final policy API changes:
   30201 
   30202         - changed WebPolicyDecisionListener to protocol in public API
   30203         - replaced policy enum with separate methods
   30204         - made content policy handling async
   30205         * WebKit.pbproj/project.pbxproj:
   30206         * WebView.subproj/WebControllerPolicyDelegate.h:
   30207         * WebView.subproj/WebControllerPolicyDelegate.m:
   30208         (-[WebPolicyDecisionListener _usePolicy:]):
   30209         (-[WebPolicyDecisionListener use]):
   30210         (-[WebPolicyDecisionListener ignore]):
   30211         (-[WebPolicyDecisionListener download]):
   30212         * WebView.subproj/WebControllerPolicyDelegatePrivate.h:
   30213         * WebView.subproj/WebDefaultPolicyDelegate.m:
   30214         (-[WebDefaultPolicyDelegate unableToImplementPolicyWithError:inFrame:]):
   30215         (-[WebDefaultPolicyDelegate decideNavigationPolicyForAction:andRequest:inFrame:decisionListener:]):
   30216         (-[WebDefaultPolicyDelegate decideNewWindowPolicyForAction:andRequest:newFrameName:decisionListener:]):
   30217         * WebView.subproj/WebFramePrivate.h:
   30218         * WebView.subproj/WebFramePrivate.m:
   30219         (switch):
   30220         * WebView.subproj/WebMainResourceClient.h:
   30221         * WebView.subproj/WebMainResourceClient.m:
   30222         (-[WebMainResourceClient cancelContentPolicy]):
   30223         (-[WebMainResourceClient cancel]):
   30224         (-[WebMainResourceClient cancelQuietly]):
   30225         (-[WebMainResourceClient cancelWithError:]):
   30226         (-[WebMainResourceClient continueAfterContentPolicy:response:]):
   30227         (-[WebMainResourceClient continueAfterContentPolicy:]):
   30228         (-[WebMainResourceClient checkContentPolicyForResponse:]):
   30229         (-[WebMainResourceClient resource:didReceiveResponse:]):
   30230 
   30231 2003-03-11  Darin Adler  <darin (a] apple.com>
   30232 
   30233         Reviewed by John.
   30234 
   30235         - fixed mistake in that last check-in that made Safari assert on startup with Chris's bookmarks bar
   30236 
   30237         * Misc.subproj/WebStringTruncator.m: (centerTruncateToBuffer):
   30238         Fix logic here to not use an uninitialized variable.
   30239 
   30240 2003-03-11  Darin Adler  <darin (a] apple.com>
   30241 
   30242         Reviewed by John.
   30243 
   30244         - fixed 3193213 -- assert truncatedLength+1 < STRING_BUFFER_SIZE creating tab label for firstyearibs.com
   30245         - fixed 3194935 -- WebStringTruncator rightTruncateString: will break between composed characters
   30246         - fixed right truncator to use interpolation algorithm rather than linear search
   30247 
   30248         * Misc.subproj/WebStringTruncator.m:
   30249         (centerTruncateToBuffer): Changed from a class method to a plain function, and tweaked the code a bit.
   30250         (rightTruncateToBuffer): Added. Like centerTruncateToBuffer, but does it on the right end instead.
   30251         (stringWidth): Added. Helper function that calls the TextRenderer method with the right parameters.
   30252         (truncateString): Moved all the code from centerTruncateString here, adding one new parameter, the
   30253         truncate to buffer function.
   30254         (+[WebStringTruncator centerTruncateString:toWidth:]): Call truncateString with the appropriate parameters.
   30255         (+[WebStringTruncator centerTruncateString:toWidth:withFont:]): Ditto.
   30256         (+[WebStringTruncator rightTruncateString:toWidth:withFont:]): Ditto.
   30257 
   30258 === Safari-66 ===
   30259 
   30260 2003-03-10  Maciej Stachowiak  <mjs (a] apple.com>
   30261 
   30262         Reviewed by Dave.
   30263 
   30264         - fixed 3194221 - REGRESSION: search results loaded in wrong frame at directory.apple.com
   30265 
   30266         * WebView.subproj/WebFramePrivate.m:
   30267         (_postWithURL:referrer:target:data:contentType:triggeringEvent:form:formValues:):
   30268         Deliver targetted form posts correctly.
   30269 2003-03-10  Darin Adler  <darin (a] apple.com>
   30270 
   30271         Reviewed by Maciej.
   30272 
   30273         - fixed 3010915 -- mouse wheel won't scroll the main document when you are over [i]frame
   30274 
   30275         * WebView.subproj/WebDynamicScrollBarsView.h: Made WebDynamicScrollBarsView a subclass of
   30276         WebCoreScrollView instead of NSScrollView.
   30277         
   30278         - other changes
   30279         
   30280         * WebView.subproj/WebFramePrivate.m: (-[WebFrame _actionInformationForNavigationType:event:originalURL:):
   30281         Fix problem where you would not get any information if the click was on a subview of the
   30282         WebHTMLView, like a form control.
   30283 
   30284 2003-03-10  Chris Blumenberg  <cblu (a] apple.com>
   30285 
   30286         Fixed some download-related leaks. Primarily, we were leaking the data source that started the download. The data source is now immediately released when it becomes a download.
   30287 
   30288         Reviewed by darin.
   30289 
   30290         * Downloads.subproj/WebDownload.m:
   30291         (-[WebDownloadPrivate dealloc]): release the WebResourceDelegateProxy
   30292         (-[WebDownload _initWithLoadingResource:request:response:delegate:proxy:]): renamed, don't pass a datasource so WebDownload is completely disconnected from the that. Pass the proxy so it transfers ownership from WebMainResourceClient and it doesn'
   30293 
   30294 
   30295 
   30296 
   30297 
   30298 
   30299 t leak when we cancel a download.
   30300         (-[WebDownload _setRequest:]): added
   30301         (-[WebDownload _setResponse:]): added
   30302         (-[WebDownload resource:willSendRequest:]): call _setRequest
   30303         (-[WebDownload resource:didReceiveResponse:]): call _setResponse
   30304         * Downloads.subproj/WebDownloadPrivate.h:
   30305         * WebView.subproj/WebBaseResourceHandleDelegate.h:
   30306         * WebView.subproj/WebBaseResourceHandleDelegate.m: removed notifyDelegatesOfInterruptionByPolicyChange, no longer called
   30307         * WebView.subproj/WebMainResourceClient.h: made WebResourceDelegateProxy available to other classes
   30308         * WebView.subproj/WebMainResourceClient.m:
   30309         (-[WebMainResourceClient receivedError:]): moved most error handling code here
   30310         (-[WebMainResourceClient cancel]): stop load, call receivedError
   30311         (-[WebMainResourceClient interruptForPolicyChange]): renamed, call receivedError with the policy interrupt error
   30312         (-[WebMainResourceClient stopLoadingForPolicyChange]): call interruptForPolicyChange
   30313         (-[WebMainResourceClient continueAfterContentPolicy:response:]): for WebPolicySave, create the download, call interruptForPolicyChange and return so the response isn't set on the superclass.
   30314         (-[WebMainResourceClient resource:didFailLoadingWithError:]): call receivedError
   30315         (-[WebResourceDelegateProxy setDelegate:]): don't retain the delegate
   30316         (-[WebResourceDelegateProxy resourceDidFinishLoading:]): don't release the delegate
   30317         (-[WebResourceDelegateProxy resource:didFailLoadingWithError:]): don't release the delegate
   30318 
   30319 2003-03-07  Maciej Stachowiak  <mjs (a] apple.com>
   30320 
   30321         Reviewed by Richard.
   30322 
   30323         - fixed 3127705 - don't open new window on opt-click even if the link requests it
   30324         - fixed 3143971 - cmd-click should override the target="_blank" and target="_new" (important for tabs)
   30325 
   30326         - removed open new window and open new window behind policies
   30327         - removed [WebFrame findOrCreateFrameNamed:] from API
   30328         - remved showWindowBehind from window operations delegate
   30329         - added decideNewWindowPolicyForAction:andRequest:newFrameName:decisionListener: delegate method
   30330         * Plugins.subproj/WebBaseNetscapePluginView.m:
   30331         (-[WebBaseNetscapePluginView loadPluginRequest:]):
   30332         (-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:]):
   30333         (-[WebPluginRequest initWithRequest:frameName:notifyData:]):
   30334         (-[WebPluginRequest dealloc]):
   30335         (-[WebPluginRequest frameName]):
   30336         * Plugins.subproj/WebPluginController.m:
   30337         (-[WebPluginController showURL:inFrame:]):
   30338         * WebCoreSupport.subproj/WebBridge.m:
   30339         (-[WebBridge loadURL:referrer:reload:target:triggeringEvent:form:formValues:]):
   30340         (-[WebBridge postWithURL:referrer:target:data:contentType:triggeringEvent:form:formValues:]):
   30341         * WebView.subproj/WebControllerPolicyDelegate.h:
   30342         * WebView.subproj/WebControllerPrivate.h:
   30343         * WebView.subproj/WebControllerPrivate.m:
   30344         (-[WebController _openNewWindowWithRequest:]):
   30345         * WebView.subproj/WebDefaultContextMenuDelegate.m:
   30346         (-[WebDefaultContextMenuDelegate openNewWindowWithURL:]):
   30347         * WebView.subproj/WebDefaultPolicyDelegate.m:
   30348         (-[WebDefaultPolicyDelegate decideNewWindowPolicyForAction:andRequest:newFrameName:decisionListener:]):
   30349         * WebView.subproj/WebFrame.h:
   30350         * WebView.subproj/WebFrame.m:
   30351         * WebView.subproj/WebFramePrivate.h:
   30352         * WebView.subproj/WebFramePrivate.m:
   30353         (-[NSObject performSelector:withObject:withObject:withObject:]):
   30354         * WebView.subproj/WebWindowOperationsDelegate.h:
   30355 
   30356 2003-03-07  Chris Blumenberg  <cblu (a] apple.com>
   30357 
   30358         Updated header doc comments.
   30359 
   30360         * Downloads.subproj/WebDownload.h:
   30361 
   30362 2003-03-07  Richard Williamson   <rjw (a] apple.com>
   30363 
   30364         Drop mainDocumentError from WebDataSource.
   30365         Combine registerView: and registerRepresentation: into one method on WebFrame.
   30366         
   30367         Reviewed by trey.
   30368 
   30369         * Plugins.subproj/WebPluginDatabase.m:
   30370         (-[WebPluginDatabase init]):
   30371         * WebView.subproj/WebDataSource.h:
   30372         * WebView.subproj/WebDataSource.m:
   30373         * WebView.subproj/WebDataSourcePrivate.h:
   30374         * WebView.subproj/WebDataSourcePrivate.m:
   30375         (-[WebDataSource _mainDocumentError]):
   30376         * WebView.subproj/WebFrame.h:
   30377         * WebView.subproj/WebFrame.m:
   30378         (+[WebFrame registerViewClass:representationClass:forMIMEType:]):
   30379         * WebView.subproj/WebFramePrivate.m:
   30380         (switch):
   30381         * WebView.subproj/WebView.h:
   30382         * WebView.subproj/WebView.m:
   30383 
   30384 2003-03-07  John Sullivan  <sullivan (a] apple.com>
   30385 
   30386         WebKit part of fixes to these two synching-related bugs:
   30387 
   30388         3190844 -- Bookmarks Bar and Menu collections need to be
   30389         marked specially in Bookmarks file
   30390 
   30391         3192197 -- Safari should write out UUID-full Bookmarks 
   30392         file after reading UUID-free one
   30393 
   30394         Reviewed by Trey
   30395 
   30396         * Bookmarks.subproj/WebBookmark.h:
   30397         * Bookmarks.subproj/WebBookmark.m:
   30398         (-[WebBookmark setUUID:]):
   30399         Removed the leading underscore, made this method public.
   30400         Removed unnecessary constraint that new or old UUID had
   30401         to be nil; now short-circuits the no-change case.
   30402         (-[WebBookmark copyWithZone:]):
   30403         updated for name change
   30404         (-[WebBookmark initFromDictionaryRepresentation:withGroup:]):
   30405         ditto
   30406 
   30407         * Bookmarks.subproj/WebBookmarkGroup.h:
   30408         * Bookmarks.subproj/WebBookmarkGroup.m:
   30409         (-[WebBookmarkGroup bookmarkForUUID:]):
   30410         new public method to find a bookmark from a UUID.
   30411         (-[WebBookmarkGroup _addBookmark:]):
   30412         updated for name change
   30413 
   30414         * Bookmarks.subproj/WebBookmarkPrivate.h:
   30415         removed declaration for old _setUUID
   30416 
   30417 2003-03-07  Darin Adler  <darin (a] apple.com>
   30418 
   30419         Reviewed by John.
   30420 
   30421         - fixed regression caused when we made the stopLoading method on WebDataSource private
   30422 
   30423         * WebView.subproj/WebDataSourcePrivate.m: (-[WebDataSource _recursiveStopLoading]):
   30424         The children are frames, so we need to do stopLoading, not _stopLoading.
   30425 
   30426 2003-03-07  Chris Blumenberg  <cblu (a] apple.com>
   30427 
   30428         Fixed: 3191052 - Predetermined downloads should not be started from the browser window
   30429         - Stripped the rest of WebKit of download related code.
   30430 
   30431         Reviewed by trey.
   30432 
   30433         * Downloads.subproj/WebDownload.h: Changed the download delegate method from download:didStartFromDataSource: download:didStartFromRequest:. Passing the data source wasn't that helpful. It was also quirky that the data source would sometimes be ni
   30434 
   30435 
   30436 
   30437 
   30438 
   30439 
   30440 l.
   30441         * Downloads.subproj/WebDownload.m:
   30442         (-[WebDownloadPrivate dealloc]): release directory path
   30443         (-[WebDownload _initWithLoadingResource:dataSource:]): call _loadStarted and _loadEnded
   30444         (-[WebDownload loadWithDelegate:]): call _loadStarted
   30445         (-[WebDownload _loadStarted]): set flag, retain self
   30446         (-[WebDownload _loadEnded]): set flag, release self
   30447         (-[WebDownload resource:willSendRequest:]): call _loadEnded if the returned request is nil
   30448         (-[WebDownload resourceDidFinishLoading:]): call _loadEnded
   30449         (-[WebDownload resource:didFailLoadingWithError:]): call _loadEnded
   30450         (-[WebDownload _createFileIfNecessary]): handle a predetermined download directory, not path
   30451         (-[WebDownload _cancelWithError:]): call _loadEnded
   30452         (-[WebDownload _setDirectoryPath:]): new private method
   30453         * Downloads.subproj/WebDownloadPrivate.h:
   30454         * WebView.subproj/WebControllerPrivate.m:
   30455         (-[WebController _mainReceivedError:fromDataSource:complete:]): don't call [dataSource isDownloading]
   30456         (-[WebController _downloadURL:toDirectory:]): create and start a self retained WebDownload
   30457         * WebView.subproj/WebDataSource.h:
   30458         * WebView.subproj/WebDataSource.m: removed download related methods
   30459         * WebView.subproj/WebDataSourcePrivate.h:
   30460         * WebView.subproj/WebDataSourcePrivate.m: removed download related methods
   30461         (-[WebDataSource _commitIfReady:]): don't call isDownloading
   30462         * WebView.subproj/WebFramePrivate.h:
   30463         * WebView.subproj/WebFramePrivate.m:
   30464         * WebView.subproj/WebMainResourceClient.m:
   30465         (-[WebMainResourceClient continueAfterContentPolicy:response:]): when handing off the load to the download, don't deal with the download path
   30466         (-[WebMainResourceClient resource:didReceiveResponse:]): no more predetermined downloads come through here
   30467 
   30468 2003-03-06  Maciej Stachowiak  <mjs (a] apple.com>
   30469 
   30470         Reviewed by Trey.
   30471 
   30472         Step towards policy API changes. Remove WebPolicyNone,
   30473         WebPolicyRevealInFinder, WebPolicyOpenURL and WebPolicyShow.
   30474         * WebView.subproj/WebControllerPolicyDelegate.h:
   30475         * WebView.subproj/WebDefaultPolicyDelegate.m:
   30476         (-[WebDefaultPolicyDelegate decideNavigationPolicyForAction:andRequest:inFrame:decisionListener:]):
   30477         * WebView.subproj/WebFramePrivate.m:
   30478         (switch):
   30479         * WebView.subproj/WebMainResourceClient.m:
   30480         (-[WebMainResourceClient continueAfterContentPolicy:response:]):
   30481 
   30482 2003-03-06  Richard Williamson   <rjw (a] apple.com>
   30483 
   30484         Remove setWebView: from WebFrame.
   30485         
   30486         Reviewed by chris.
   30487 
   30488         * WebView.subproj/WebFrame.h:
   30489         * WebView.subproj/WebFrame.m:
   30490         (-[WebFrame initWithName:webView:controller:]):
   30491         (-[WebFrame name]):
   30492 
   30493 2003-03-06  Richard Williamson   <rjw (a] apple.com>
   30494 
   30495         API changes.  WebCapabilities -> WebContentTypes.
   30496         Move fileExtension from WebDataSource to WebContentTypes
   30497         
   30498         Reviewed by chris.
   30499 
   30500         * Misc.subproj/WebNSPasteboardExtras.m:
   30501         (-[NSPasteboard _web_bestURL]):
   30502         * WebKit.exp:
   30503         * WebView.subproj/WebController.h:
   30504         * WebView.subproj/WebController.m:
   30505         (+[WebContentTypes suggestedFileExtensionForMIMEType:]):
   30506         (-[WebController supportsTextEncoding]):
   30507         (-[WebController setCustomTextEncodingName:]):
   30508         (-[WebController _mainFrameOverrideEncoding]):
   30509         (-[WebController customTextEncodingName]):
   30510         (-[WebController stringByEvaluatingJavaScriptFromString:]):
   30511         (-[WebController userAgentForURL:]):
   30512         * WebView.subproj/WebControllerPrivate.h:
   30513         * WebView.subproj/WebDataSource.h:
   30514         * WebView.subproj/WebDataSource.m:
   30515         * WebView.subproj/WebDefaultPolicyDelegate.m:
   30516         * WebView.subproj/WebMainResourceClient.m:
   30517         (-[WebMainResourceClient continueAfterContentPolicy:response:]):
   30518 
   30519 2003-03-06  Chris Blumenberg  <cblu (a] apple.com>
   30520 
   30521         Implemented WebDownload API.
   30522 
   30523         Fixed: 3118355 - Download mechanism that doesn't involve WebDataSource, WebFrame, WebController etc
   30524         Fixed: 3110173 - add per-request disabling of download decoding, use to turn off when "Open Safe Files" is off
   30525 
   30526         Reviewed by trey, rjw, mjs.
   30527 
   30528         * Downloads.subproj/WebDownload.h: Tweaked comments, added new methods.
   30529         * Downloads.subproj/WebDownload.m:
   30530         (-[WebDownloadPrivate dealloc]): release new objects
   30531         (-[WebDownload initWithRequest:]): was initWithRequest:delegate:, but found that starting the load from the init method made it tricky to do other set up work before the load started.
   30532         (-[WebDownload _initWithLoadingResource:dataSource:]): private init method, "catches up" to load by sending delegate method immediately, doesn't retain the dataSource, uses it for info
   30533         (-[WebDownload loadWithDelegate:]): new, starts load
   30534         (-[WebDownload cancel]): cancel load with no error
   30535         (-[WebDownload path]): simple getter
   30536         (-[WebDownload setPath:]): implement this because WebDownload is the WebDownloadDecisionListener, call _setPath
   30537         (-[WebDownload resource:willSendRequest:]): resource delegate method
   30538         (-[WebDownload resource:didReceiveResponse:]): resource delegate method
   30539         (-[WebDownload resource:didReceiveData:]): resource delegate method, decode and write data, cancel load if error
   30540         (-[WebDownload resourceDidFinishLoading:]): resource delegate method, decode and write data if necessary, end in error if error
   30541         (-[WebDownload resource:didFailLoadingWithError:]): resource delegate method, end in error
   30542         (-[WebDownload _pathWithUniqueFilenameForPath:]): this work was done in _createFileIfNecessary, does what it says
   30543         (-[WebDownload _createFSRefForPath:]): this work was done in _createFileIfNecessary as well, makes fileRefPtr point to a file
   30544         (-[WebDownload _createFileIfNecessary]): creates file, creates temp file if path hasn't been set yet
   30545         (-[WebDownload _decodeHeaderData:dataForkData:resourceForkData:]): call private method
   30546         (-[WebDownload _decodeData:dataForkData:resourceForkData:]): made private, if the download is encoded, ask client if OK to decode
   30547         (-[WebDownload _decodeData:]): hardly changed, don't cancel, just return error
   30548         (-[WebDownload _dataIfDoneBufferingData:]): moved, not changed
   30549         (-[WebDownload _finishDecoding]): hardly changed, don't cancel, just return error
   30550         (-[WebDownload _writeForkData:isDataFork:]): moved, not changed
   30551         (-[WebDownload _writeDataForkData:resourceForkData:]): moved, not changed
   30552         (-[WebDownload _isFileClosed]): new
   30553         (-[WebDownload _fileDidClose:]): new, called by the callback thread, delete file if deleteFile flag is set, report error or end successfully
   30554         (-[WebDownload _closeForkAsync:]): new
   30555         (-[WebDownload _closeForkSync:]): new
   30556         (-[WebDownload _closeFileAsync]): new
   30557         (-[WebDownload _closeFileSync]): new
   30558         (-[WebDownload _deleteFileAsnyc]): new
   30559         (-[WebDownload _closeAndDeleteFileAsync]): new
   30560         (-[WebDownload _cancelWithError:]): kill load if there is one, report error if there is one, close and delete file is not already closed or deleted
   30561         (-[WebDownload _cancelWithErrorCode:]): internal convenienve, calls _cancelWithError
   30562         (-[WebDownload _setPath:]): set path, if we are already saving data to a temp path, move the file and continue downloading
   30563         (-[WebDownload _currentPath]): new 
   30564         (-[WebDownload _errorWithCode:]): new
   30565         (-[WebDownload _dataForkReferenceNumber]): added underscore
   30566         (-[WebDownload _setDataForkReferenceNumber:]): added underscore
   30567         (-[WebDownload _resourceForkReferenceNumber]): added underscore
   30568         (-[WebDownload _setResourceForkReferenceNumber:]): added underscore
   30569         (-[WebDownload _areWritesCancelled]): added underscore
   30570         (-[WebDownload _setWritesCancelled:]): added underscore
   30571         (-[WebDownload _encounteredCloseError]): new
   30572         (-[WebDownload _setEncounteredCloseError:]): new 
   30573         (WriteCompletionCallback): call underscored methods
   30574         (CloseCompletionCallback): call underscored methods, handle close error, don't delete file
   30575         (DeleteCompletionCallback): call _currentPath
   30576         * Downloads.subproj/WebDownloadPrivate.h:
   30577         * WebView.subproj/WebBaseResourceHandleDelegate.h: renamed handle to resource
   30578         * WebView.subproj/WebBaseResourceHandleDelegate.m: renamed handle to resource
   30579         (-[WebBaseResourceHandleDelegate _releaseResources]): renamed handle to resource
   30580         (-[WebBaseResourceHandleDelegate startLoading:]): renamed handle to resource
   30581         (-[WebBaseResourceHandleDelegate loadWithRequest:]): renamed handle to resource
   30582         (-[WebBaseResourceHandleDelegate setDefersCallbacks:]): renamed handle to resource
   30583         (-[WebBaseResourceHandleDelegate resource:willSendRequest:]): renamed handle to resource
   30584         (-[WebBaseResourceHandleDelegate resource:didReceiveResponse:]): renamed handle to resource, don't handle downloads
   30585         (-[WebBaseResourceHandleDelegate resource:didReceiveData:]): renamed handle to resource, don't handle downloads
   30586         (-[WebBaseResourceHandleDelegate resourceDidFinishLoading:]): renamed handle to resource, don't handle downloads
   30587         (-[WebBaseResourceHandleDelegate resource:didFailLoadingWithError:]): renamed handle to resource, don't handle downloads
   30588         (-[WebBaseResourceHandleDelegate cancelWithError:]): renamed handle to resource, don't handle downloads
   30589         * WebView.subproj/WebController.h: updated comments
   30590         * WebView.subproj/WebController.m: 
   30591         (-[WebController setDownloadDelegate:]): call the ivar downloadDelegate, not downloadProgressDelegate
   30592         (-[WebController downloadDelegate]): call the ivar downloadDelegate, not downloadProgressDelegate
   30593         * WebView.subproj/WebControllerPolicyDelegate.h: removed saveFilenameForResponse:andRequest:, handle by WebDownload
   30594         * WebView.subproj/WebControllerPrivate.h: call the ivar downloadDelegate, not downloadProgressDelegate
   30595         * WebView.subproj/WebDefaultPolicyDelegate.m: removed saveFilenameForResponse:andRequest:, handle by WebDownload
   30596         * WebView.subproj/WebMainResourceClient.h: added WebResourceDelegateProxy icar
   30597         * WebView.subproj/WebMainResourceClient.m: remove most download related stuff
   30598         (-[WebMainResourceClient initWithDataSource:]): create a WebResourceDelegateProxy which allows us to change the resource delegate
   30599         (-[WebMainResourceClient dealloc]): release the proxy
   30600         (-[WebMainResourceClient receivedError:complete:]): don't handle downloads
   30601         (-[WebMainResourceClient continueAfterContentPolicy:response:]): pass the load off to the download
   30602         (-[WebMainResourceClient resource:didReceiveResponse:]): don't handle downloads
   30603         (-[WebMainResourceClient resource:didReceiveData:]): don't handle downloads
   30604         (-[WebMainResourceClient resourceDidFinishLoading:]): don't handle downloads
   30605         (-[WebMainResourceClient resource:didFailLoadingWithError:]): don't handle downloads
   30606         (-[WebMainResourceClient startLoading:]): make the proxy the delegate
   30607         (-[WebResourceDelegateProxy setDelegate:]): switches the resource delegate
   30608         (-[WebResourceDelegateProxy resource:willSendRequest:]): forwards message
   30609         (-[WebResourceDelegateProxy resource:didReceiveResponse:]): forwards message
   30610         (-[WebResourceDelegateProxy resource:didReceiveData:]): forwards message
   30611         (-[WebResourceDelegateProxy resourceDidFinishLoading:]): forwards message
   30612         (-[WebResourceDelegateProxy resource:didFailLoadingWithError:]): forwards message
   30613 
   30614 2003-03-06  Richard Williamson   <rjw (a] apple.com>
   30615 
   30616         Move tweaks to WebKit API.
   30617         
   30618         Removed [WebFrame setController:] from public API.
   30619         Removed [WebDataSource stringWithData:] from public API.
   30620          
   30621         Reviewed by hyatt.
   30622 
   30623         * WebView.subproj/WebDataSource.h:
   30624         * WebView.subproj/WebDataSource.m:
   30625         (-[WebDataSource mainDocumentError]):
   30626         * WebView.subproj/WebDataSourcePrivate.h:
   30627         * WebView.subproj/WebDataSourcePrivate.m:
   30628         (-[WebDataSource _stringWithData:]):
   30629         * WebView.subproj/WebFrame.h:
   30630         * WebView.subproj/WebFrame.m:
   30631         * WebView.subproj/WebFramePrivate.h:
   30632         * WebView.subproj/WebFramePrivate.m:
   30633         * WebView.subproj/WebHTMLRepresentation.m:
   30634         * WebView.subproj/WebTextRepresentation.m:
   30635         (-[WebTextRepresentation setDataSource:]):
   30636         * WebView.subproj/WebTextView.m:
   30637         (-[WebTextView dataSourceUpdated:]):
   30638 
   30639 2003-03-06  Richard Williamson   <rjw (a] apple.com>
   30640 
   30641         Tweaks to WebKit API.
   30642         Dropped URL on WebDataSource.
   30643         Dropped start/stop loading on WebDataSource.
   30644         Drop frameForView and frameForDataSource from WebController.
   30645         Moved canShowXX to WebCapabilities.
   30646         
   30647         Reviewed by hyatt.
   30648 
   30649         * Downloads.subproj/WebDownload.m:
   30650         (-[WebDownload errorWithCode:]):
   30651         * Misc.subproj/WebNSPasteboardExtras.m:
   30652         (-[NSPasteboard _web_bestURL]):
   30653         * Misc.subproj/WebNSViewExtras.m:
   30654         (-[NSView _web_printViewHierarchy:]):
   30655         * Plugins.subproj/WebNetscapePluginDocumentView.m:
   30656         (-[WebNetscapePluginDocumentView setDataSource:]):
   30657         * Plugins.subproj/WebNetscapePluginEmbeddedView.m:
   30658         (-[WebNetscapePluginEmbeddedView dataSource]):
   30659         * WebCoreSupport.subproj/WebSubresourceClient.m:
   30660         (+[WebSubresourceClient startLoadingResource:withURL:referrer:forDataSource:]):
   30661         * WebKit.exp:
   30662         * WebView.subproj/WebController.h:
   30663         * WebView.subproj/WebController.m:
   30664         (+[WebCapabilities canShowMIMEType:]):
   30665         (+[WebCapabilities canShowFile:]):
   30666         (-[WebController mainFrame]):
   30667         * WebView.subproj/WebControllerPrivate.h:
   30668         * WebView.subproj/WebControllerPrivate.m:
   30669         (-[WebController _frameForDataSource:fromFrame:]):
   30670         (-[WebController _frameForDataSource:]):
   30671         (-[WebController _frameForView:fromFrame:]):
   30672         (-[WebController _frameForView:]):
   30673         * WebView.subproj/WebDataSource.h:
   30674         * WebView.subproj/WebDataSource.m:
   30675         * WebView.subproj/WebDataSourcePrivate.h:
   30676         * WebView.subproj/WebDataSourcePrivate.m:
   30677         (-[WebDataSource _startLoading]):
   30678         (-[WebDataSource _stopLoading]):
   30679         (-[WebDataSource _stopLoadingInternal]):
   30680         (-[WebDataSource _recursiveStopLoading]):
   30681         (-[WebDataSource _updateIconDatabaseWithURL:]):
   30682         (-[WebDataSource _loadIcon]):
   30683         (-[WebDataSource _URL]):
   30684         * WebView.subproj/WebDefaultContextMenuDelegate.m:
   30685         (-[WebDefaultContextMenuDelegate openFrameInNewWindow:]):
   30686         * WebView.subproj/WebDefaultPolicyDelegate.m:
   30687         * WebView.subproj/WebFrame.m:
   30688         (-[WebFrame stopLoading]):
   30689         * WebView.subproj/WebFramePrivate.m:
   30690         (if):
   30691         * WebView.subproj/WebHTMLViewPrivate.m:
   30692         (-[WebHTMLView _frame]):
   30693         (-[WebHTMLView _elementAtPoint:]):
   30694         * WebView.subproj/WebImageRepresentation.m:
   30695         (-[WebImageRepresentation setDataSource:]):
   30696         * WebView.subproj/WebImageView.m:
   30697         (-[WebImageView menuForEvent:]):
   30698         * WebView.subproj/WebMainResourceClient.m:
   30699         (-[WebMainResourceClient cancel]):
   30700         (-[WebMainResourceClient continueAfterContentPolicy:response:]):
   30701         (-[WebMainResourceClient resource:didReceiveData:]):
   30702         (-[WebMainResourceClient resourceDidFinishLoading:]):
   30703         * WebView.subproj/WebTextView.m:
   30704         (-[WebTextView menuForEvent:]):
   30705         * WebView.subproj/WebView.m:
   30706         (-[WebView webFrame]):
   30707         * WebView.subproj/WebViewPrivate.m:
   30708         (-[WebView _isMainFrame]):
   30709 
   30710 2003-03-06  Ed Voas  voas (a] apple.com
   30711 
   30712         Reviewed by Richard.
   30713 
   30714         Don't use _HIViewSetNeedsDisplayInRect for now. Fixes
   30715         Jaguar builds.
   30716 
   30717         * Carbon.subproj/HIViewAdapter.m:
   30718         (-[HIViewAdapter setNeedsDisplay:]):
   30719         (-[HIViewAdapter setNeedsDisplayInRect:]):
   30720 
   30721 2003-03-05  Maciej Stachowiak  <mjs (a] apple.com>
   30722 
   30723         Reviewed by John.
   30724 
   30725         Step towards policy API chantes - removed unneeded policy and URL
   30726         arguments from unableToImplementPolicy:
   30727         * WebView.subproj/WebControllerPolicyDelegate.h:
   30728         * WebView.subproj/WebFramePrivate.h:
   30729         * WebView.subproj/WebFramePrivate.m:
   30730         * WebView.subproj/WebMainResourceClient.m:
   30731         (-[WebMainResourceClient continueAfterContentPolicy:response:]):
   30732 
   30733 2003-03-06  Ed Voas  voas (a] apple.com
   30734 
   30735         Reviewed by Richard.
   30736 
   30737         First cut of Carbon view support. It will need tweaking as we go,
   30738         but I think I finally have all the assertions taken care of, and
   30739         I also believe that I have the drawing glitches all sorted out now.
   30740 
   30741         * Carbon.subproj/CarbonUtils.h: Added.
   30742         * Carbon.subproj/CarbonUtils.m: Added.
   30743         (InitWebKitForCarbon):
   30744         (PoolCleaner):
   30745         (ConvertNSImageToCGImageRef):
   30746         * Carbon.subproj/CarbonWindowAdapter.h: Added.
   30747         * Carbon.subproj/CarbonWindowAdapter.m: Added.
   30748         (+[CarbonWindowAdapter frameViewClassForStyleMask:]):
   30749         (-[CarbonWindowAdapter initWithContentRect:styleMask:backing:defer:]):
   30750         (-[CarbonWindowAdapter initWithCarbonWindowRef:takingOwnership:disableOrdering:carbon:]):
   30751         (-[CarbonWindowAdapter setViewsNeedDisplay:]):
   30752         (-[CarbonWindowAdapter initWithCarbonWindowRef:takingOwnership:]):
   30753         (-[CarbonWindowAdapter dealloc]):
   30754         (-[CarbonWindowAdapter windowRef]):
   30755         (-[CarbonWindowAdapter _hasWindowRef]):
   30756         (-[CarbonWindowAdapter _managesWindowRef]):
   30757         (-[CarbonWindowAdapter _removeWindowRef]):
   30758         (-[CarbonWindowAdapter _carbonWindowClass]):
   30759         (-[CarbonWindowAdapter reconcileToCarbonWindowBounds]):
   30760         (-[CarbonWindowAdapter sendSuperEvent:]):
   30761         (-[CarbonWindowAdapter _cancelKey:]):
   30762         (-[CarbonWindowAdapter _commonAwake]):
   30763         (-[CarbonWindowAdapter _destroyRealWindow:]):
   30764         (-[CarbonWindowAdapter _oldPlaceWindow:]):
   30765         (-[CarbonWindowAdapter _termWindowIfOwner]):
   30766         (-[CarbonWindowAdapter _windowMovedToRect:]):
   30767         (-[CarbonWindowAdapter constrainFrameRect:toScreen:]):
   30768         (-[CarbonWindowAdapter selectKeyViewFollowingView:]):
   30769         (-[CarbonWindowAdapter selectKeyViewPrecedingView:]):
   30770         (-[CarbonWindowAdapter makeKeyWindow]):
   30771         (-[CarbonWindowAdapter canBecomeKeyWindow]):
   30772         (-[CarbonWindowAdapter canBecomeMainWindow]):
   30773         (-[CarbonWindowAdapter encodeWithCoder:]):
   30774         (-[CarbonWindowAdapter initWithCoder:]):
   30775         (-[CarbonWindowAdapter setContentView:]):
   30776         (-[CarbonWindowAdapter worksWhenModal]):
   30777         (-[CarbonWindowAdapter _setModalWindowLevel]):
   30778         (-[CarbonWindowAdapter _clearModalWindowLevel]):
   30779         (-[CarbonWindowAdapter carbonHICommandIDFromActionSelector:]):
   30780         (-[CarbonWindowAdapter sendCarbonProcessHICommandEvent:]):
   30781         (-[CarbonWindowAdapter sendCarbonUpdateHICommandStatusEvent:withMenuRef:andMenuItemIndex:]):
   30782         (-[CarbonWindowAdapter _handleRootBoundsChanged]):
   30783         (-[CarbonWindowAdapter _handleContentBoundsChanged]):
   30784         (-[CarbonWindowAdapter _handleCarbonEvent:callRef:]):
   30785         (NSCarbonWindowHandleEvent):
   30786         * Carbon.subproj/CarbonWindowContentView.h: Added.
   30787         * Carbon.subproj/CarbonWindowContentView.m: Added.
   30788         * Carbon.subproj/CarbonWindowFrame.h: Added.
   30789         * Carbon.subproj/CarbonWindowFrame.m: Added.
   30790         (+[CarbonWindowFrame frameRectForContentRect:styleMask:]):
   30791         (+[CarbonWindowFrame contentRectForFrameRect:styleMask:]):
   30792         (+[CarbonWindowFrame minFrameSizeForMinContentSize:styleMask:]):
   30793         (-[CarbonWindowFrame frameRectForContentRect:styleMask:]):
   30794         (-[CarbonWindowFrame contentRectForFrameRect:styleMask:]):
   30795         (-[CarbonWindowFrame minFrameSizeForMinContentSize:styleMask:]):
   30796         (-[CarbonWindowFrame initWithFrame:styleMask:owner:]):
   30797         (-[CarbonWindowFrame dealloc]):
   30798         (-[CarbonWindowFrame _setFrameNeedsDisplay:]):
   30799         (-[CarbonWindowFrame _setSheet:]):
   30800         (-[CarbonWindowFrame _updateButtonState]):
   30801         (-[CarbonWindowFrame _windowChangedKeyState]):
   30802         (-[CarbonWindowFrame _showToolbarWithAnimation:]):
   30803         (-[CarbonWindowFrame _hideToolbarWithAnimation:]):
   30804         (-[CarbonWindowFrame closeButton]):
   30805         (-[CarbonWindowFrame styleMask]):
   30806         (-[CarbonWindowFrame dragRectForFrameRect:]):
   30807         (-[CarbonWindowFrame isOpaque]):
   30808         (-[CarbonWindowFrame minimizeButton]):
   30809         (-[CarbonWindowFrame setTitle:]):
   30810         (-[CarbonWindowFrame title]):
   30811         (-[CarbonWindowFrame _sheetHeightAdjustment]):
   30812         (-[CarbonWindowFrame _maxTitlebarTitleRect]):
   30813         (-[CarbonWindowFrame _clearDragMargins]):
   30814         (-[CarbonWindowFrame _resetDragMargins]):
   30815         * Carbon.subproj/HIViewAdapter.h: Added.
   30816         * Carbon.subproj/HIViewAdapter.m: Added.
   30817         (+[HIViewAdapter bindHIViewToNSView:nsView:]):
   30818         (+[HIViewAdapter getHIViewForNSView:]):
   30819         (+[HIViewAdapter unbindNSView:]):
   30820         (-[HIViewAdapter initWithFrame:view:]):
   30821         (-[HIViewAdapter hiView]):
   30822         (-[HIViewAdapter nextValidKeyView]):
   30823         (-[HIViewAdapter setNeedsDisplay:]):
   30824         (-[HIViewAdapter setNeedsDisplayInRect:]):
   30825         (-[CarbonSheetInterceptor _orderFrontRelativeToWindow:]):
   30826         (-[CarbonSheetInterceptor _orderOutRelativeToWindow:]):
   30827         * Carbon.subproj/HIWebView.h: Added.
   30828         * Carbon.subproj/HIWebView.m: Added.
   30829         (if):
   30830         (switch):
   30831         * Carbon.subproj/HIWebViewPriv.h: Added.
   30832         * WebKit.exp:
   30833         * WebKit.pbproj/project.pbxproj:
   30834 
   30835 === Safari-65 ===
   30836 
   30837 2003-03-05  Richard Williamson   <rjw (a] apple.com>
   30838 
   30839         API changes
   30840         WebView and WebDataSource give up -(WebController *)controller.
   30841         WebView gets -(WebFrame *)webFrame.
   30842         
   30843         Reviewed by cblu.
   30844 
   30845         * Plugins.subproj/WebNetscapePluginDocumentView.m:
   30846         (-[WebNetscapePluginDocumentView setDataSource:]):
   30847         * Plugins.subproj/WebNetscapePluginEmbeddedView.m:
   30848         (-[WebNetscapePluginEmbeddedView dataSource]):
   30849         * Plugins.subproj/WebNullPluginView.m:
   30850         (-[WebNullPluginView viewDidMoveToWindow]):
   30851         * WebCoreSupport.subproj/WebBridge.m:
   30852         (-[WebBridge startLoadingResource:withURL:]):
   30853         * WebCoreSupport.subproj/WebSubresourceClient.m:
   30854         (+[WebSubresourceClient startLoadingResource:withURL:referrer:forDataSource:]):
   30855         (-[WebSubresourceClient receivedError:]):
   30856         (-[WebSubresourceClient resourceDidFinishLoading:]):
   30857         * WebKit.pbproj/project.pbxproj:
   30858         * WebView.subproj/WebBaseResourceHandleDelegate.m:
   30859         (-[WebBaseResourceHandleDelegate setDataSource:]):
   30860         * WebView.subproj/WebController.h:
   30861         * WebView.subproj/WebController.m:
   30862         (-[WebController backForwardList]):
   30863         (-[WebController setUsesBackForwardList:]):
   30864         * WebView.subproj/WebDataSource.h:
   30865         * WebView.subproj/WebDataSource.m:
   30866         * WebView.subproj/WebDataSourcePrivate.h:
   30867         * WebView.subproj/WebDataSourcePrivate.m:
   30868         (-[WebDataSource _controller]):
   30869         (-[WebDataSource _receivedError:complete:]):
   30870         (-[WebDataSource _loadIcon]):
   30871         * WebView.subproj/WebFrame.h:
   30872         * WebView.subproj/WebFramePrivate.m:
   30873         (switch):
   30874         * WebView.subproj/WebHTMLViewPrivate.m:
   30875         (-[WebHTMLView _controller]):
   30876         (-[WebHTMLView _frame]):
   30877         (-[WebHTMLView _elementAtPoint:]):
   30878         * WebView.subproj/WebImageView.m:
   30879         (-[WebImageView controller]):
   30880         (-[WebImageView menuForEvent:]):
   30881         * WebView.subproj/WebMainResourceClient.m:
   30882         (-[WebMainResourceClient interruptForPolicyChangeAndKeepLoading:]):
   30883         (-[WebMainResourceClient continueAfterNavigationPolicy:formState:]):
   30884         (-[WebMainResourceClient resource:willSendRequest:]):
   30885         (-[WebMainResourceClient continueAfterContentPolicy:response:]):
   30886         (-[WebMainResourceClient checkContentPolicyForResponse:andCallSelector:]):
   30887         (-[WebMainResourceClient resource:didReceiveResponse:]):
   30888         (-[WebMainResourceClient resource:didReceiveData:]):
   30889         (-[WebMainResourceClient resourceDidFinishLoading:]):
   30890         (-[WebMainResourceClient resource:didFailLoadingWithError:]):
   30891         * WebView.subproj/WebTextView.m:
   30892         (-[WebTextView menuForEvent:]):
   30893         * WebView.subproj/WebView.h:
   30894         * WebView.subproj/WebView.m:
   30895         (-[WebView webFrame]):
   30896         (-[WebView concludeDragOperation:]):
   30897         * WebView.subproj/WebViewPrivate.h:
   30898         * WebView.subproj/WebViewPrivate.m:
   30899         (-[WebView _controller]):
   30900 
   30901 2003-03-05  Maciej Stachowiak  <mjs (a] apple.com>
   30902 
   30903         Reviewed by Ken.
   30904 
   30905         * WebView.subproj/WebFramePrivate.m:
   30906         (_recursiveGoToItem:fromItem:withLoadType:): Account for
   30907         possibility of nil target.
   30908 
   30909 2003-03-05  Maciej Stachowiak  <mjs (a] apple.com>
   30910 
   30911         Reviewed by Darin.
   30912 
   30913         - fixed crash when going back due to frame name of nil since we
   30914         don't force the name "_top" any more.
   30915         * WebView.subproj/WebController.m:
   30916         (-[WebController _goToItem:withLoadType:]): Handle nil target
   30917         properly.
   30918 
   30919 2003-03-05  Darin Adler  <darin (a] apple.com>
   30920 
   30921         Reviewed by John.
   30922 
   30923         - fixed 3189441 -- REGRESSION: layout tests crash building generated frame name
   30924 
   30925         * WebView.subproj/WebFramePrivate.m: (-[WebFrame _addFramePathToString:]):
   30926         Handle a frame name of nil here, since we don't force the name "_top" any more.
   30927 
   30928 2003-03-04  Trey Matteson  <trey (a] apple.com>
   30929 
   30930         Support for autofill.  These are just two new glue routines
   30931         that call down through the bridge.  They allow regexp driven
   30932         binding of AB data to form elements.
   30933 
   30934         Reviewed by Maciej.
   30935 
   30936         * WebView.subproj/WebHTMLRepresentation.h:
   30937         * WebView.subproj/WebHTMLRepresentation.m:
   30938         (-[WebHTMLRepresentation searchForLabels:beforeElement:]):
   30939         Call straight to bridge.
   30940         (-[WebHTMLRepresentation matchLabels:againstElement:]):
   30941         Call straight to bridge.
   30942 
   30943 2003-03-04  Maciej Stachowiak  <mjs (a] apple.com>
   30944 
   30945         Reinstate missing part of last checking.
   30946         * WebView.subproj/WebFramePrivate.m:
   30947 
   30948 2003-03-04  Maciej Stachowiak  <mjs (a] apple.com>
   30949 
   30950         Reviewed by Trey.
   30951 
   30952         Added the ability to set the top-level frame name via the
   30953         WebController initializer. Also made [[controller mainFrame]
   30954         frameName] return the true top-level frame name instead of "_top",
   30955         since that is already special-cased anywhere it needs to be.
   30956         * WebView.subproj/WebController.h:
   30957         * WebView.subproj/WebController.m:
   30958         (-[WebController init]): Update for change to designated initializer.
   30959         (-[WebController initWithView:]): New convenience initializer.
   30960         (-[WebController initWithView:frameName:setName:]): Added ability to set
   30961         top-level frame name.
   30962         * WebView.subproj/WebControllerPrivate.h:
   30963         * WebView.subproj/WebControllerPrivate.m:
   30964         (-[WebControllerPrivate dealloc]): Remove topLevelFrameNAme field.
   30965         (-[WebController _setTopLevelFrameName:]): Actually set it
   30966         on the top level frame, no point to keeping it here.
   30967         (-[WebController _findFrameInThisWindowNamed:]): No more need to
   30968         special-case top-level frame name.
   30969         * WebView.subproj/WebFrame.m:
   30970         (-[WebFrame initWithName:webView:controller:]): call [self _setName:] instead 
   30971         of [_private setName:]
   30972         * WebView.subproj/WebFramePrivate.h:
   30973         * WebView.subproj/WebFramePrivate.m:
   30974         (-[WebFrame _setName:]): Don't let the name get set to _blank.
   30975 2003-03-04  John Sullivan  <sullivan (a] apple.com>
   30976 
   30977         Reviewed by Darin
   30978 
   30979         * Misc.subproj/WebKitNSStringExtras.h:
   30980         * Misc.subproj/WebKitNSStringExtras.m:
   30981         (-[NSString _web_widthWithFont:]):
   30982         (-[NSString _web_drawAtPoint:font:textColor:):
   30983         removed the unnecessary string parameter from these two
   30984         NSString methods.
   30985 
   30986 2003-03-04  Darin Adler  <darin (a] apple.com>
   30987 
   30988         Reviewed by Maciej.
   30989 
   30990         - got rid of some framework initialization (working on bug 3185161)
   30991 
   30992         * WebView.subproj/WebPreferences.m:
   30993         (-[WebPreferences _postPreferencesChangesNotification]): Moved this function up.
   30994         (+[WebPreferences standardPreferences]): Call _postPreferencesChangesNotification when this is made,
   30995         for consistency with the old behavior.
   30996         (+[WebPreferences initialize]): Changed to initialize from load, and got rid of stuff we don't want
   30997         to do from inside an initialize function.
   30998 
   30999 2003-03-04  Richard Williamson   <rjw (a] apple.com>
   31000 
   31001         Remove initWithURL: and frameName from WebDataSource public API.
   31002         
   31003         Reviewed by trey.
   31004 
   31005         * WebView.subproj/WebDataSource.h:
   31006         * WebView.subproj/WebDataSource.m:
   31007         (-[WebDataSource webFrame]):
   31008 
   31009 2003-03-04  Darin Adler  <darin (a] apple.com>
   31010 
   31011         * English.lproj/StringsNotToBeLocalized.txt: Updated for recent changes.
   31012         * English.lproj/Localizable.strings: Regenerated.
   31013 
   31014 2003-03-03  Richard Williamson   <rjw (a] apple.com>
   31015 
   31016         Switch all WebController's delegate to use informal protocols.
   31017         
   31018         Reviewed by trey.
   31019 
   31020         * Plugins.subproj/WebBaseNetscapePluginView.m:
   31021         (-[WebBaseNetscapePluginView status:]):
   31022         * Plugins.subproj/WebNetscapePluginDocumentView.m:
   31023         (-[WebNetscapePluginDocumentView setDataSource:]):
   31024         * Plugins.subproj/WebNullPluginView.m:
   31025         (-[WebNullPluginView viewDidMoveToWindow]):
   31026         * Plugins.subproj/WebPluginController.m:
   31027         (-[WebPluginController showStatus:]):
   31028         * WebCoreSupport.subproj/WebBridge.h:
   31029         * WebCoreSupport.subproj/WebBridge.m:
   31030         (-[WebBridge createWindowWithURL:frameName:]):
   31031         (-[WebBridge showWindow]):
   31032         (-[WebBridge areToolbarsVisible]):
   31033         (-[WebBridge setToolbarsVisible:]):
   31034         (-[WebBridge isStatusBarVisible]):
   31035         (-[WebBridge setStatusBarVisible:]):
   31036         (-[WebBridge setWindowFrame:]):
   31037         (-[WebBridge setStatusText:]):
   31038         (-[WebBridge objectLoadedFromCacheWithURL:response:size:]):
   31039         (-[WebBridge setWebFrame:]):
   31040         * WebKit.exp:
   31041         * WebKit.pbproj/project.pbxproj:
   31042         * WebView.subproj/WebBaseResourceHandleDelegate.h:
   31043         * WebView.subproj/WebBaseResourceHandleDelegate.m:
   31044         (-[WebBaseResourceHandleDelegate resourceLoadDelegate]):
   31045         (-[WebBaseResourceHandleDelegate downloadDelegate]):
   31046         (-[WebBaseResourceHandleDelegate resource:willSendRequest:]):
   31047         (-[WebBaseResourceHandleDelegate resource:didReceiveResponse:]):
   31048         (-[WebBaseResourceHandleDelegate resource:didReceiveData:]):
   31049         (-[WebBaseResourceHandleDelegate resourceDidFinishLoading:]):
   31050         (-[WebBaseResourceHandleDelegate resource:didFailLoadingWithError:]):
   31051         (-[WebBaseResourceHandleDelegate cancelWithError:]):
   31052         (-[WebBaseResourceHandleDelegate notifyDelegatesOfInterruptionByPolicyChange]):
   31053         * WebView.subproj/WebContextMenuDelegate.h:
   31054         * WebView.subproj/WebController.h:
   31055         * WebView.subproj/WebController.m:
   31056         (-[WebController setWindowOperationsDelegate:]):
   31057         (-[WebController windowOperationsDelegate]):
   31058         (-[WebController setResourceLoadDelegate:]):
   31059         (-[WebController resourceLoadDelegate]):
   31060         (-[WebController setDownloadDelegate:]):
   31061         (-[WebController downloadDelegate]):
   31062         (-[WebController setContextMenuDelegate:]):
   31063         (-[WebController contextMenuDelegate]):
   31064         (-[WebController setPolicyDelegate:]):
   31065         (-[WebController policyDelegate]):
   31066         (-[WebController setLocationChangeDelegate:]):
   31067         (-[WebController locationChangeDelegate]):
   31068         (-[WebController stringByEvaluatingJavaScriptFromString:]):
   31069         * WebView.subproj/WebControllerPolicyDelegate.h:
   31070         * WebView.subproj/WebControllerPrivate.h:
   31071         * WebView.subproj/WebControllerPrivate.m:
   31072         (-[WebController _openNewWindowWithRequest:behind:]):
   31073         (-[WebController _menuForElement:]):
   31074         (-[WebController _mouseDidMoveOverElement:modifierFlags:]):
   31075         (-[WebController _locationChangeDelegateForwarder]):
   31076         (-[WebController _resourceLoadDelegateForwarder]):
   31077         (-[WebController _policyDelegateForwarder]):
   31078         (-[WebController _contextMenuDelegateForwarder]):
   31079         (-[WebController _windowOperationsDelegateForwarder]):
   31080         (-[_WebSafeForwarder initWithTarget:defaultTarget:templateClass:]):
   31081         (-[_WebSafeForwarder forwardInvocation:]):
   31082         (-[_WebSafeForwarder methodSignatureForSelector:]):
   31083         * WebView.subproj/WebDataSource.h:
   31084         * WebView.subproj/WebDataSourcePrivate.m:
   31085         (-[WebDataSource _startLoading:]):
   31086         (-[WebDataSource _setTitle:]):
   31087         (-[WebDataSource _setRequest:]):
   31088         (-[WebDataSource _updateIconDatabaseWithURL:]):
   31089         * WebView.subproj/WebDefaultContextMenuDelegate.h:
   31090         * WebView.subproj/WebDefaultContextMenuDelegate.m:
   31091         (+[WebDefaultContextMenuDelegate sharedContextMenuDelegate]):
   31092         * WebView.subproj/WebDefaultLocationChangeDelegate.h: Added.
   31093         * WebView.subproj/WebDefaultLocationChangeDelegate.m: Added.
   31094         (+[WebDefaultLocationChangeDelegate sharedLocationChangeDelegate]):
   31095         (-[WebDefaultLocationChangeDelegate locationChangeStartedForDataSource:]):
   31096         (-[WebDefaultLocationChangeDelegate serverRedirectedForDataSource:]):
   31097         (-[WebDefaultLocationChangeDelegate locationChangeCommittedForDataSource:]):
   31098         (-[WebDefaultLocationChangeDelegate receivedPageTitle:forDataSource:]):
   31099         (-[WebDefaultLocationChangeDelegate receivedPageIcon:forDataSource:]):
   31100         (-[WebDefaultLocationChangeDelegate locationChangeDone:forDataSource:]):
   31101         (-[WebDefaultLocationChangeDelegate willCloseLocationForDataSource:]):
   31102         (-[WebDefaultLocationChangeDelegate locationChangedWithinPageForDataSource:]):
   31103         (-[WebDefaultLocationChangeDelegate clientWillRedirectTo:delay:fireDate:forFrame:]):
   31104         (-[WebDefaultLocationChangeDelegate clientRedirectCancelledForFrame:]):
   31105         * WebView.subproj/WebDefaultPolicyDelegate.h:
   31106         * WebView.subproj/WebDefaultPolicyDelegate.m:
   31107         (+[WebDefaultPolicyDelegate sharedPolicyDelegate]):
   31108         * WebView.subproj/WebDefaultPolicyDelegatePrivate.h: Removed.
   31109         * WebView.subproj/WebDefaultResourceLoadDelegate.h: Added.
   31110         * WebView.subproj/WebDefaultResourceLoadDelegate.m: Added.
   31111         (+[WebDefaultResourceLoadDelegate sharedResourceLoadDelegate]):
   31112         (-[WebDefaultResourceLoadDelegate identifierForInitialRequest:fromDataSource:]):
   31113         (-[WebDefaultResourceLoadDelegate resource:willSendRequest:fromDataSource:]):
   31114         (-[WebDefaultResourceLoadDelegate resource:didReceiveResponse:fromDataSource:]):
   31115         (-[WebDefaultResourceLoadDelegate resource:didReceiveContentLength:fromDataSource:]):
   31116         (-[WebDefaultResourceLoadDelegate resource:didFinishLoadingFromDataSource:]):
   31117         (-[WebDefaultResourceLoadDelegate resource:didFailLoadingWithError:fromDataSource:]):
   31118         (-[WebDefaultResourceLoadDelegate pluginFailedWithError:dataSource:]):
   31119         * WebView.subproj/WebDefaultWindowOperationsDelegate.h: Added.
   31120         * WebView.subproj/WebDefaultWindowOperationsDelegate.m: Added.
   31121         (+[WebDefaultWindowOperationsDelegate sharedWindowOperationsDelegate]):
   31122         (-[WebDefaultWindowOperationsDelegate runJavaScriptConfirmPanelWithMessage:]):
   31123         (-[WebDefaultWindowOperationsDelegate runJavaScriptTextInputPanelWithPrompt:defaultText:]):
   31124         (-[WebDefaultWindowOperationsDelegate runOpenPanelForFileButtonWithResultListener:]):
   31125         * WebView.subproj/WebFrame.m:
   31126         (-[WebFrame initWithName:webView:controller:]):
   31127         (-[WebFrame findOrCreateFrameNamed:]):
   31128         * WebView.subproj/WebFramePrivate.m:
   31129         (if):
   31130         (switch):
   31131         * WebView.subproj/WebLocationChangeDelegate.h:
   31132         * WebView.subproj/WebLocationChangeDelegate.m: Removed.
   31133         * WebView.subproj/WebMainResourceClient.h:
   31134         * WebView.subproj/WebMainResourceClient.m:
   31135         (-[WebMainResourceClient interruptForPolicyChangeAndKeepLoading:]):
   31136         (-[WebMainResourceClient continueAfterContentPolicy:response:]):
   31137         (-[WebMainResourceClient checkContentPolicyForResponse:andCallSelector:]):
   31138         * WebView.subproj/WebResourceLoadDelegate.h:
   31139         * WebView.subproj/WebWindowOperationsDelegate.h:
   31140 
   31141 2003-03-03  Darin Adler  <darin (a] apple.com>
   31142 
   31143         Reviewed by Richard.
   31144 
   31145         - simplified the custom user agent and text encoding methods as per request from documentation group
   31146 
   31147         * WebView.subproj/WebController.h: Removed hasCustomUserAgent, resetUserAgent, hasCustomTextEncoding,
   31148         and resetTextEncoding. Updated comments to indicate what nil means.
   31149         
   31150         * WebView.subproj/WebController.m:
   31151         (-[WebController setCustomUserAgent:]): Remove assertion, allow nil.
   31152         (-[WebController customUserAgent]): Remove nil check.
   31153         (-[WebController setCustomTextEncodingName:]): Remove assertion, allow nil, and do an == check along
   31154         with the isEqualToString: check to handle the nil case.
   31155         (-[WebController customTextEncodingName]): Remove nil check.
   31156 
   31157 2003-03-01  Maciej Stachowiak  <mjs (a] apple.com>
   31158 
   31159         Reviewed by Darin.
   31160 
   31161         - fixed 3163855 - Need control over certain potential dialogs/sheets
   31162 
   31163         * WebCoreSupport.subproj/WebBridge.h:
   31164         * WebCoreSupport.subproj/WebBridge.m:
   31165         (-[WebBridge runJavaScriptAlertPanelWithMessage:]): Moved here from
   31166         view factory. Call the bridge instead of popping up the dialog.
   31167         (-[WebBridge runJavaScriptConfirmPanelWithMessage:]): Likewise.
   31168         (-[WebBridge runJavaScriptTextInputPanelWithPrompt:defaultText:returningText:]):
   31169         Likewise.
   31170         (-[WebBridge fileButton]): Moved here from view factory, so we can
   31171         pass the bridge to the button.
   31172         (-[WebBridge runOpenPanelForFileButtonWithResultListener:]): Call the delegate.
   31173         * WebCoreSupport.subproj/WebFileButton.h:
   31174         * WebCoreSupport.subproj/WebFileButton.m:
   31175         (-[WebFileButton initWithBridge:]): New method so this object knows about the bridge.
   31176         (-[WebFileButton beginSheet]): Instead of popping up the sheet directly,
   31177         call the bridge (which will call the delegate).
   31178         (-[WebFileButton chooseFilename:]): Update for the new filename.
   31179         (-[WebFileButton cancel]): Do nothing.
   31180         * WebCoreSupport.subproj/WebViewFactory.m: Removed some methods.
   31181         * WebKit.exp: Export .objc_class_WebJavaScriptTextInputPanel (for now).
   31182         * WebKit.pbproj/project.pbxproj: Export WebJavaScriptTextInputPanel.h (for now).
   31183         * WebView.subproj/WebWindowOperationsDelegate.h: Added new methods.
   31184 
   31185 2003-03-01  Richard Williamson   <rjw (a] apple.com>
   31186 
   31187         Reviewed by Chris & Darin.
   31188 
   31189         Fixed frameRequiredForMIMEType: to correctly check for BOTH
   31190         netscape plugins and cocoa plugins.
   31191         
   31192         * WebCoreSupport.subproj/WebBridge.m:
   31193         (-[WebBridge frameRequiredForMIMEType:]):
   31194         
   31195         Made WebPluginViewFactory.h private (SPI) to provide access to
   31196         plugin package keys.
   31197         
   31198         * WebKit.pbproj/project.pbxproj:
   31199 
   31200 2003-02-28  Richard Williamson   <rjw (a] apple.com>
   31201 
   31202         Make WebDOM* classes private instead of public.  This change
   31203         was made before but the project file must have been accidentally
   31204         overwritten.  Make the WebPlugin* classes private.
   31205         
   31206         * WebKit.pbproj/project.pbxproj:
   31207 
   31208 7003-02-28  Trey Matteson  <trey (a] apple.com>
   31209 
   31210         Various support for autofill/autocomplete.
   31211 
   31212         We receive a form along with the formValues from WC on submit, which we
   31213         just pass along to the FormDelegate.  As part of this we store the values
   31214         and the form together in a new private WebFormState class.  Lots of glue
   31215         for passing this around instead of just the values dict.
   31216 
   31217         Send willCloseLocationForDataSource when we are finally through with a page.
   31218 
   31219         Reviewed by Darin.
   31220 
   31221         * WebCoreSupport.subproj/WebBridge.m:
   31222         (-[WebBridge loadURL:reload:triggeringEvent:form:formValues:]):
   31223         Pass along form along with values
   31224         (-[WebBridge postWithURL:data:contentType:triggeringEvent:form:formValues:]):
   31225         Pass along form along with values
   31226         * WebView.subproj/WebDataSourcePrivate.m:
   31227         (-[WebDataSource _commitIfReady:]):  Call frame to send willCloseLocationForDataSource.
   31228         * WebView.subproj/WebFormDelegate.h:
   31229         * WebView.subproj/WebFormDelegate.m:
   31230         (-[WebFormDelegate frame:willSubmitForm:withValues:]):  Pass form along with values
   31231         * WebView.subproj/WebFrame.m:
   31232         (-[WebFrame loadRequest:]):  Pass FormState instead of just values.
   31233         (-[WebFrame reload]):  Pass FormState instead of just values.
   31234         * WebView.subproj/WebFramePrivate.h:
   31235         * WebView.subproj/WebFramePrivate.m:
   31236         <<prepare-ChangeLog flailed on this file>>
   31237         Lots of routines were we pass FormState instead of the form values dict
   31238         -([WebFrame _closeOldDataSources]):  New, sends willCloseLocation for whole frame tree.
   31239         New, trivial, WebFormState class.
   31240         * WebView.subproj/WebHTMLRepresentation.h:
   31241         * WebView.subproj/WebHTMLRepresentation.m:
   31242         (-[WebHTMLRepresentation formIsLoginForm:]):  Changed to take form instead of form field.
   31243         (-[WebHTMLRepresentation formForElement:]):  New, just pass through bridge.
   31244         (-[WebHTMLRepresentation controlsInForm:]):    New, just pass through bridge.
   31245         * WebView.subproj/WebLocationChangeDelegate.h:  Add willCloseLocationForDataSource.
   31246         * WebView.subproj/WebLocationChangeDelegate.m:
   31247         (-[WebLocationChangeDelegate willCloseLocationForDataSource:]):  Default impl.
   31248         * WebView.subproj/WebMainResourceClient.m:
   31249         (-[WebMainResourceClient continueAfterNavigationPolicy:formState:]):
   31250         Pass FormState instead of just values.
   31251         (-[WebMainResourceClient resource:willSendRequest:]):
   31252         Pass FormState instead of just values.
   31253 
   31254 2003-02-28  Maciej Stachowiak  <mjs (a] apple.com>
   31255 
   31256         Reviewed by Trey.
   31257 
   31258         - fixed 3180170 - filepile.com does not work correctly
   31259 
   31260         I fixed this by making referrer work correctly for targetted
   31261         cross-frame and cross-window links. It is still not working right
   31262         for JavaScript window.open though.
   31263         * WebCoreSupport.subproj/WebBridge.m:
   31264         (-[WebBridge createWindowWithURL:frameName:]): Set referrer.
   31265         (-[WebBridge loadURL:referrer:reload:triggeringEvent:formValues:]): Pass referrer
   31266         along to frame.
   31267         (-[WebBridge postWithURL:referrer:data:contentType:triggeringEvent:formValues:]):
   31268         Likewise.
   31269         * WebView.subproj/WebFramePrivate.h:
   31270         * WebView.subproj/WebFramePrivate.m:
   31271         (-[WebFrame _loadItem:fromItem:withLoadType:]): Pass referrer.
   31272         (-[WebFrame
   31273         _loadURL:referrer:loadType:triggeringEvent:formValues:]): Use
   31274         passed-in referrer (link could have been clicked in another
   31275         frame).
   31276         (-[WebFrame _loadURL:intoChild:]): Pass referrer.
   31277         (-[WebFrame
   31278         _postWithURL:referrer:data:contentType:triggeringEvent:formValues:]):
   31279         Use passed-in referrer.
   31280 
   31281 2003-02-28  Darin Adler  <darin (a] apple.com>
   31282 
   31283         Reviewed by Trey.
   31284 
   31285         - fixed 3183575 -- <https://sbcreg.sbcglobal.net> casuses infinite refresh & crash
   31286         
   31287         The page had history.forward(1) which was causing us to reload.
   31288 
   31289         * WebCoreSupport.subproj/WebBridge.m: (-[WebBridge goBackOrForward:]):
   31290         Handle edge cases by checking backListCount and forwardListCount at this level.
   31291         Be sure to do nothing when we are already on the right page.
   31292 
   31293         * History.subproj/WebBackForwardList.h: Added forwardListCount, updated comment for entryAtIndex.
   31294         * History.subproj/WebBackForwardList.m:
   31295         (-[WebBackForwardList forwardListCount]): Added.
   31296         (-[WebBackForwardList entryAtIndex:]): Return nil for out of range indices.
   31297         
   31298 2003-02-27  Maciej Stachowiak  <mjs (a] apple.com>
   31299 
   31300         Reviewed by Richard.
   31301 
   31302         * WebCoreSupport.subproj/WebBridge.m:
   31303         (-[WebBridge window]): Avoid calling removed call.
   31304         * WebView.subproj/WebView.m: Remove override of window method.
   31305         * WebView.subproj/WebWindowOperationsDelegate.h: 
   31306         Adjust for new API.
   31307 === Safari-64 ===
   31308 
   31309 === Safari-63 ===
   31310 
   31311 2003-02-26  Maciej Stachowiak  <mjs (a] apple.com>
   31312 
   31313         Reviewed by Dave.
   31314 
   31315         - fixed reproducible hang at http://asp.eltonsoft.dk/cast/get.asp?cat=Quicktime
   31316 
   31317         WebKit's processing time was O(N^3) in the number of
   31318         frames. Improved it to O(N^2) by storing frame pointer directly in
   31319         WebDataSource instead of linear scan. Could still be improved more.
   31320         * WebView.subproj/WebDataSource.m:
   31321         (-[WebDataSource webFrame]):
   31322         * WebView.subproj/WebDataSourcePrivate.h:
   31323         * WebView.subproj/WebDataSourcePrivate.m:
   31324         (-[WebDataSourcePrivate dealloc]):
   31325         (-[WebDataSource _stopLoadingWithError:]):
   31326         (-[WebDataSource _setWebFrame:]):
   31327         * WebView.subproj/WebFramePrivate.m:
   31328         (-[WebFrame _detachFromParent]):
   31329         (-[WebFrame _setDataSource:]):
   31330         (-[WebFrame _transitionToCommitted:]):
   31331         (-[WebFrame _isLoadComplete]):
   31332         (-[WebFrame _clearProvisionalDataSource]):
   31333         (-[WebFrame _continueLoadRequestAfterNavigationPolicy:formValues:]):
   31334         (-[WebFrame _loadDataSource:withLoadType:formValues:]):
   31335         (-[WebFrame _setProvisionalDataSource:]):
   31336 
   31337 2003-02-26  Richard Williamson   <rjw (a] apple.com>
   31338 
   31339         Fixed 3102760.  Removed WebDocumentDragSettings from API.
   31340         
   31341         Reviewed by Chris.
   31342 
   31343         * WebView.subproj/WebDocument.h:
   31344         * WebView.subproj/WebHTMLView.h:
   31345         * WebView.subproj/WebHTMLView.m:
   31346         * WebView.subproj/WebImageView.h:
   31347         * WebView.subproj/WebImageView.m:
   31348         (-[WebImageView initWithFrame:]):
   31349         (-[WebImageView mouseDragged:]):
   31350         * WebView.subproj/WebTextView.h:
   31351         * WebView.subproj/WebTextView.m:
   31352         (-[WebTextView initWithFrame:]):
   31353         (-[WebTextView layout]):
   31354 
   31355 2003-02-25  David Hyatt  <hyatt (a] apple.com>
   31356 
   31357         Fix for bug #3181249.  Ensure the padding argument gets passed
   31358         through properly (instead of just passing 0).
   31359         Reviewed by darin
   31360 
   31361         * WebCoreSupport.subproj/WebTextRenderer.m:
   31362 
   31363 2003-02-25  John Sullivan  <sullivan (a] apple.com>
   31364 
   31365         WebKit part of fix for 3181290 -- need call to reload all bookmarks from disk, 
   31366         for synching's sake.
   31367 
   31368         I ended up not adding a new call, but making the existing loadBookmarkGroup
   31369         work better when called after the initial load. It wasn't doing anything wrong
   31370         before; it just wasn't passing along enough information to clients to enable
   31371         them to do the right thing.
   31372 
   31373         Reviewed by Trey
   31374 
   31375         * Bookmarks.subproj/WebBookmarkGroup.h:
   31376         new extern NSStrings WebBookmarksWillBeReloadedNotification and
   31377         WebBookmarksWereReloadedNotification
   31378 
   31379         * Bookmarks.subproj/WebBookmarkGroup.m:
   31380         (-[WebBookmarkGroup _sendNotification:forBookmark:children:]):
   31381         soften assert so it doesn't fire on the new cases.
   31382 
   31383         (-[WebBookmarkGroup _bookmarksWillBeReloaded]):
   31384         send WebBookmarksWillBeReloadedNotification
   31385         (-[WebBookmarkGroup _bookmarksWereReloaded]):
   31386         send WebBookmarksWereReloadedNotification
   31387 
   31388         (-[WebBookmarkGroup _loadBookmarkGroupGuts]):
   31389         bracket the load with the new notification-sending calls
   31390 
   31391         * WebKit.exp:
   31392         add the two new extern NSStrings
   31393 
   31394 2003-02-25  Darin Adler  <darin (a] apple.com>
   31395 
   31396         Reviewed by John.
   31397 
   31398         - fixed 3176962 -- add KHTML somewhere in the user agent string
   31399 
   31400         * English.lproj/StringsNotToBeLocalized.txt: Change "(like Gecko)" to "(KHTML, like Gecko)".
   31401         * WebView.subproj/WebController.m: (-[WebController userAgentForURL:]): Ditto.
   31402 
   31403 2003-02-20  Chris Blumenberg  <cblu (a] apple.com>
   31404 
   31405         Added _web_superviewOfClass:stoppingAtClass:. Climbs up hierarchy and returns nil when stoppingAtClass is hit.
   31406 
   31407         Reviewed by darin.
   31408 
   31409         * Misc.subproj/WebNSViewExtras.h:
   31410         * Misc.subproj/WebNSViewExtras.m:
   31411         (-[NSView _web_superviewOfClass:stoppingAtClass:]):
   31412         (-[NSView _web_superviewOfClass:]):
   31413 
   31414 2003-02-20  Ken Kocienda  <kocienda (a] apple.com>
   31415 
   31416         Reviewed by David
   31417 
   31418         Modified to use new WebFoundation API. Though there seem to be
   31419         many changes, they are all "uninteresting" in that the changes
   31420         only moved code to use new method and class names.
   31421 
   31422         * Downloads.subproj/WebDownload.h:
   31423         * Downloads.subproj/WebDownload.m:
   31424         (-[WebDownload initWithRequest:delegate:]):
   31425         (-[WebDownload _initWithLoadingHandle:request:response:delegate:]):
   31426         (-[WebDownload createFileIfNecessary]):
   31427         * Downloads.subproj/WebDownloadPrivate.h:
   31428         * Misc.subproj/WebIconLoader.h:
   31429         * Misc.subproj/WebIconLoader.m:
   31430         (-[WebIconLoader startLoading]):
   31431         (-[WebIconLoader resourceDidFinishLoading:]):
   31432         (-[WebIconLoader resource:willSendRequest:]):
   31433         (-[WebIconLoader resource:didReceiveResponse:]):
   31434         (-[WebIconLoader resource:didReceiveData:]):
   31435         (-[WebIconLoader resource:didFailLoadingWithError:]):
   31436         * Misc.subproj/WebResourceResponseExtras.h:
   31437         * Misc.subproj/WebResourceResponseExtras.m:
   31438         (-[WebHTTPResponse suggestedFilenameForSaving]):
   31439         * Plugins.subproj/WebBaseNetscapePluginStream.h:
   31440         * Plugins.subproj/WebBaseNetscapePluginStream.m:
   31441         (-[WebBaseNetscapePluginStream setResponse:]):
   31442         * Plugins.subproj/WebBaseNetscapePluginView.m:
   31443         (-[WebBaseNetscapePluginView sendEvent:]):
   31444         (-[WebBaseNetscapePluginView requestWithURLCString:]):
   31445         (-[WebBaseNetscapePluginView loadPluginRequest:]):
   31446         (-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:]):
   31447         (-[WebBaseNetscapePluginView getURLNotify:target:notifyData:]):
   31448         (-[WebBaseNetscapePluginView getURL:target:]):
   31449         (-[WebBaseNetscapePluginView postURLNotify:target:len:buf:file:notifyData:]):
   31450         (-[WebPluginRequest initWithRequest:frame:notifyData:]):
   31451         (-[WebPluginRequest request]):
   31452         * Plugins.subproj/WebBaseNetscapePluginViewPrivate.h:
   31453         * Plugins.subproj/WebNetscapePluginDocumentView.m:
   31454         * Plugins.subproj/WebNetscapePluginEmbeddedView.m:
   31455         (-[WebNetscapePluginEmbeddedView viewDidMoveToWindow]):
   31456         * Plugins.subproj/WebNetscapePluginRepresentation.m:
   31457         (-[WebNetscapePluginRepresentation receivedError:withDataSource:]):
   31458         * Plugins.subproj/WebNetscapePluginStream.h:
   31459         * Plugins.subproj/WebNetscapePluginStream.m:
   31460         (-[WebNetscapePluginStream initWithRequest:pluginPointer:notifyData:]):
   31461         (-[WebNetscapePluginStream resource:didReceiveResponse:]):
   31462         (-[WebNetscapePluginStream resource:didReceiveData:]):
   31463         (-[WebNetscapePluginStream resourceDidFinishLoading:]):
   31464         (-[WebNetscapePluginStream resource:didFailLoadingWithError:]):
   31465         * Plugins.subproj/WebPluginController.m:
   31466         (-[WebPluginController showURL:inFrame:]):
   31467         * WebCoreSupport.subproj/WebBridge.m:
   31468         (-[WebBridge createWindowWithURL:frameName:]):
   31469         (-[WebBridge objectLoadedFromCacheWithURL:response:size:]):
   31470         (-[WebBridge defersLoading]):
   31471         (-[WebBridge setDefersLoading:]):
   31472         (-[WebBridge loadEmptyDocumentSynchronously]):
   31473         * WebCoreSupport.subproj/WebCookieAdapter.m:
   31474         (-[WebCookieAdapter cookiesForURL:]):
   31475         (-[WebCookieAdapter setCookies:forURL:policyBaseURL:]):
   31476         * WebCoreSupport.subproj/WebSubresourceClient.h:
   31477         * WebCoreSupport.subproj/WebSubresourceClient.m:
   31478         (+[WebSubresourceClient startLoadingResource:withURL:referrer:forDataSource:]):
   31479         (-[WebSubresourceClient resource:willSendRequest:]):
   31480         (-[WebSubresourceClient resource:didReceiveResponse:]):
   31481         (-[WebSubresourceClient resource:didReceiveData:]):
   31482         (-[WebSubresourceClient resourceDidFinishLoading:]):
   31483         (-[WebSubresourceClient resource:didFailLoadingWithError:]):
   31484         * WebView.subproj/WebBaseResourceHandleDelegate.h:
   31485         * WebView.subproj/WebBaseResourceHandleDelegate.m:
   31486         (-[WebBaseResourceHandleDelegate startLoading:]):
   31487         (-[WebBaseResourceHandleDelegate loadWithRequest:]):
   31488         (-[WebBaseResourceHandleDelegate setDefersCallbacks:]):
   31489         (-[WebBaseResourceHandleDelegate resource:willSendRequest:]):
   31490         (-[WebBaseResourceHandleDelegate resource:didReceiveResponse:]):
   31491         (-[WebBaseResourceHandleDelegate resource:didReceiveData:]):
   31492         (-[WebBaseResourceHandleDelegate resourceDidFinishLoading:]):
   31493         (-[WebBaseResourceHandleDelegate resource:didFailLoadingWithError:]):
   31494         (-[WebBaseResourceHandleDelegate cancelledError]):
   31495         * WebView.subproj/WebController.h:
   31496         * WebView.subproj/WebController.m:
   31497         (-[WebResourceLoadDelegate identifierForInitialRequest:fromDataSource:]):
   31498         (-[WebResourceLoadDelegate resource:willSendRequest:fromDataSource:]):
   31499         (-[WebResourceLoadDelegate resource:didReceiveResponse:fromDataSource:]):
   31500         * WebView.subproj/WebControllerPolicyDelegate.h:
   31501         * WebView.subproj/WebControllerPrivate.h:
   31502         * WebView.subproj/WebControllerPrivate.m:
   31503         (-[WebController _downloadURL:toDirectory:]):
   31504         (-[WebController defersCallbacks]):
   31505         (-[WebController setDefersCallbacks:]):
   31506         (-[WebController _openNewWindowWithRequest:behind:]):
   31507         * WebView.subproj/WebDataSource.h:
   31508         * WebView.subproj/WebDataSource.m:
   31509         (-[WebDataSource initWithURL:]):
   31510         (-[WebDataSource initWithRequest:]):
   31511         (-[WebDataSource initialRequest]):
   31512         (-[WebDataSource request]):
   31513         (-[WebDataSource response]):
   31514         * WebView.subproj/WebDataSourcePrivate.h:
   31515         * WebView.subproj/WebDataSourcePrivate.m:
   31516         (-[WebDataSource _addSubresourceClient:]):
   31517         (-[WebDataSource _stopLoading]):
   31518         (-[WebDataSource _setURL:]):
   31519         (-[WebDataSource _setRequest:]):
   31520         (-[WebDataSource _setResponse:]):
   31521         (-[WebDataSource _commitIfReady:]):
   31522         (-[WebDataSource _defersCallbacksChanged]):
   31523         (-[WebDataSource _originalRequest]):
   31524         (-[WebDataSource _lastCheckedRequest]):
   31525         (-[WebDataSource _setLastCheckedRequest:]):
   31526         (-[WebDataSource _addResponse:]):
   31527         * WebView.subproj/WebDefaultContextMenuDelegate.m:
   31528         (-[WebDefaultContextMenuDelegate contextMenuItemsForElement:defaultMenuItems:]):
   31529         (-[WebDefaultContextMenuDelegate openNewWindowWithURL:]):
   31530         * WebView.subproj/WebDefaultPolicyDelegate.m:
   31531         (-[WebDefaultPolicyDelegate savePathForResponse:andRequest:]):
   31532         (-[WebDefaultPolicyDelegate decideNavigationPolicyForAction:andRequest:inFrame:decisionListener:]):
   31533         * WebView.subproj/WebFrame.h:
   31534         * WebView.subproj/WebFrame.m:
   31535         (-[WebFrame loadRequest:]):
   31536         (-[WebFrame reload]):
   31537         * WebView.subproj/WebFramePrivate.h:
   31538         * WebView.subproj/WebFramePrivate.m:
   31539         (-[WebFrame _createItem]):
   31540         (-[WebFrame _opened]):
   31541         (-[WebFrame _loadItem:fromItem:withLoadType:]):
   31542         (-[WebFrame _loadRequest:triggeringAction:loadType:formValues:]):
   31543         (-[WebFrame _invalidatePendingPolicyDecisionCallingDefaultAction:]):
   31544         (-[WebFrame _checkNavigationPolicyForRequest:dataSource:formValues:andCall:withSelector:]):
   31545         (-[WebFrame _continueAfterNavigationPolicy:]):
   31546         (-[WebFrame _continueFragmentScrollAfterNavigationPolicy:formValues:]):
   31547         (-[WebFrame _addExtraFieldsToRequest:alwaysFromRequest:]):
   31548         (-[WebFrame _loadURL:loadType:triggeringEvent:formValues:]):
   31549         (-[WebFrame _postWithURL:data:contentType:triggeringEvent:formValues:]):
   31550         (-[WebFrame _reloadAllowingStaleDataWithOverrideEncoding:]):
   31551         (-[WebFrame _continueLoadRequestAfterNavigationPolicy:formValues:]):
   31552         (-[WebFrame _downloadRequest:toDirectory:]):
   31553         * WebView.subproj/WebHTMLRepresentation.m:
   31554         * WebView.subproj/WebMainResourceClient.h:
   31555         * WebView.subproj/WebMainResourceClient.m:
   31556         (-[WebMainResourceClient continueAfterNavigationPolicy:formValues:]):
   31557         (-[WebMainResourceClient resource:willSendRequest:]):
   31558         (-[WebMainResourceClient continueAfterContentPolicy:response:]):
   31559         (-[WebMainResourceClient checkContentPolicyForResponse:andCallSelector:]):
   31560         (-[WebMainResourceClient resource:didReceiveResponse:]):
   31561         (-[WebMainResourceClient resource:didReceiveData:]):
   31562         (-[WebMainResourceClient resourceDidFinishLoading:]):
   31563         (-[WebMainResourceClient resource:didFailLoadingWithError:]):
   31564         (-[WebMainResourceClient startLoading:]):
   31565         * WebView.subproj/WebResourceLoadDelegate.h:
   31566         * WebView.subproj/WebTextRepresentation.m:
   31567         * WebView.subproj/WebTextView.m:
   31568         * WebView.subproj/WebView.m:
   31569         (-[WebView concludeDragOperation:]):
   31570         * WebView.subproj/WebViewPrivate.m:
   31571         * WebView.subproj/WebWindowOperationsDelegate.h:
   31572 
   31573 2003-02-18  Maciej Stachowiak  <mjs (a] ap0101m-dhcp138.apple.com>
   31574 
   31575         Reviewed by Chris.
   31576         Merged changes from Safari-58-1-branch.
   31577     2003-02-11  Richard Williamson   <rjw (a] apple.com>
   31578 
   31579         Add import of CGFontCache.h, which is no longer
   31580         included by CoreGraphicsPrivate.h.
   31581         
   31582         Reviewed by Vicki.
   31583 
   31584         * WebCoreSupport.subproj/WebTextRendererFactory.m:
   31585 
   31586     2003-02-11  Maciej Stachowiak  <mjs (a] apple.com>
   31587 
   31588         Reviewed by Darin.
   31589 
   31590         * WebCoreSupport.subproj/WebTextRenderer.m: Change (void **) cast
   31591         to (void *) for compatibility with the latest Panther.
   31592     2003-02-11  Maciej Stachowiak  <mjs (a] apple.com>
   31593 
   31594         Reviewed by Trey.
   31595 
   31596         * WebKit.pbproj/project.pbxproj: Add /System/Library/PrivateFrameworks
   31597 
   31598 === Safari-62 ===
   31599 
   31600 2003-02-17  Ken Kocienda  <kocienda (a] apple.com>
   31601 
   31602         Reviewed by Trey
   31603 
   31604         Rolled in documentation changes from Peter Kelly, our tech writer.
   31605 
   31606         * History.subproj/WebBackForwardList.h
   31607         * History.subproj/WebHistory.h
   31608         * Misc.subproj/WebKitErrors.h
   31609         * Misc.subproj/WebResourceResponseExtras.h
   31610         * Panels.subproj/WebStandardPanels.h
   31611         * Plugins.subproj/WebPluginError.h
   31612         * WebView.subproj/WebContextMenuDelegate.h
   31613         * WebView.subproj/WebController.h
   31614         * WebView.subproj/WebControllerPolicyDelegate.h
   31615         * WebView.subproj/WebDataSource.h
   31616         * WebView.subproj/WebDefaultPolicyDelegate.h
   31617         * WebView.subproj/WebDocument.h
   31618         * WebView.subproj/WebFrame.h
   31619         * WebView.subproj/WebPreferences.h
   31620         * WebView.subproj/WebResourceLoadDelegate.h
   31621         * WebView.subproj/WebView.h
   31622         * WebView.subproj/WebWindowOperationsDelegate.h
   31623 
   31624 2003-02-13  Trey Matteson  <trey (a] apple.com>
   31625 
   31626         2943514 hide the cursor when using the arrow keys to scroll
   31627         Reviewed by Darin
   31628 
   31629         * WebView.subproj/WebView.m:
   31630         (-[WebView keyDown:]):  Hide that cursor.
   31631 
   31632 2003-02-16  Chris Blumenberg  <cblu (a] apple.com>
   31633 
   31634         Added debug method that can be used inside of gdb to examine an image. Needed this many times.
   31635 
   31636         Reviewed by darin.
   31637 
   31638         * Misc.subproj/WebNSImageExtras.h:
   31639         * Misc.subproj/WebNSImageExtras.m:
   31640         (-[NSImage _web_saveAndOpen]):
   31641 
   31642 2003-02-15  Darin Adler  <darin (a] apple.com>
   31643 
   31644         * English.lproj/Localizable.strings: Regenerated.
   31645 
   31646 2003-02-14  David Hyatt  <hyatt (a] apple.com>
   31647 
   31648         Patch to the drawLine function for the inline box model landing.
   31649         Reviewed by kocienda
   31650 
   31651         * WebCoreSupport.subproj/WebTextRenderer.m:
   31652 
   31653 2003-02-13  Trey Matteson  <trey (a] apple.com>
   31654 
   31655         First checkin for working forms autocomplete.
   31656 
   31657         This level mostly just has glue to go from app to WC through the bridge.
   31658         WebHTMLReo exports some new SPI to get the element of a view, and then to get
   31659         some HTML-level properties of that element.
   31660 
   31661         Reviewed by Chris
   31662 
   31663         * Bookmarks.subproj/WebBookmarkGroup.m:
   31664         (-[WebBookmarkGroup _saveBookmarkGroupGuts]):  Don't dump entire bookmark
   31665         dict in the log.
   31666         * WebKit.exp:  New class used by app, objc_class_name_WebHTMLRepresentation.
   31667         * WebView.subproj/WebHTMLRepresentation.h:
   31668         * WebView.subproj/WebHTMLRepresentation.m:
   31669         (-[WebHTMLRepresentation elementForView:]):  New SPI.
   31670         (-[WebHTMLRepresentation elementDoesAutoComplete:]):  New SPI.
   31671         (-[WebHTMLRepresentation elementIsInLoginForm:]):  New SPI.
   31672 
   31673 2003-02-13  Chris Blumenberg  <cblu (a] apple.com>
   31674 
   31675         Fixed WebKit typos found by Peter Wilson.
   31676 
   31677         Reviewed by darin.
   31678 
   31679         * Misc.subproj/WebKitErrors.h:
   31680         * Misc.subproj/WebKitErrors.m:
   31681         (categoryInitialize): Error should be WebErrorDescriptionCannotFindApplicationForURL not WebErrorDescriptionCannotNotFindApplicationForURL
   31682         * Plugins.subproj/WebBaseNetscapePluginView.m:
   31683         (-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:]): call findOrCreateFrameNamed
   31684         * Plugins.subproj/WebPluginController.m:
   31685         (-[WebPluginController showURL:inFrame:]): call findOrCreateFrameNamed
   31686         * WebCoreSupport.subproj/WebBridge.m:
   31687         (-[WebBridge findOrCreateFrameNamed:]): call findOrCreateFrameNamed
   31688         * WebView.subproj/WebFrame.h:
   31689         * WebView.subproj/WebFrame.m:
   31690         (-[WebFrame findOrCreateFrameNamed:]): fixed name
   31691         * WebView.subproj/WebFramePrivate.m:
   31692         (-[WebFrame _continueAfterNavigationPolicy:]): use WebErrorDescriptionCannotFindApplicationForURL
   31693         * WebView.subproj/WebMainResourceClient.m:
   31694         (-[WebMainResourceClient continueAfterContentPolicy:response:]): use WebErrorDescriptionCannotFindApplicationForURL
   31695         * WebView.subproj/WebView.h:
   31696         * WebView.subproj/WebView.m:
   31697         (-[WebView setAllowsScrolling:]): cast to WebDynamicScrollBarsView
   31698         (-[WebView allowsScrolling]): cast to WebDynamicScrollBarsView
   31699         (-[WebView frameScrollView]): return NSScrollView
   31700         * WebView.subproj/WebViewPrivate.m:
   31701         (-[WebView _setDocumentView:]): cast to WebDynamicScrollBarsView
   31702 
   31703 2003-02-12  Chris Blumenberg  <cblu (a] apple.com>
   31704 
   31705         - Moved the WebKit error registration out of WebView because apps that use WebKit but not WebView might need to use WebKit errors (like my test app for WebDownload).
   31706         - Added file close and file move errors (needed for WebDownload).
   31707 
   31708         Reviewed by kocienda.
   31709 
   31710         * English.lproj/Localizable.strings: Localize file close and file move errors.
   31711         * Misc.subproj/WebKitErrors.h: Added file close and file move errors.
   31712         * Misc.subproj/WebKitErrors.m: Added.
   31713         (+[WebError initialize]): register the errors here
   31714         * WebKit.exp: Export the WebDownload class (forgot to do this earlier).
   31715         * WebKit.pbproj/project.pbxproj:
   31716         * WebView.subproj/WebView.m: don't register the errors here
   31717 
   31718 2003-02-12  Darin Adler  <darin (a] apple.com>
   31719 
   31720         Reviewed by Ken.
   31721 
   31722         - fixed 3158484 -- after submission failure, submitting a second time doesn't work
   31723 
   31724         * WebView.subproj/WebDataSourcePrivate.h: Added _receivedError:complete: method.
   31725         * WebView.subproj/WebDataSourcePrivate.m: (-[WebDataSource _receivedError:complete:]):
   31726         Added, parallel to _receivedData and _finishedLoading. Calls the new bridge method
   31727         didNotOpenURL: for cases where we fail before committing (which calls openURL).
   31728         Note that we can't use our own _bridge method because it asserts that we have committed
   31729         to prevent accidental misuse. Also make the call on the controller that used to be done
   31730         directly by the client.
   31731 
   31732         * WebView.subproj/WebMainResourceClient.m: (-[WebMainResourceClient receivedError:complete:]):
   31733         Call the new -[WebDataSource _receivedError:complete:] rather than calling the controller directly.
   31734 
   31735 2003-02-11  Darin Adler  <darin (a] apple.com>
   31736 
   31737         * English.lproj/StringsNotToBeLocalized.txt: Updated for recent changes.
   31738 
   31739 2003-02-11  Darin Adler  <darin (a] apple.com>
   31740 
   31741         Reviewed by Ed.
   31742 
   31743         - applied a fixed version of Ed Voas's change to make plug-ins position correctly
   31744           inside Carbon metal windows; should have no effect on Safari
   31745 
   31746         * Plugins.subproj/WebBaseNetscapePluginView.m:
   31747         (-[WebBaseNetscapePluginView saveAndSetPortStateForUpdate:]):
   31748         Don't assume that the Cocoa concept of the content view matches up with the Carbon
   31749         concept of where the port is positioned. Instead, convert coordinates to border
   31750         view coordinates, then back to Carbon content coordinates by using the delta between
   31751         the port bounds and the port's pixmap bounds. Bug 3160710 was caused by an older version
   31752         of this patch implicitly assuming the port bounds always had (0,0) for top left.
   31753 
   31754 2003-02-11  Trey Matteson  <trey (a] apple.com>
   31755 
   31756         Set -seg1addr in our build styles, but not for the B&I build.
   31757         This makes our SYMROOTS from B&I usable to determine symbols from crash
   31758         logs from the field.
   31759         Also nuked DeploymentFat build style.
   31760 
   31761         Reviewed by Ken.
   31762 
   31763         * WebKit.pbproj/project.pbxproj:
   31764 
   31765 2003-02-10  Chris Blumenberg  <cblu (a] apple.com>
   31766 
   31767         Added HeaderDoc comments for WebDownload and WebPluginError.
   31768 
   31769         Reviewed by rjw.
   31770 
   31771         * Downloads.subproj/WebDownload.h:
   31772         * Plugins.subproj/WebPluginError.h:
   31773 
   31774 2003-02-10  Trey Matteson  <trey (a] apple.com>
   31775 
   31776         Following the recent fix for ensuring that we always have a FormDelegate,
   31777         when we need a default policy delegate we use a shared one instead of allocing
   31778         a new one each time, which then would leak.
   31779 
   31780         This included getting rid of the initWithWebController: method in the 
   31781         WebDefaultPolicyDelegate API.  The arg was not used.
   31782 
   31783         Reviewed by Richard
   31784 
   31785         * WebKit.pbproj/project.pbxproj:  new private header
   31786         * WebView.subproj/WebController.m:
   31787         (-[WebController policyDelegate]):  use shared delegate if none set
   31788         * WebView.subproj/WebDefaultPolicyDelegate.h:
   31789         * WebView.subproj/WebDefaultPolicyDelegate.m:
   31790         (+[WebDefaultPolicyDelegate _sharedWebPolicyDelegate]):  return shared instance
   31791         * WebView.subproj/WebDefaultPolicyDelegatePrivate.h: Added.
   31792         * WebView.subproj/WebFormDelegate.m:
   31793         (+[WebFormDelegate _sharedWebFormDelegate]):  Trivial renaming of static.
   31794 
   31795 2003-02-10  Richard Williamson   <rjw (a] apple.com>
   31796 
   31797         Update API issues document.
   31798         
   31799         * API-Issues.rtf:
   31800 
   31801 2003-02-10  Chris Blumenberg  <cblu (a] apple.com>
   31802 
   31803         Fixed: 3168888 - REGRESSION: many downloads fail (due to -36 error from write)
   31804 
   31805         Reviewed by darin.
   31806 
   31807         * Downloads.subproj/WebDownload.m:
   31808         (-[WebDownload writeForkData:isDataFork:]):
   31809 
   31810 2003-02-10  Trey Matteson  <trey (a] apple.com>
   31811 
   31812         Make sure we have a FormsDelegate installed with NOP behavior if our client
   31813         does not set one.  Editing forms was broken for Ed by the introduction
   31814         of the new FormDelegate.
   31815 
   31816         Reviewed by Darin.
   31817 
   31818         * WebKit.pbproj/project.pbxproj:  Added new header file.
   31819         * WebView.subproj/WebControllerPrivate.m:
   31820         (-[WebController _formDelegate]):  Use shared delegate if none set yet.
   31821         * WebView.subproj/WebFormDelegatePrivate.h:  New header.
   31822         * WebView.subproj/WebFormDelegate.h:  Nit cleanup.
   31823         * WebView.subproj/WebFormDelegate.m:
   31824         (+[WebFormDelegate _sharedWebFormDelegate]):  New method to return a shared
   31825         NOP implementation.
   31826 
   31827 2003-02-07  Richard Williamson   <rjw (a] apple.com>
   31828 
   31829         Changes to support per WebController preferences.
   31830         
   31831         Reviewed by Maciej and Ken.
   31832 
   31833         * WebView.subproj/WebController.m:
   31834         (-[WebController setPreferences:]):
   31835         * WebView.subproj/WebControllerPrivate.h:
   31836         * WebView.subproj/WebControllerPrivate.m:
   31837         (-[WebControllerPrivate init]):
   31838         (-[WebControllerPrivate dealloc]):
   31839         (-[WebController _setFormDelegate:]):
   31840         (-[WebController _formDelegate]):
   31841         (-[WebController _settings]):
   31842         (-[WebController _updateWebCoreSettingsFromPreferences:]):
   31843         (-[WebController _releaseUserAgentStrings]):
   31844         (-[WebController _preferencesChangedNotification:]):
   31845         * WebView.subproj/WebFrame.m:
   31846         (-[WebFrame initWithName:webView:controller:]):
   31847         * WebView.subproj/WebPreferences.h:
   31848         * WebView.subproj/WebPreferences.m:
   31849         (-[WebPreferences _postPreferencesChangesNotification]):
   31850         (+[WebPreferences load]):
   31851         (-[WebPreferences _stringValueForKey:]):
   31852         (-[WebPreferences _setStringValue:forKey:]):
   31853         (-[WebPreferences _integerValueForKey:]):
   31854         (-[WebPreferences _setIntegerValue:forKey:]):
   31855         (-[WebPreferences _boolValueForKey:]):
   31856         (-[WebPreferences _setBoolValue:forKey:]):
   31857         (-[WebPreferences standardFontFamily]):
   31858         (-[WebPreferences setStandardFontFamily:]):
   31859         (-[WebPreferences fixedFontFamily]):
   31860         (-[WebPreferences setFixedFontFamily:]):
   31861         (-[WebPreferences serifFontFamily]):
   31862         (-[WebPreferences setSerifFontFamily:]):
   31863         (-[WebPreferences sansSerifFontFamily]):
   31864         (-[WebPreferences setSansSerifFontFamily:]):
   31865         (-[WebPreferences cursiveFontFamily]):
   31866         (-[WebPreferences setCursiveFontFamily:]):
   31867         (-[WebPreferences fantasyFontFamily]):
   31868         (-[WebPreferences setFantasyFontFamily:]):
   31869         (-[WebPreferences defaultFontSize]):
   31870         (-[WebPreferences setDefaultFontSize:]):
   31871         (-[WebPreferences defaultFixedFontSize]):
   31872         (-[WebPreferences setDefaultFixedFontSize:]):
   31873         (-[WebPreferences minimumFontSize]):
   31874         (-[WebPreferences setMinimumFontSize:]):
   31875         (-[WebPreferences defaultTextEncodingName]):
   31876         (-[WebPreferences setDefaultTextEncodingName:]):
   31877         (-[WebPreferences userStyleSheetEnabled]):
   31878         (-[WebPreferences setUserStyleSheetEnabled:]):
   31879         (-[WebPreferences userStyleSheetLocation]):
   31880         (-[WebPreferences setUserStyleSheetLocation:]):
   31881         (-[WebPreferences JavaEnabled]):
   31882         (-[WebPreferences setJavaEnabled:]):
   31883         (-[WebPreferences JavaScriptEnabled]):
   31884         (-[WebPreferences setJavaScriptEnabled:]):
   31885         (-[WebPreferences JavaScriptCanOpenWindowsAutomatically]):
   31886         (-[WebPreferences setJavaScriptCanOpenWindowsAutomatically:]):
   31887         (-[WebPreferences pluginsEnabled]):
   31888         (-[WebPreferences setPluginsEnabled:]):
   31889         (-[WebPreferences allowAnimatedImages]):
   31890         (-[WebPreferences allowAnimatedImageLooping]):
   31891         (-[WebPreferences setAllowAnimatedImageLooping:]):
   31892         (-[WebPreferences setWillLoadImagesAutomatically:]):
   31893         (-[WebPreferences willLoadImagesAutomatically]):
   31894         (-[WebPreferences _initialTimedLayoutDelay]):
   31895         (-[WebPreferences _initialTimedLayoutSize]):
   31896         (-[WebPreferences _pageCacheSize]):
   31897         (-[WebPreferences _objectCacheSize]):
   31898         (-[WebPreferences _initialTimedLayoutEnabled]):
   31899         (-[WebPreferences _resourceTimedLayoutDelay]):
   31900         (-[WebPreferences _resourceTimedLayoutEnabled]):
   31901         * WebView.subproj/WebPreferencesPrivate.h:
   31902 
   31903 2003-02-06  Chris Blumenberg  <cblu (a] apple.com>
   31904 
   31905         - Made WebDownload.h a public header.
   31906         - Added stubs for the new methods.
   31907         - Moved all private methods to the WebPrivate category.
   31908         - Added FIXMEs for things that needed to be removed or implemented.
   31909 
   31910         Reviewed by rjw.
   31911 
   31912         * Downloads.subproj/WebDownload.h:
   31913         * Downloads.subproj/WebDownload.m:
   31914         (-[WebDownload initWithRequest:delegate:]):
   31915         (-[WebDownload dealloc]):
   31916         (-[WebDownload cancel]):
   31917         (-[WebDownload _initWithLoadingHandle:request:response:delegate:]):
   31918         (-[WebDownload initWithDataSource:]):
   31919         (-[WebDownload receivedData:]):
   31920         (-[WebDownload finishedLoading]):
   31921         (-[WebDownload decodeHeaderData:dataForkData:resourceForkData:]):
   31922         (-[WebDownload decodeData:dataForkData:resourceForkData:]):
   31923         (-[WebDownload createFileIfNecessary]):
   31924         (-[WebDownload writeDataForkData:resourceForkData:]):
   31925         (-[WebDownload dataIfDoneBufferingData:]):
   31926         (-[WebDownload decodeData:]):
   31927         (-[WebDownload finishDecoding]):
   31928         * Downloads.subproj/WebDownloadPrivate.h:
   31929         * WebKit.pbproj/project.pbxproj:
   31930         * WebView.subproj/WebMainResourceClient.m:
   31931 
   31932 2003-02-06  Chris Blumenberg  <cblu (a] apple.com>
   31933 
   31934         Renamed WebDownloadHandler to WebDownload.
   31935         Made ivars of WebDownload private.
   31936 
   31937         Reviewed by kocienda.
   31938 
   31939         * Downloads.subproj/WebDownload.h: Added.
   31940         * Downloads.subproj/WebDownload.m: Added.
   31941         (-[WebDownloadPrivate init]):
   31942         (-[WebDownloadPrivate dealloc]):
   31943         (-[WebDownload initWithDataSource:]):
   31944         (-[WebDownload dealloc]):
   31945         (-[WebDownload decodeHeaderData:dataForkData:resourceForkData:]):
   31946         (-[WebDownload decodeData:dataForkData:resourceForkData:]):
   31947         (-[WebDownload closeFork:deleteFile:]):
   31948         (-[WebDownload closeFileAndDelete:]):
   31949         (-[WebDownload closeFile]):
   31950         (-[WebDownload cleanUpAfterFailure]):
   31951         (-[WebDownload createFileIfNecessary]):
   31952         (-[WebDownload writeDataForkData:resourceForkData:]):
   31953         (-[WebDownload dataIfDoneBufferingData:]):
   31954         (-[WebDownload decodeData:]):
   31955         (-[WebDownload receivedData:]):
   31956         (-[WebDownload finishDecoding]):
   31957         (-[WebDownload finishedLoading]):
   31958         (-[WebDownload cancel]):
   31959         (-[WebDownload path]):
   31960         (-[WebDownload writeForkData:isDataFork:]):
   31961         (-[WebDownload errorWithCode:]):
   31962         (-[WebDownload cancelWithError:]):
   31963         (-[WebDownload dataForkReferenceNumber]):
   31964         (-[WebDownload setDataForkReferenceNumber:]):
   31965         (-[WebDownload resourceForkReferenceNumber]):
   31966         (-[WebDownload setResourceForkReferenceNumber:]):
   31967         (-[WebDownload areWritesCancelled]):
   31968         (-[WebDownload setWritesCancelled:]):
   31969         (WriteCompletionCallback):
   31970         (CloseCompletionCallback):
   31971         (DeleteCompletionCallback):
   31972         * Downloads.subproj/WebDownloadHandler.h: Removed.
   31973         * Downloads.subproj/WebDownloadHandler.m: Removed.
   31974         * WebKit.pbproj/project.pbxproj:
   31975         * WebView.subproj/WebController.h:
   31976         * WebView.subproj/WebDataSource.m:
   31977         * WebView.subproj/WebDataSourcePrivate.m:
   31978         * WebView.subproj/WebMainResourceClient.h:
   31979         * WebView.subproj/WebMainResourceClient.m:
   31980         (-[WebMainResourceClient dealloc]):
   31981         (-[WebMainResourceClient download]):
   31982         (-[WebMainResourceClient isDownload]):
   31983         (-[WebMainResourceClient receivedError:complete:]):
   31984         (-[WebMainResourceClient continueAfterContentPolicy:response:]):
   31985         (-[WebMainResourceClient handle:didReceiveData:]):
   31986         (-[WebMainResourceClient handleDidFinishLoading:]):
   31987 
   31988 2003-02-06  Chris Blumenberg  <cblu (a] apple.com>
   31989 
   31990         Fixed: 3125067 - Investigate performance implications of writing download file data
   31991         Reviewed by trey, rjw, darin.
   31992 
   31993         * Downloads.subproj/WebDownloadHandler.h:
   31994         * Downloads.subproj/WebDownloadHandler.m:
   31995         (-[WebDownloadHandler closeFileAndDelete:]): close the file asynchronously
   31996         (-[WebDownloadHandler closeFile]): call closeFileAndDelete:NO
   31997         (-[WebDownloadHandler cleanUpAfterFailure]): call closeFileAndDelete:YES
   31998         (-[WebDownloadHandler writeDataForkData:resourceForkData:]): call writeForkData:isDataFork:
   31999         (-[WebDownloadHandler path]): new
   32000         (-[WebDownloadHandler writeForkData:isDataFork:]): writes file asynchronously
   32001         (-[WebDownloadHandler errorWithCode:]): moved
   32002         (-[WebDownloadHandler cancelWithError:]): new, stops load with error
   32003         (-[WebDownloadHandler dataForkReferenceNumber]): new 
   32004         (-[WebDownloadHandler setDataForkReferenceNumber:]): new
   32005         (-[WebDownloadHandler resourceForkReferenceNumber]): new
   32006         (-[WebDownloadHandler setResourceForkReferenceNumber:]): new
   32007         (WriteCompletionCallback): new
   32008         (CloseCompletionCallback): new, removes file if necessary
   32009         (DeleteCompletionCallback): new,
   32010         * WebView.subproj/WebDataSourcePrivate.h:
   32011         * WebView.subproj/WebDataSourcePrivate.m:
   32012         (-[WebDataSource _stopLoadingWithError:]): new
   32013 
   32014 2003-02-06  Trey Matteson  <trey (a] apple.com>
   32015 
   32016         3137647 - ad frames get their own history entries at channels.netscape.com        3133844 - 2 items in back list at http://www.kiup-bank.com/personal/main01.html
   32017 
   32018         Move logic for deciding on "quick redirect" down to WebCore, where we really know
   32019         what case we're in instead of having to guess from the params we were receiving.
   32020 
   32021         Reviewed by Maciej, Darin.
   32022 
   32023         * Plugins.subproj/WebNetscapePluginDocumentView.m:
   32024         (-[WebNetscapePluginDocumentView setDataSource:]):  Fix build error (URL vs String)
   32025         * WebView.subproj/WebFramePrivate.h:  Nuke Completing state.
   32026         * WebView.subproj/WebFramePrivate.m:
   32027         (-[WebFrame _transitionToLayoutAcceptable]):  Nuke Completing state.
   32028         (-[WebFrame _transitionToCommitted:]):  Nuke Completing state.
   32029         (-[WebFrame _isLoadComplete]):  Nuke Completing state.
   32030         (-[WebFrame _clientRedirectedTo:delay:fireDate:lockHistory:]):
   32031         Just obey lockHistory param when deciding whether we are doing a "client redirect"
   32032         instead of previous guesswork.
   32033 
   32034 2003-02-06  Richard Williamson   <rjw (a] apple.com>
   32035 
   32036         Rename WebError to WebKitError.
   32037         
   32038         Reviewed by maciej.
   32039 
   32040         * API-Issues.rtf:
   32041         * Bookmarks.subproj/WebBookmarkImporter.m:
   32042         (-[WebBookmarkImporter initWithPath:]):
   32043         * Downloads.subproj/WebDownloadHandler.m:
   32044         (-[WebDownloadHandler createFileIfNecessary]):
   32045         (-[WebDownloadHandler writeDataForkData:resourceForkData:]):
   32046         (-[WebDownloadHandler decodeData:]):
   32047         (-[WebDownloadHandler finishedLoading]):
   32048         * Misc.subproj/WebKitErrors.h:
   32049         * Plugins.subproj/WebNetscapePluginDocumentView.m:
   32050         (-[WebNetscapePluginDocumentView setDataSource:]):
   32051         * WebCoreSupport.subproj/WebBridge.m:
   32052         (-[WebBridge viewForPluginWithURL:attributes:baseURL:MIMEType:]):
   32053         (-[WebBridge viewForJavaAppletWithFrame:attributes:baseURL:]):
   32054         * WebView.subproj/WebBaseResourceHandleDelegate.m:
   32055         (-[WebBaseResourceHandleDelegate notifyDelegatesOfInterruptionByPolicyChange]):
   32056         * WebView.subproj/WebFramePrivate.m:
   32057         (-[WebFrame _continueAfterNavigationPolicy:]):
   32058         * WebView.subproj/WebMainResourceClient.m:
   32059         (-[WebMainResourceClient interruptForPolicyChangeAndKeepLoading:]):
   32060         (-[WebMainResourceClient continueAfterContentPolicy:response:]):
   32061         * WebView.subproj/WebView.m:
   32062         (+[WebView initialize]):
   32063 
   32064 2003-02-05  Chris Blumenberg  <cblu (a] apple.com>
   32065 
   32066         Comment should have been "Made WebPluginError constructors private."
   32067 
   32068         * ChangeLog:
   32069 
   32070 2003-02-05  Chris Blumenberg  <cblu (a] apple.com>
   32071 
   32072         WebKit API clean-up:
   32073         - Added enum to WebContextMenuDelegate that is the menu item tag of the menu items passed in the default menu item array.
   32074         - WebPluginError should return URL strings.
   32075         - Made WebPluginError constructors private.
   32076 
   32077         Reviewed by rjw.
   32078 
   32079         * Plugins.subproj/WebNetscapePluginDocumentView.m:
   32080         (-[WebNetscapePluginDocumentView setDataSource:]):
   32081         * Plugins.subproj/WebPluginError.h:
   32082         * Plugins.subproj/WebPluginError.m:
   32083         (-[WebPluginError pluginPageURL]):
   32084         * Plugins.subproj/WebPluginErrorPrivate.h: Added.
   32085         * WebCoreSupport.subproj/WebBridge.m:
   32086         (-[WebBridge viewForPluginWithURL:attributes:baseURL:MIMEType:]):
   32087         * WebKit.pbproj/project.pbxproj:
   32088         * WebView.subproj/WebContextMenuDelegate.h:
   32089         * WebView.subproj/WebDefaultContextMenuDelegate.h:
   32090         * WebView.subproj/WebDefaultContextMenuDelegate.m:
   32091         (-[WebDefaultContextMenuDelegate menuItemWithTag:]):
   32092         (-[WebDefaultContextMenuDelegate contextMenuItemsForElement:defaultMenuItems:]):
   32093 
   32094 2003-02-04  Trey Matteson  <trey (a] apple.com>
   32095 
   32096         WC now tells us the form values being submitted with a get/post.
   32097         We forward this info to a new WebFormDelegate method.  Most of this
   32098         change is just glue passing the formValues through all our layers.
   32099 
   32100         Reviewed by Maciej
   32101 
   32102         * WebCoreSupport.subproj/WebBridge.m:
   32103         (-[WebBridge loadURL:reload:triggeringEvent:formValues:])
   32104         Pass along formValues.
   32105         (-[WebBridge postWithURL:data:contentType:triggeringEvent:formValues:]):
   32106         Pass along formValues.
   32107         * WebKit.pbproj/project.pbxproj:  Reorder previously added files.
   32108         * WebView.subproj/WebControllerPolicyDelegate.m:  Fix latent copy/paste error
   32109         where two keys had the same underlying string value!
   32110         * WebView.subproj/WebFormDelegate.h:  Declare new delegate method.
   32111         * WebView.subproj/WebFormDelegate.m:
   32112         (-[WebFormDelegate frame:willSubmitFormWithValues:]):   NOP impl of new method.
   32113         * WebView.subproj/WebFrame.m:
   32114         (-[WebFrame loadRequest:]):  Pass nil formValues.
   32115         (-[WebFrame reload]):  Pass nil formValues.
   32116         * WebView.subproj/WebFramePrivate.h:  New ivar to hold form values
   32117         while waiting for the policy delegate response.
   32118         * WebView.subproj/WebFramePrivate.m:
   32119         (-[WebFramePrivate dealloc]):  ASSERT new ivar is nil.
   32120         (-[WebFrame _loadItem:fromItem:withLoadType:]):   Pass nil formValues.
   32121         (-[WebFrame _loadRequest:triggeringAction:loadType:formValues:]):
   32122         Pass along formValues.
   32123         (-[WebFrame _invalidatePendingPolicyDecisionCallingDefaultAction:]):
   32124         Pass nil formValues to continuation method.
   32125         (-[WebFrame _checkNavigationPolicyForRequest:dataSource:formValues:andCall:withSelector:]):
   32126         Stash formValues before calling policy delegate.
   32127         (-[WebFrame _continueAfterNavigationPolicy:]):
   32128         Resurrect formValues after calling policy delegate, pass to continuation method.
   32129         (-[WebFrame _continueFragmentScrollAfterNavigationPolicy:formValues:]):
   32130         Bail on nil request instead of shouldContinue=NO
   32131         (-[WebFrame _loadURL:loadType:triggeringEvent:formValues:]):
   32132         Pass formValues along.
   32133         (-[WebFrame _loadURL:intoChild:]): Pass nil formValues.
   32134         (-[WebFrame _postWithURL:data:contentType:triggeringEvent:formValues:]):
   32135         Pass formValues along.
   32136         (-[WebFrame _reloadAllowingStaleDataWithOverrideEncoding:]):
   32137         Pass nil formValues.
   32138         (-[WebFrame _continueLoadRequestAfterNavigationPolicy:formValues:]):
   32139         Bail on nil request instead of shouldContinue=NO.  Call new FormDelegate method.
   32140         (-[WebFrame _loadDataSource:withLoadType:formValues:]):
   32141         Pass formValues along.
   32142         (-[WebFrame _downloadRequest:toDirectory:]):
   32143         Pass nil formValues.
   32144         * WebView.subproj/WebMainResourceClient.m:
   32145         (-[WebMainResourceClient continueAfterNavigationPolicy:formValues:]):
   32146         Bail on nil request instead of shouldContinue=NO
   32147         (-[WebMainResourceClient handle:willSendRequest:]):
   32148         Pass nil formValues.
   32149 
   32150 2003-02-05  Richard Williamson   <rjw (a] apple.com>
   32151 
   32152         WebHistory* API clenaup.
   32153 
   32154         Reviewed by Chris.
   32155 
   32156         * Bookmarks.subproj/WebBookmarkLeaf.m:
   32157         * History.subproj/WebHistory.h:
   32158         * History.subproj/WebHistory.m:
   32159         * History.subproj/WebHistoryItem.h:
   32160         * History.subproj/WebHistoryItem.m:
   32161         (-[WebHistoryItem title]):
   32162         (-[WebHistoryItem setDisplayTitle:]):
   32163         (-[WebHistoryItem hash]):
   32164         (-[WebHistoryItem anchor]):
   32165         (-[WebHistoryItem isEqual:]):
   32166         (-[WebHistoryItem description]):
   32167         (-[WebHistoryItem _retainIconInDatabase:]):
   32168         (+[WebHistoryItem entryWithURL:]):
   32169         (-[WebHistoryItem initWithURL:title:]):
   32170         (-[WebHistoryItem initWithURL:target:parent:title:]):
   32171         (-[WebHistoryItem URL]):
   32172         (-[WebHistoryItem target]):
   32173         (-[WebHistoryItem parent]):
   32174         (-[WebHistoryItem dictionaryRepresentation]):
   32175         (-[WebHistoryItem initFromDictionaryRepresentation:]):
   32176         * History.subproj/WebHistoryItemPrivate.h:
   32177         * History.subproj/WebHistoryPrivate.h:
   32178         * History.subproj/WebHistoryPrivate.m:
   32179         * WebKit.pbproj/project.pbxproj:
   32180         * WebView.subproj/WebController.h:
   32181         * WebView.subproj/WebController.m:
   32182         (-[WebController setPreferences:]):
   32183         (-[WebController preferences]):
   32184         * WebView.subproj/WebControllerPrivate.h:
   32185         * WebView.subproj/WebControllerPrivate.m:
   32186         (-[WebControllerPrivate dealloc]):
   32187         * WebView.subproj/WebDataSourcePrivate.m:
   32188         * WebView.subproj/WebFramePrivate.m:
   32189 
   32190 2003-02-05  Richard Williamson   <rjw (a] apple.com>
   32191 
   32192         Cleanup public WebHistory API, stage 1.
   32193 
   32194         Reviewed by trey.
   32195 
   32196         * History.subproj/WebHistory.h:
   32197         * History.subproj/WebHistory.m:
   32198         (-[_WebCoreHistoryProvider initWithHistory:]):
   32199         (-[_WebCoreHistoryProvider containsEntryForURLString:]):
   32200         (-[_WebCoreHistoryProvider dealloc]):
   32201         (+[WebHistory sharedHistory]):
   32202         (+[WebHistory createSharedHistoryWithFile:]):
   32203         * History.subproj/WebHistoryPrivate.h:
   32204         * History.subproj/WebHistoryPrivate.m:
   32205 
   32206 2003-02-04  Maciej Stachowiak  <mjs (a] apple.com>
   32207 
   32208         Reviewed by Darin.
   32209 
   32210         * WebKit.pbproj/project.pbxproj: Updated to build the framework
   32211         standalone instead of embedded when doing a B&I build for Panther.
   32212 
   32213 2003-02-04  Chris Blumenberg  <cblu (a] apple.com>
   32214 
   32215         Fixed: 3163879 - receivedPageIcon:forDataSource: always sends nil image
   32216 
   32217         Reviewed by rjw.
   32218 
   32219         * WebView.subproj/WebDataSourcePrivate.m:
   32220         (-[WebDataSource _updateIconDatabaseWithURL:]): 
   32221 
   32222 2003-02-04  Darin Adler  <darin (a] apple.com>
   32223 
   32224         Reviewed by Ken.
   32225 
   32226         - fixed 3135388 -- encoding changes do not affect text in form elements
   32227 
   32228         The problem was that form data was being saved and restored, and in the case of buttons,
   32229         the form data was the incorrectly decoded button label.
   32230 
   32231         * WebView.subproj/WebFramePrivate.m:
   32232         (-[WebFrame _transitionToLayoutAcceptable]): Remove the default: case so we get a warning if
   32233         we omit one of the enum values from this switch statement.
   32234         (-[WebFrame _transitionToCommitted:]): Move the WebFrameLoadTypeReloadAllowingStaleData
   32235         case up so it's right next to the case it should be merged with.
   32236         (-[WebFrame _isLoadComplete]): Remove the default: case so we get a warning if
   32237         we omit one of enum values from this switch statement.
   32238         (-[WebFrame _itemForRestoringDocState]): Replace the if statement with a switch statement.
   32239         Include WebFrameLoadTypeReloadAllowingStaleData, which fixes the bug.
   32240 
   32241 2003-02-03  Richard Williamson   <rjw (a] apple.com>
   32242 
   32243         Fixed headerdoc type.
   32244         
   32245         * WebView.subproj/WebDocument.h:
   32246 
   32247 2003-02-03  Richard Williamson   <rjw (a] apple.com>
   32248 
   32249         Support for new canProvideDocumentSource and documentSource API.
   32250         Updated all the representations.  Added support to show for RTF source.  
   32251         Moved WebKitInitializeUnicode to to early class.  This was necessary
   32252         because WebCore may use the unicode property functions before WebTextRenderer
   32253         gets initialized.
   32254         Ensured guarantee that identifierForInitialRequest:fromDataSource: is called with
   32255         the first initial request.
   32256         
   32257         Reviewed by maciej.
   32258 
   32259         * Plugins.subproj/WebNetscapePluginRepresentation.m:
   32260         (-[WebNetscapePluginRepresentation canProvideDocumentSource]):
   32261         (-[WebNetscapePluginRepresentation documentSource]):
   32262         * WebCoreSupport.subproj/WebTextRenderer.m:
   32263         * WebView.subproj/WebBaseResourceHandleDelegate.h:
   32264         * WebView.subproj/WebBaseResourceHandleDelegate.m:
   32265         (-[WebBaseResourceHandleDelegate setIdentifier:]):
   32266         * WebView.subproj/WebDataSource.h:
   32267         * WebView.subproj/WebDataSource.m:
   32268         (-[WebDataSource initWithRequest:]):
   32269         (-[WebDataSource controller]):
   32270         (-[WebDataSource initialRequest]):
   32271         * WebView.subproj/WebDataSourcePrivate.h:
   32272         * WebView.subproj/WebDataSourcePrivate.m:
   32273         (-[WebDataSourcePrivate dealloc]):
   32274         (-[WebDataSource _startLoading:]):
   32275         (-[WebDataSource _originalRequest]):
   32276         * WebView.subproj/WebDocument.h:
   32277         * WebView.subproj/WebHTMLRepresentation.h:
   32278         * WebView.subproj/WebHTMLRepresentation.m:
   32279         (-[WebHTMLRepresentation finishedLoadingWithDataSource:]):
   32280         (-[WebHTMLRepresentation canProvideDocumentSource]):
   32281         * WebView.subproj/WebHTMLView.m:
   32282         (+[WebHTMLView initialize]):
   32283         * WebView.subproj/WebImageRepresentation.m:
   32284         (-[WebImageRepresentation canProvideDocumentSource]):
   32285         (-[WebImageRepresentation documentSource]):
   32286         * WebView.subproj/WebTextRepresentation.h:
   32287         * WebView.subproj/WebTextRepresentation.m:
   32288         (-[WebTextRepresentation dealloc]):
   32289         (-[WebTextRepresentation setDataSource:]):
   32290         (-[WebTextRepresentation finishedLoadingWithDataSource:]):
   32291         (-[WebTextRepresentation canProvideDocumentSource]):
   32292         (-[WebTextRepresentation documentSource]):
   32293 
   32294 2003-02-03  Chris Blumenberg  <cblu (a] apple.com>
   32295 
   32296         Fixed: 3163073 - SECURITY: Need to check if filename in encoded download is safe
   32297 
   32298         Reviewed by kocienda, darin, mjs.
   32299 
   32300         * Downloads.subproj/WebDownloadHandler.m:
   32301         (-[WebDownloadHandler createFileIfNecessary]): call _web_filenameByFixingIllegalCharacters on the encoded filename
   32302 
   32303 2003-02-01  Maciej Stachowiak  <mjs (a] apple.com>
   32304 
   32305         Reviewed by Darin and Ken.
   32306 
   32307         - fixed 3162581 - 56 debug: Assertion failure displaying pop-up menu while downloading
   32308         * WebView.subproj/WebMainResourceClient.m:
   32309         (-[WebMainResourceClient handle:didReceiveResponse:]): No need to assert that the controller is
   32310         not deferred if this is a handle being used for a download.
   32311         (-[WebMainResourceClient handle:didReceiveData:]): Likewise.
   32312         (-[WebMainResourceClient handleDidFinishLoading:]): Likewise.
   32313         (-[WebMainResourceClient handle:didFailLoadingWithError:]): Likewise.
   32314 
   32315 2003-01-31  Trey Matteson  <trey (a] apple.com>
   32316 
   32317         New plumbing for autofill/autocomplete.  WebBrowser receives controlText delegate
   32318         messages from our form widgets.  Should result in no behavior change.
   32319 
   32320         New private API is exposed for the app to set a WebFormDelegate.
   32321 
   32322         Reviewed by Richard
   32323 
   32324         * WebCoreSupport.subproj/WebBridge.m:  Pass msgs from WC on to the controller's FormDelegate.
   32325         (formDelegate):  Little utility function.
   32326         (-[WebBridge controlTextDidBeginEditing:]):
   32327         (-[WebBridge controlTextDidEndEditing:]):
   32328         (-[WebBridge controlTextDidChange:]):
   32329         (-[WebBridge control:textShouldBeginEditing:]):
   32330         (-[WebBridge control:textShouldEndEditing:]):
   32331         (-[WebBridge control:didFailToFormatString:errorDescription:]):
   32332         (-[WebBridge control:didFailToValidatePartialString:errorDescription:]):
   32333         (-[WebBridge control:isValidObject:]):
   32334         (-[WebBridge control:textView:doCommandBySelector:]):
   32335         * WebKit.exp:  New class exported.
   32336         * WebKit.pbproj/project.pbxproj:  New WebFormDelegate files.
   32337         * WebView.subproj/WebControllerPrivate.h:  API to set/get FormDelegate.
   32338         * WebView.subproj/WebControllerPrivate.m:
   32339         (-[WebController _setFormDelegate:]):  simple setter
   32340         (-[WebController _formDelegate]):  simple getter
   32341         * WebView.subproj/WebFormDelegate.h: Added.
   32342         * WebView.subproj/WebFormDelegate.m: Added.
   32343         NOP impls for all these delegate methods.
   32344         (-[WebFormDelegate controlTextDidBeginEditing:inFrame:]):
   32345         (-[WebFormDelegate controlTextDidEndEditing:inFrame:]):
   32346         (-[WebFormDelegate controlTextDidChange:inFrame:]):
   32347         (-[WebFormDelegate control:textShouldBeginEditing:inFrame:]):
   32348         (-[WebFormDelegate control:textShouldEndEditing:inFrame:]):
   32349         (-[WebFormDelegate control:didFailToFormatString:errorDescription:inFrame:]):
   32350         (-[WebFormDelegate control:didFailToValidatePartialString:errorDescription:inFrame:]):
   32351         (-[WebFormDelegate control:isValidObject:inFrame:]):
   32352         (-[WebFormDelegate control:textView:doCommandBySelector:inFrame:]):
   32353 
   32354 2003-01-31  Chris Blumenberg  <cblu (a] apple.com>
   32355 
   32356         * English.lproj/StringsNotToBeLocalized.txt: Updated for recent changes.
   32357         * WebView.subproj/WebController.m: fixed key value
   32358 
   32359 2003-01-31  Chris Blumenberg  <cblu (a] apple.com>
   32360 
   32361         Fixed : 3155148 - image shown when dragging gets size from image file, not size as used on page
   32362 
   32363         Reviewed by darin.
   32364 
   32365         * Misc.subproj/WebNSViewExtras.h:
   32366         * Misc.subproj/WebNSViewExtras.m:
   32367         (-[NSView _web_dragPromisedImage:rect:URL:fileType:title:event:]): take a rect so we know the original size and origin
   32368         * WebKit.exp: added WebElementImageRectKey
   32369         * WebView.subproj/WebController.h: WebElementImageRectKey
   32370         * WebView.subproj/WebController.m: WebElementImageRectKey
   32371         * WebView.subproj/WebHTMLViewPrivate.m:
   32372         (-[WebHTMLView _handleMouseDragged:]): call _web_dragPromisedImage with WebElementImageRect
   32373         * WebView.subproj/WebImageView.m: 
   32374         (-[WebImageView menuForEvent:]): provide the WebElementImageRect since we do this for other image elements
   32375         (-[WebImageView mouseDragged:]): call _web_dragPromisedImage with [self bounds]
   32376 
   32377 === Safari-55 ===
   32378 
   32379 2003-01-30  Chris Blumenberg  <cblu (a] apple.com>
   32380 
   32381         Backed out my fix for 3161102. Richard and I found problems the fix. 3161102 turns out to not be an issue.
   32382 
   32383         Reviewed by rjw.
   32384 
   32385         * History.subproj/WebHistoryItem.m:
   32386         (+[WebHistoryItem _releaseAllPendingPageCaches]):
   32387         * WebView.subproj/WebHTMLView.m:
   32388         (-[WebHTMLView windowWillClose:]):
   32389 
   32390 2003-01-30  Chris Blumenberg  <cblu (a] apple.com>
   32391 
   32392         Fixed: 3161102 - Avoid retain cycles by destroying plug-ins in the page cache before dealloc
   32393 
   32394         Reviewed by rjw.
   32395 
   32396         * History.subproj/WebHistoryItem.m:
   32397         (+[WebHistoryItem _releaseAllPendingPageCaches]): iterate over all of the plug-ins and call destroy
   32398         * WebView.subproj/WebHTMLView.m:
   32399         (-[WebHTMLView windowWillClose:]): clear page cache
   32400 
   32401 2003-01-30  Chris Blumenberg  <cblu (a] apple.com>
   32402 
   32403         Fixed: 3160464 - Slideback sometimes happens twice
   32404 
   32405         Because we start drags in mouseDragged (which AppKit says we shouldn't), we get mouseDragged events
   32406         after a drag (image, link, text etc) has ended. We also get mouseDragged events after we've sent the
   32407         fake mouseUp to WebCore. That is probably bad for unknown reasons.
   32408 
   32409         Reviewed by darin.
   32410 
   32411         * WebView.subproj/WebHTMLView.m:
   32412         (-[WebHTMLView mouseDown:]): set ignoringMouseDraggedEvents to NO
   32413         (-[WebHTMLView mouseDragged:]): check ignoringMouseDraggedEvents
   32414         (-[WebHTMLView draggedImage:endedAt:operation:]): set ignoringMouseDraggedEvents to NO
   32415         * WebView.subproj/WebHTMLViewPrivate.h: added ignoringMouseDraggedEvents
   32416 
   32417 2003-01-30  Darin Adler  <darin (a] apple.com>
   32418 
   32419         Reviewed by John.
   32420 
   32421         - fixed 3160710 -- REGRESSION: bizrate.com front page ad in wrong position
   32422 
   32423         The new code to compute port coordinates was screwing up somehow.
   32424         I had to roll it out and we'll have to try again to fix the problem Ed was fixing.
   32425 
   32426         * Plugins.subproj/WebBaseNetscapePluginView.m:
   32427         (-[WebBaseNetscapePluginView saveAndSetPortStateForUpdate:]):
   32428         Roll back changes between 1.45 and 1.47.
   32429 
   32430 2003-01-29  Darin Adler  <darin (a] apple.com>
   32431 
   32432         Reviewed by John.
   32433 
   32434         - fixed 3158624 -- crash reentering WebBaseNetscapePluginView removeTrackingRect closing window
   32435 
   32436         * Plugins.subproj/WebBaseNetscapePluginView.m:
   32437         (-[WebBaseNetscapePluginView removeTrackingRect]):
   32438         Set tracking tag to 0 before releasing the window to prevent reentering.
   32439 
   32440 2003-01-29  Ken Kocienda  <kocienda (a] apple.com>
   32441 
   32442         Reviewed by Darin.
   32443 
   32444         Fix for this bug:
   32445 
   32446         Radar 3142818 (Downloading many items quickly can cause future page loads to fail)
   32447 
   32448         The issue was with a mismatch between different object's idea about
   32449         whether callbacks were being deferred. I have simplified the code in this
   32450         area somewhat, and I have added some asserts to make sure that callbacks
   32451         are not sent when deferalls are on. 
   32452 
   32453         More work will need to be done in callback deferral-land, however. This change
   32454         fixes the bug, but it may not be a good long-term fix.  I will file a bug on 
   32455         the need for this additonal work.
   32456 
   32457         * WebView.subproj/WebBaseResourceHandleDelegate.h:
   32458         * WebView.subproj/WebBaseResourceHandleDelegate.m:
   32459         (-[WebBaseResourceHandleDelegate defersCallbacks]): Added method.
   32460         * WebView.subproj/WebMainResourceClient.h: Removed unneeded defersBeforeCheckingPolicy flag.
   32461         * WebView.subproj/WebMainResourceClient.m:
   32462         (-[WebMainResourceClient continueAfterNavigationPolicy:request:]): Unconditionally set 
   32463         callback deferrals to NO.
   32464         (-[WebMainResourceClient handle:willSendRequest:]): Remove all callback deferral code here.
   32465         (-[WebMainResourceClient continueAfterContentPolicy:response:]): Unconditionally set 
   32466         callback deferrals to NO.
   32467         (-[WebMainResourceClient handle:didReceiveResponse:]): Assert that the handle argument
   32468         to this method, the client (self), and the data source's controller all are not
   32469         deferring callbacks.
   32470         Unconditionally set callback deferrals to YES.
   32471         (-[WebMainResourceClient handle:didReceiveData:]): Ditto
   32472         (-[WebMainResourceClient handleDidFinishLoading:]): Ditto
   32473         (-[WebMainResourceClient handle:didFailLoadingWithError:]): Ditto
   32474 
   32475 2003-01-29  John Sullivan  <sullivan (a] apple.com>
   32476 
   32477         - fixed 3160116 -- REGRESSION:leak in WebBookmarkLeaf at startup
   32478 
   32479         Reviewed by Darin
   32480 
   32481         * Bookmarks.subproj/WebBookmarkLeaf.m:
   32482         (-[WebBookmarkLeaf initFromDictionaryRepresentation:withGroup:]):
   32483         don't leak the _entry that was created in initWithURLString:title:group:
   32484 
   32485 2003-01-29  Trey Matteson  <trey (a] apple.com>
   32486 
   32487         3159750 - REGRESSION: cursor is I-beam when over a standalone image
   32488 
   32489         We now reset the cursor to arrow before switching doc views.
   32490 
   32491         Also, made various replacements of "id <WebDocumentView>" with "NSView < WebDocumentView> *"
   32492         to get better compile time checking.
   32493 
   32494         Reviewed by Darin.
   32495 
   32496         * WebView.subproj/WebFramePrivate.m:
   32497         (-[WebFrame _makeDocumentView]):  Use NSView*
   32498         (-[WebFrame _transitionToCommitted:]): Use NSView*
   32499         * WebView.subproj/WebViewPrivate.h: Use NSView*
   32500         * WebView.subproj/WebViewPrivate.m:
   32501         (-[WebView _setDocumentView:]): Use NSView*.  Reset cursor.
   32502         (-[WebView _makeDocumentViewForDataSource:]): Use NSView*
   32503 
   32504 2003-01-29  Chris Blumenberg  <cblu (a] apple.com>
   32505 
   32506         3159529 - REGRESSION: URLs with no path are saved as "-.html"
   32507 
   32508         Reviewed by darin, trey, kocienda.
   32509 
   32510         * Misc.subproj/WebResourceResponseExtras.m:
   32511         (-[NSURL _web_suggestedFilenameForSavingWithMIMEType:]): Don't use the lastPathComponent if it is "/".
   32512 
   32513 2003-01-28  Trey Matteson  <trey (a] apple.com>
   32514 
   32515         Removing ERROR() that isn't an error, left over from the Safari-48 download firedrill.
   32516 
   32517         Reviewed by Chris.
   32518 
   32519         * Downloads.subproj/WebDownloadHandler.m:
   32520         (-[WebDownloadHandler cleanUpAfterFailure]):  Don't ERROR if we are asked to cleanup
   32521         a file and there is nothing to cleanup.  This can happen in the rare case of the
   32522         download being canceled before the first byte arrives, and we deal properly, no ERROR.
   32523 
   32524 2003-01-28  Chris Blumenberg  <cblu (a] apple.com>
   32525 
   32526         Fixed: 3150856 - crash with full-size plugins in frame or iframe
   32527 
   32528         Reviewed by darin.
   32529 
   32530         * Plugins.subproj/WebBaseNetscapePluginView.m:
   32531         (-[WebBaseNetscapePluginView start]): added assert
   32532         * Plugins.subproj/WebNetscapePluginDocumentView.m:
   32533         (-[WebNetscapePluginDocumentView setDataSource:]): added assert
   32534         * WebView.subproj/WebFramePrivate.m:
   32535         (-[WebFrame _makeDocumentView]): Don't call setDataSource here because the view is not in the view hierarchy at this point.
   32536         * WebView.subproj/WebViewPrivate.m:
   32537         (-[WebView _makeDocumentViewForDataSource:]): Call setDataSource on the document view after it has been placed in the view hierarchy. This what we for the top-level view, so should do this for views in subframes as well.
   32538 
   32539 2003-01-28  Chris Blumenberg  <cblu (a] apple.com>
   32540 
   32541         Fixed: 3156172 - No filename correction when downloading images via drag & drop
   32542 
   32543         Reviewed by mjs, john, trey.
   32544 
   32545         * WebView.subproj/WebControllerPrivate.h:
   32546         * WebView.subproj/WebControllerPrivate.m:
   32547         (-[WebController _downloadURL:]): call _downloadURL:toDirectory:
   32548         (-[WebController _downloadURL:toDirectory:]): call -[WebFrame _downloadRequest:toDirectory:]
   32549         * WebView.subproj/WebDataSourcePrivate.h:
   32550         * WebView.subproj/WebDataSourcePrivate.m:
   32551         (-[WebDataSourcePrivate dealloc]): release the download directory
   32552         (-[WebDataSource _setDownloadDirectory:]): new
   32553         (-[WebDataSource _downloadDirectory]): new
   32554         * WebView.subproj/WebFramePrivate.h:
   32555         * WebView.subproj/WebFramePrivate.m:
   32556         (-[WebFrame _downloadRequest:toDirectory:]): renamed
   32557         * WebView.subproj/WebHTMLView.m:
   32558         (-[WebHTMLView namesOfPromisedFilesDroppedAtDestination:]): call -[WebController _downloadURL:toDirectory:]
   32559         * WebView.subproj/WebImageView.m:
   32560         (-[WebImageView namesOfPromisedFilesDroppedAtDestination:]): call -[WebController _downloadURL:toDirectory:]
   32561         * WebView.subproj/WebMainResourceClient.m:
   32562         (-[WebMainResourceClient continueAfterContentPolicy:response:]): if the data source has a download directory, use it plus the filename from the response as download path
   32563 
   32564 2003-01-28  Trey Matteson  <trey (a] apple.com>
   32565 
   32566         2940179 - Arrow cursor should change to link cursor after click of link in non-frontmost window
   32567         3158240 - cursor does not track when switching from panels to safari windows
   32568 
   32569         Two changes here:  First, we post fake mousemoved events to get the cursor fixed up
   32570         without checking if the mouse is down (WC deals with that now).  That fixes 2940179,
   32571         because the button is down when we get notified of becoming key.
   32572 
   32573         Second, we observe key window instead of main window notifications everywhere, so we
   32574         update the cursor when clicking between a panel and our doc windows.
   32575 
   32576         Reviewed by Darin.
   32577 
   32578         * WebView.subproj/WebHTMLView.m:
   32579         (-[WebHTMLView addMouseMovedObserver]):  s/main/key/g
   32580         (-[WebHTMLView addWindowObservers]):    s/main/key/g
   32581         (-[WebHTMLView removeWindowObservers]):  s/main/key/g
   32582         (-[WebHTMLView windowDidBecomeKey:]):  s/main/key/g
   32583         (-[WebHTMLView windowDidResignKey:]):  s/main/key/g
   32584         * WebView.subproj/WebHTMLViewPrivate.m:
   32585         (-[WebHTMLView _frameOrBoundsChanged]):  Always post mousemoved event.
   32586 
   32587 2003-01-28  John Sullivan  <sullivan (a] apple.com>
   32588 
   32589         - fixed 3158304 -- Assertion failure cancelling "Add Bookmark"
   32590         or deleting newly-created bookmarks
   32591 
   32592         Reviewed by Darin
   32593 
   32594         * Bookmarks.subproj/WebBookmarkGroup.m:
   32595         (-[WebBookmarkGroup _bookmark:changedUUIDFrom:to:]):
   32596         new method that notifies group when a bookmark that's already
   32597         in a group changes its UUID -- the UUID to bookmark dictionary
   32598         updates for this change.
   32599 
   32600         * Bookmarks.subproj/WebBookmarkGroupPrivate.h:
   32601         private declaration for this method
   32602 
   32603         * Bookmarks.subproj/WebBookmark.m:
   32604         (-[WebBookmark _setUUID:]):
   32605         notify group when UUID changes
   32606         (-[WebBookmark UUID]):
   32607         ditto
   32608 
   32609 2003-01-28  Darin Adler  <darin (a] apple.com>
   32610 
   32611         Reviewed by Ken.
   32612 
   32613         - fixed 3156197 -- leak in -[WebBookmarkList initFromDictionaryRepresentation:withGroup:]
   32614 
   32615         * Bookmarks.subproj/WebBookmarkList.m:
   32616         (-[WebBookmarkList initFromDictionaryRepresentation:withGroup:]):
   32617         Fixed storage leak by not allocating the list here, because [self init] will
   32618         be called and that will allocate the list.
   32619 
   32620 2003-01-26  Maciej Stachowiak  <mjs (a] apple.com>
   32621 
   32622         Reviewed by Darin and Ken.
   32623 
   32624         * English.lproj/StringsNotToBeLocalized.txt: Removed unused exception.
   32625 
   32626 2003-01-27  Chris Blumenberg  <cblu (a] apple.com>
   32627 
   32628         Fixed: 3156230 - REGRESSION: Java 141: Safari Does Not Stop Applets When Browser Window Closes
   32629 
   32630         Reviewed by dave.
   32631 
   32632         * Plugins.subproj/WebPluginController.h:
   32633         * Plugins.subproj/WebPluginController.m:
   32634         (-[WebPluginController destroyAllPlugins]): renamed from HTMLViewWillBeDeallocated because it may get called before the dealloc
   32635         * WebView.subproj/WebHTMLView.m:
   32636         (-[WebHTMLView addWindowObservers]): observe NSWindowWillCloseNotification
   32637         (-[WebHTMLView removeWindowObservers]): remove observer for NSWindowWillCloseNotification
   32638         (-[WebHTMLView windowWillClose:]): call destroyAllPlugins
   32639         * WebView.subproj/WebHTMLViewPrivate.m:
   32640         (-[WebHTMLViewPrivate dealloc]): call destroyAllPlugins
   32641 
   32642 2003-01-27  Richard Williamson   <rjw (a] apple.com>
   32643 
   32644         Fixed 3139909.  Fake the resource load delegate messages (minus willSendRequest)
   32645         when a page is loaded from a the page cache.
   32646         
   32647         Reviewed by john.
   32648 
   32649         * WebView.subproj/WebBaseResourceHandleDelegate.m:
   32650         (-[WebBaseResourceHandleDelegate handle:didReceiveResponse:]):
   32651         * WebView.subproj/WebDataSourcePrivate.h:
   32652         * WebView.subproj/WebDataSourcePrivate.m:
   32653         (-[WebDataSourcePrivate dealloc]):
   32654         (-[WebDataSource _addResponse:]):
   32655         (-[WebDataSource _responses]):
   32656         * WebView.subproj/WebFramePrivate.m:
   32657         (-[WebFrame _opened]):
   32658 
   32659 2003-01-27  Trey Matteson  <trey (a] apple.com>
   32660 
   32661         3157104 - reproducible assert in _continueFragmentScrollAfterNavigationPolicy
   32662 
   32663         Remove assertion, and it turns out the existing code will handle the case.
   32664 
   32665         * WebView.subproj/WebFramePrivate.m:
   32666         (-[WebFrame _continueFragmentScrollAfterNavigationPolicy:request:]):
   32667 
   32668 2003-01-27  Richard Williamson   <rjw (a] apple.com>
   32669 
   32670         Make emptying the page cache synchronous when "Empty Cache"
   32671         is selected from menu.  More bulletproofing to ensure that
   32672         3155781 doesn't happen.
   32673         
   32674         Reviewed by trey.
   32675 
   32676         * History.subproj/WebBackForwardList.m:
   32677         (-[WebBackForwardList clearPageCache]):
   32678 
   32679 2003-01-27  Chris Blumenberg  <cblu (a] apple.com>
   32680 
   32681         Fixed: 3156235 - change throttle for plug-in null events to 50 frames per second (when frontmost)
   32682 
   32683         Reviewed by dave.
   32684 
   32685         * Plugins.subproj/WebBaseNetscapePluginView.m:
   32686 
   32687 2003-01-27  Richard Williamson   <rjw (a] apple.com>
   32688 
   32689         Fixed 3151241.  Cleanly handle nil return from resource:willSendRequest:fromDataSource:.
   32690         
   32691         Reviewed by trey.
   32692 
   32693         * WebView.subproj/WebBaseResourceHandleDelegate.m:
   32694         (-[WebBaseResourceHandleDelegate handle:willSendRequest:]):
   32695         (-[WebBaseResourceHandleDelegate handleDidFinishLoading:]):
   32696         (-[WebBaseResourceHandleDelegate handle:didFailLoadingWithError:]):
   32697         (-[WebBaseResourceHandleDelegate cancelWithError:]):
   32698         * WebView.subproj/WebControllerPrivate.m:
   32699         (-[WebController _mainReceivedError:fromDataSource:complete:]):
   32700 
   32701 2003-01-27  John Sullivan  <sullivan (a] apple.com>
   32702 
   32703         - fixed 3156744 -- REGRESSION: Renaming bookmarks dragged 
   32704         into bookmark bar does not work at first
   32705 
   32706         Reviewed by Darin
   32707 
   32708         * Bookmarks.subproj/WebBookmarkList.m:
   32709         (-[WebBookmarkList insertChild:atIndex:]):
   32710         was adding self to its own group (a no-op), instead of adding
   32711         the new child to self's group. This was a typo from the
   32712         refactoring to fix 3152427.
   32713 
   32714 2003-01-27  Chris Blumenberg  <cblu (a] apple.com>
   32715 
   32716         * English.lproj/StringsNotToBeLocalized.txt: Updated for changes I previously made.
   32717 
   32718 2003-01-26  Chris Blumenberg  <cblu (a] apple.com>
   32719 
   32720         Fixed: 3156725 - Partially selected links show extra underlining when dragged
   32721 
   32722         Reviewed by darin.
   32723 
   32724         * WebCoreSupport.subproj/WebTextRenderer.m:
   32725         (drawLineForCharacters...): don't ignore "from" "to" parameters
   32726 
   32727 2003-01-25  Darin Adler  <darin (a] apple.com>
   32728 
   32729         Reviewed by Maciej.
   32730 
   32731         - fixed 3126211 -- "go back" buttons that use "history.go(-1)" doesn't work (verizonwireless.com is an example)
   32732 
   32733         Implemented new bridge functions for use by the history object.
   32734 
   32735         * History.subproj/WebBackForwardList.h: Added backListCount and entryAtIndex:.
   32736         * History.subproj/WebBackForwardList.m:
   32737         (-[WebBackForwardList backListCount]): Added.
   32738         (-[WebBackForwardList entryAtIndex:]): Added.
   32739         * WebCoreSupport.subproj/WebBridge.m:
   32740         (-[WebBridge historyLength]): Added. Calls backListCount.
   32741         (-[WebBridge goBackOrForward:]): Added. Calls entryAtIndex: and then goBackOrForwardToItem:.
   32742 
   32743 2003-01-25  Chris Blumenberg  <cblu (a] apple.com>
   32744 
   32745         Fixed: 3153605 - Drag image when dragging text should be the actual text
   32746 
   32747         Reviewed by darin.
   32748 
   32749         * Misc.subproj/WebNSImageExtras.m:
   32750         (-[NSImage _web_dissolveToFraction:]): handle non-flipped images
   32751         * Misc.subproj/WebNSViewExtras.h: moved some constants around
   32752         * Misc.subproj/WebNSViewExtras.m:
   32753         * Resources/text_clipping.tiff: Removed.
   32754         * WebKit.pbproj/project.pbxproj:
   32755         * WebView.subproj/WebHTMLViewPrivate.m:
   32756         (-[WebHTMLView _handleMouseDragged:]): cleaned-up, get text drag image from WebCore
   32757 
   32758 2003-01-25  Darin Adler  <darin (a] apple.com>
   32759 
   32760         * Plugins.subproj/WebBaseNetscapePluginView.m: Replace some tabs with spaces.
   32761 
   32762 2003-01-24  Richard Williamson   <rjw (a] apple.com>
   32763 
   32764         Cleaned up some stray comments.
   32765         
   32766         Reviewed by kocienda.
   32767 
   32768         * Misc.subproj/WebUnicode.m:
   32769         (getShape):
   32770         (nextChar):
   32771         (glyphVariantLogical):
   32772         (shapedString):
   32773 
   32774 2003-01-24  Trey Matteson  <trey (a] apple.com>
   32775 
   32776         Chris pointed out a FIXME that led to a more contained way to make sure the cursor
   32777         is correct during and after image/text/URL dragging.
   32778 
   32779         Reviewed by Chris.
   32780 
   32781         * WebView.subproj/WebHTMLView.m:
   32782         (-[WebHTMLView draggedImage:endedAt:operation:]):  No need to reset the cursor at
   32783         the end of dragging.  WC deals with it.
   32784         * WebView.subproj/WebHTMLViewPrivate.m:
   32785         (-[WebHTMLView _handleMouseDragged:]):  No need to set the cursor to arrow, WC
   32786         deals with it.
   32787 
   32788 2003-01-24  Darin Adler  <darin (a] apple.com>
   32789 
   32790         Reviewed by Dave.
   32791 
   32792         - fixed 3142852 -- frame content repeatedly requested
   32793 
   32794         * WebCoreSupport.subproj/WebBridge.m: (-[WebBridge incomingReferrer]):
   32795         Added a way to get the referrer across the bridge, needed for bug fix.
   32796 
   32797 2003-01-24  Ed Voas  <voas (a] apple.com>
   32798 
   32799         Reviewed by Darin.
   32800 
   32801         Netscape plugins were being improperly positioned. I noticed this when I
   32802         put the web view into a window with borders around it (Carbon metal window,
   32803         but I would imagine Cocoa metal would do it too).
   32804 
   32805         * Plugins.subproj/WebBaseNetscapePluginView.m:
   32806         (-[WebBaseNetscapePluginView saveAndSetPortStateForUpdate:]):
   32807 
   32808 2003-01-23  Trey Matteson  <trey (a] apple.com>
   32809 
   32810         3155162 - cursor changes to I-beam after dragging image
   32811         3154468 - no mouseup event comes through after text snippet drag
   32812 
   32813         During AK dragging the system takes over the event stream and we never get any mouse
   32814         move or up events.  It also changes the cursor behind out back.  When done
   32815         cached state that thinks it knows the current cursor is wrong.
   32816 
   32817         The fix is that after the drag we reset the cursor and synthesize a mouseup event,
   32818         which then sets the cursor based on what we're really over.
   32819 
   32820         Reviewed by Darin.
   32821 
   32822         * WebView.subproj/WebHTMLView.m:
   32823         (-[WebHTMLView draggedImage:endedAt:operation:]):  After the drag,
   32824         reset the cursor, fake up a mouseup event.
   32825 
   32826 2003-01-24  John Sullivan  <sullivan (a] apple.com>
   32827 
   32828         Reviewed by Trey
   32829 
   32830         * WebView.subproj/WebHTMLView.m:
   32831         (-[WebHTMLView takeFindStringFromSelection:]):
   32832         Now uses new _web_setFindPasteboardString:withOwner: to share code.
   32833 
   32834 2003-01-24  John Sullivan  <sullivan (a] apple.com>
   32835 
   32836         Reviewed by Trey
   32837 
   32838         * Misc.subproj/WebNSPasteboardExtras.h:
   32839         * Misc.subproj/WebNSPasteboardExtras.m:
   32840         (+[NSPasteboard _web_setFindPasteboardString:withOwner:]):
   32841         New method to put text on the Find pasteboard.
   32842 
   32843 2003-01-23  Maciej Stachowiak  <mjs (a] apple.com>
   32844 
   32845         Reviewed by Trey.
   32846 
   32847         * WebView.subproj/WebController.h: Remove unneeded declaration in
   32848         sample code.
   32849 
   32850 2003-01-23  Chris Blumenberg  <cblu (a] apple.com>
   32851 
   32852         Made WebTextView use the same format for context menus as the rest of WebKit.
   32853         Implemented "Copy" context menu.
   32854 
   32855         Reviewed by john.
   32856 
   32857         * English.lproj/Localizable.strings:
   32858         * WebView.subproj/WebControllerPrivate.m:
   32859         (-[WebController _menuForElement:]): tweak.
   32860         * WebView.subproj/WebDefaultContextMenuDelegate.m:
   32861         (-[WebDefaultContextMenuDelegate contextMenuItemsForElement:defaultMenuItems:]): added "Copy" context menu.
   32862         * WebView.subproj/WebImageView.m:
   32863         (-[WebImageView menuForEvent:]): added asserts
   32864         * WebView.subproj/WebTextView.m:
   32865         (-[WebTextView menuForEvent:]): implemented
   32866 
   32867 2003-01-23  Maciej Stachowiak  <mjs (a] apple.com>
   32868 
   32869         Reviewed by Darin.
   32870 
   32871         * WebView.subproj/WebController.m: Add missing static.
   32872 
   32873 2003-01-23  Darin Adler  <darin (a] apple.com>
   32874 
   32875         Reviewed by John.
   32876 
   32877         * Downloads.subproj/WebBinHexDecoder.m: (-[WebBinHexDecoder fileAttributes]):
   32878         * Downloads.subproj/WebMacBinaryDecoder.m: (-[WebMacBinaryDecoder fileAttributes]):
   32879         Use "FinderFlags" instead of "FinderInfo" as appropriate, since these are
   32880         just the Finder flags, not all the Finder info.
   32881 
   32882         * Downloads.subproj/WebDownloadHandler.m: (-[WebDownloadHandler createFileIfNecessary]):
   32883         * Misc.subproj/WebNSWorkspaceExtras.m: (-[NSWorkspace _web_noteFileChangedAtPath:]):
   32884         * Plugins.subproj/WebNetscapePluginPackage.m:
   32885         (-[WebNetscapePluginPackage openResourceFile]):
   32886         (-[WebNetscapePluginPackage pathByResolvingSymlinksAndAliasesInPath:]):
   32887         (-[WebNetscapePluginPackage load]):
   32888         Use fileSystemRepresentation instead of fileSystemRepresentationWithPath:
   32889         because it's simpler and there's no good reason to use the other one.
   32890 
   32891         * WebView.subproj/WebUserAgentSpoofTable.gperf: Improved one of the motivating comments.
   32892 
   32893         * English.lproj/StringsNotToBeLocalized.txt: Update for recent changes.
   32894 
   32895 === Safari-54 ===
   32896 
   32897 2003-01-22  Chris Blumenberg  <cblu (a] apple.com>
   32898 
   32899         Fixed problem where we weren't stopping the Java plug-in. This problem was introduced on Jan. 1
   32900         when the ownership of the WebPluginController was moved from WebFrame to WebDataSource. This
   32901         change moves the WebPluginController to the WebHTMLView. Why this change?
   32902 
   32903         - The state of the plug-ins (currently only the Java plug-in) completely relies on the state of
   32904           the WebHTMLView, not on the state of the WebDataSource.
   32905 
   32906         - WebHTMLView and WebDataSource are usually coupled via WebView and WebFrame, but not always.
   32907           In a transitional state, the WebHTMLView may not be up to date with the WebDataSource.
   32908 
   32909         - WebPluginController controls an array of views. It makes more sense for this object to be
   32910           owned by a view (WebHTMLView) not a model.
   32911 
   32912         Reviewed by darin.
   32913 
   32914         * Plugins.subproj/WebPluginController.h:
   32915         * Plugins.subproj/WebPluginController.m:
   32916         (-[WebPluginController initWithHTMLView:]): renamed, take the HTML view
   32917         (-[WebPluginController addPlugin:]): use the HTML view
   32918         (-[WebPluginController HTMLViewWillBeDeallocated]): renamed
   32919         (-[WebPluginController showURL:inFrame:]): use the HTML view
   32920         (-[WebPluginController showStatus:]): use the HTML view
   32921         * WebCoreSupport.subproj/WebBridge.m:
   32922         (-[WebBridge pluginViewWithPackage:attributes:baseURL:]): get the plug-in controller from the HTML view
   32923         * WebView.subproj/WebDataSourcePrivate.h:
   32924         * WebView.subproj/WebDataSourcePrivate.m:
   32925         (-[WebDataSourcePrivate dealloc]): removed calls to plug-in controller 
   32926         * WebView.subproj/WebHTMLView.m:
   32927         (-[WebHTMLView initWithFrame:]): create plug-in controller
   32928         (-[WebHTMLView viewWillMoveToWindow:]): get plug-in controller from self, data source won't be accessible here since we don't have a superview
   32929         (-[WebHTMLView viewDidMoveToWindow]): get plug-in controller from self
   32930         (-[WebHTMLView addSubview:]): get plug-in controller from self
   32931         * WebView.subproj/WebHTMLViewPrivate.h:
   32932         * WebView.subproj/WebHTMLViewPrivate.m:
   32933         (-[WebHTMLViewPrivate dealloc]): release plug-in controller
   32934         (-[WebHTMLView _pluginController]): added
   32935 
   32936 2003-01-22  John Sullivan  <sullivan (a] apple.com>
   32937 
   32938         - fixed 3152427 -- Need unique IDs for bookmarks, for 
   32939         synching's sake
   32940 
   32941         Bookmarks now have a UUID string so that each can maintain its identity
   32942         even in the face of multi-machine synching. One known loose end is written 
   32943         up in 3153832 (unique IDs in bookmarks aren't preserved correctly after copy/paste).
   32944         This should be good enough now for the iSynch folks to start implementing
   32945         the bookmarks-synching conduit.
   32946 
   32947         I also did some cleanup in this area to share more code and handle
   32948         init methods more cleanly, inspired by earlier feedback from Trey and Darin.
   32949 
   32950         Reviewed by Trey and Darin
   32951 
   32952         * Bookmarks.subproj/WebBookmark.h:
   32953         new _UUID ivar, UUID declaration
   32954         * Bookmarks.subproj/WebBookmarkPrivate.h:
   32955         new _setUUID and _hasUUID declarations
   32956 
   32957         * Bookmarks.subproj/WebBookmark.m:
   32958         (-[WebBookmark dealloc]):
   32959         assert that group is nil here; release _UUID
   32960         (-[WebBookmark copyWithZone:]):
   32961         implement the code shared by each subclass; formerly had no implementation.
   32962         (-[WebBookmark _setUUID:]):
   32963         private method to set the UUID
   32964         (-[WebBookmark UUID]):
   32965         public method to get the UUID; this lazily creates the UUID.
   32966         (-[WebBookmark _hasUUID]):
   32967         private method to check whether there's a UUID without creating
   32968         one by side effect (as calling -[WebBookmark UUID] would)
   32969         (-[WebBookmark initFromDictionaryRepresentation:withGroup:]):
   32970         implement the code shared by each subclass; formerly had no implementation.
   32971         (-[WebBookmark dictionaryRepresentation]):
   32972         implement the code shared by each subclass; formerly had no implementation.
   32973 
   32974         * Bookmarks.subproj/WebBookmarkGroup.h:
   32975         new _bookmarksByUUID ivar
   32976         * Bookmarks.subproj/WebBookmarkGroupPrivate.h:
   32977         declarations for new methods _addBookmark: and _removeBookmark:
   32978 
   32979         * Bookmarks.subproj/WebBookmarkGroup.m:
   32980         (-[WebBookmarkGroup init]):
   32981         new method, just complains that you should have called initWithFile: instead.
   32982         (-[WebBookmarkGroup initWithFile:]):
   32983         create _bookmarksByUUID
   32984         (-[WebBookmarkGroup dealloc]):
   32985         release _bookmarksByUUID
   32986         (-[WebBookmarkGroup _addBookmark:]):
   32987         new method, if bookmark has UUID, adds it to table, and recursively
   32988         processes children the same way
   32989         (-[WebBookmarkGroup _removeBookmark:]):
   32990         new method, if bookmark has UUID, removes it from table, and recursively
   32991         processes children the same way
   32992         (-[WebBookmarkGroup _setTopBookmark:]):
   32993         replace [bookmark setGroup:group] with [group _addBookmark:bookmark]
   32994         so it runs through the UUID code
   32995         (-[WebBookmarkGroup _bookmarkChildren:wereRemovedFromParent:]):
   32996         retitled this from "wereRemovedToParent"
   32997 
   32998         * Bookmarks.subproj/WebBookmarkLeaf.m:
   32999         (-[WebBookmarkLeaf init]):
   33000         now calls initWithURLString:title:group with nil parameters so that
   33001         there's a designated initializer
   33002         (-[WebBookmarkLeaf initFromDictionaryRepresentation:withGroup:]):
   33003         rewritten to do only the subclasses' part now
   33004         (-[WebBookmarkLeaf dictionaryRepresentation]):
   33005         rewritten to do only the subclasses' part now
   33006         (-[WebBookmarkLeaf copyWithZone:]):
   33007         rewritten to do only the subclasses' part now
   33008 
   33009         * Bookmarks.subproj/WebBookmarkList.m:
   33010         (-[WebBookmarkList init]):
   33011         now calls initWithTitle:group with nil parameters so that
   33012         there's a designated initializer
   33013         (-[WebBookmarkList initWithTitle:group:]):
   33014         replace [bookmark setGroup:group] with [group _addBookmark:bookmark]
   33015         so it runs through the UUID code
   33016         (-[WebBookmarkList initFromDictionaryRepresentation:withGroup:]):
   33017         rewritten to do only the subclasses' part now
   33018         (-[WebBookmarkList dictionaryRepresentation]):
   33019         rewritten to do only the subclasses' part now
   33020         (-[WebBookmarkList copyWithZone:]):
   33021         rewritten to do only the subclasses' part now
   33022         (-[WebBookmarkList _setGroup:]):
   33023         removed this override, which used to do the recursion to set the group
   33024         of children; this recursion is now done by -[WebBookmarkGroup _addBookmark:]
   33025         and _removeBookmark:
   33026         (-[WebBookmarkList removeChild:]):
   33027         wereRemovedToParent -> wereRemovedFromParent
   33028         (-[WebBookmarkList insertChild:atIndex:]):
   33029         replace [bookmark setGroup:group] with [group _addBookmark:bookmark]
   33030         so it runs through the UUID code
   33031 
   33032         * Bookmarks.subproj/WebBookmarkProxy.m:
   33033         (-[WebBookmarkProxy init]):
   33034         now calls initWithTitle:group with nil parameters so that
   33035         there's a designated initializer
   33036         (-[WebBookmarkProxy initWithTitle:group:]):
   33037         replace [bookmark setGroup:group] with [group _addBookmark:bookmark]
   33038         so it runs through the UUID code
   33039         (-[WebBookmarkProxy initFromDictionaryRepresentation:withGroup:]):
   33040         rewritten to do only the subclasses' part now
   33041         (-[WebBookmarkProxy dictionaryRepresentation]):
   33042         rewritten to do only the subclasses' part now
   33043         (-[WebBookmarkProxy copyWithZone:]):
   33044         rewritten to do only the subclasses' part now
   33045 
   33046 2003-01-22  Darin Adler  <darin (a] apple.com>
   33047 
   33048         Reviewed by Maciej.
   33049 
   33050         - fixed 3153673 -- spoof as MacIE to get into http://www.mazdausa.com
   33051         - fixed 3153678 -- spoof as MacIE for http://wap.sonyericsson.com/
   33052 
   33053         * WebView.subproj/WebUserAgentSpoofTable.gperf: Add the two new entries.
   33054         Also reorganize existing entries a bit.
   33055 
   33056 2003-01-22  Chris Blumenberg  <cblu (a] apple.com>
   33057 
   33058         Removed comment that I added by mistake.
   33059 
   33060         * WebView.subproj/WebHTMLView.m:
   33061         (-[WebHTMLView draggingSourceOperationMaskForLocal:]):
   33062 
   33063 2003-01-22  Chris Blumenberg  <cblu (a] apple.com>
   33064 
   33065         Fixed: 3153651 - text dragging does not work to Terminal
   33066 
   33067         Reviewed by trey.
   33068 
   33069         * WebView.subproj/WebHTMLView.m:
   33070         (-[WebHTMLView draggingSourceOperationMaskForLocal:]): Terminal only accepts the drag if one of the operations is generic. Made the operation both generic and copy.
   33071 
   33072 2003-01-21  Chris Blumenberg  <cblu (a] apple.com>
   33073 
   33074         Added support for text dragging.
   33075 
   33076         Reviewed by dave.
   33077 
   33078         * Resources/text_clipping.tiff: Added. Temp drag image until we can create an image of the selected text.
   33079         * WebCoreSupport.subproj/WebBridge.m:
   33080         (-[WebBridge mayStartDragWithMouseDraggedEvent:]): renamed, we now ask if OK to drag during the drag
   33081         * WebKit.exp: renamed element key for selected text
   33082         * WebKit.pbproj/project.pbxproj:
   33083         * WebView.subproj/WebController.h: renamed element key for selected text
   33084         * WebView.subproj/WebController.m: renamed element key for selected text
   33085         * WebView.subproj/WebHTMLViewPrivate.h:
   33086         * WebView.subproj/WebHTMLViewPrivate.m:
   33087         (-[WebHTMLView _handleMouseDragged:]): added support for text dragging
   33088         (-[WebHTMLView _mayStartDragWithMouseDragged:]): renamed, we now ask if OK to drag during the drag
   33089 
   33090 2003-01-20  Maciej Stachowiak  <mjs (a] apple.com>
   33091 
   33092         Reviewed by Trey.
   33093 
   33094         - fixed 3132120 - onchange handler not firing on mac.com webmail
   33095         * WebView.subproj/WebHTMLViewPrivate.m:
   33096         (-[WebNSTextView resignFirstResponder]): If we really resign first responder, and
   33097         our delegate responds to filedWillBecomeFirstResponder, then call that method.
   33098         (-[WebNSTextView becomeFirstResponder]): If we really become first responder, and
   33099         our delegate responds to filedWillBecomeFirstResponder, then call that method.
   33100 
   33101 2003-01-20  Trey Matteson  <trey (a] apple.com>
   33102 
   33103         Nit fix to remove a dead "cursor" ivar found while grepping.
   33104 
   33105         Reviewed by Richard.
   33106 
   33107         * WebView.subproj/WebDynamicScrollBarsView.h:
   33108         * WebView.subproj/WebDynamicScrollBarsView.m:
   33109 
   33110 2003-01-18  Maciej Stachowiak  <mjs (a] apple.com>
   33111 
   33112         Reviewed by John.
   33113 
   33114         - fixed 3123041 - VIP: Spewage at bottom of oregonlive.com and other similar pages
   33115 
   33116         * WebView.subproj/WebUserAgentSpoofTable.gperf: Added nj.com to spoof list
   33117         below oregonlive.com (which was already in there). Added comment explaining the
   33118         need to spoof a bit more.
   33119         * WebView.subproj/WebUserAgentSpoofTable.c:
   33120         (hash):
   33121         (_web_findSpoofTableEntry): Regenerated.
   33122 
   33123 2003-01-17  Chris Blumenberg  <cblu (a] apple.com>
   33124 
   33125         Fixed: 3143656 - crash in MIMETypeForFile when a large QT movie is dragged over window
   33126 
   33127         Reviewed by darin.
   33128 
   33129         * WebView.subproj/WebControllerPrivate.m:
   33130         (+[WebController _MIMETypeForFile:]): rewrote, now calls _web_guessedMIMEType
   33131 
   33132 2003-01-17  Darin Adler  <darin (a] apple.com>
   33133 
   33134         - compressed all our non-compressed TIFF files
   33135 
   33136         * Resources/nullplugin.tiff:
   33137         * Resources/url_icon.tiff:
   33138 
   33139 2003-01-16  Darin Adler  <darin (a] apple.com>
   33140 
   33141         * WebView.subproj/WebController.h: Fixed a comment that was out of date.
   33142 
   33143 2003-01-16  Chris Blumenberg  <cblu (a] apple.com>
   33144 
   33145         Fixed comment.
   33146 
   33147         * Plugins.subproj/WebBaseNetscapePluginView.m:
   33148 
   33149 2003-01-16  Chris Blumenberg  <cblu (a] apple.com>
   33150 
   33151         Fixed: 3125743 - right-click doesn't count as ctrl-click in Flash
   33152 
   33153         AppKit doesn't call mouseDown or mouseUp on right-click. Simulate control-click mouseDown and mouseUp so plug-ins get the right-click event as they do in Carbon
   33154 
   33155         Reviewed by darin.
   33156 
   33157         * Plugins.subproj/WebBaseNetscapePluginView.m:
   33158         (-[WebBaseNetscapePluginView rightMouseDown:]):
   33159         (-[WebBaseNetscapePluginView rightMouseUp:]):
   33160 
   33161 2003-01-16  Darin Adler  <darin (a] apple.com>
   33162 
   33163         Reviewed by John.
   33164 
   33165         - added an API for dumping the external representation of the render tree for testing
   33166 
   33167         * Misc.subproj/WebCoreStatistics.h: Added renderTreeAsExternalRepresentation.
   33168         * Misc.subproj/WebCoreStatistics.m: (-[WebFrame renderTreeAsExternalRepresentation]): Added.
   33169 
   33170         - removed remnants of an earlier more-naive cut at this same sort of thing
   33171 
   33172         * Misc.subproj/WebTestController.h: Removed.
   33173         * Misc.subproj/WebTestController.m: Removed.
   33174         * WebKit.exp: Removed WebTestController.
   33175         * WebKit.pbproj/project.pbxproj: Removed WebTestController.
   33176 
   33177         - other changes
   33178 
   33179         * WebCoreSupport.subproj/WebBridge.m: Had added new copyright date to touch a file.
   33180         That's not needed any more, but the date should be updated anyway.
   33181 
   33182 === Safari-52 ===
   33183 
   33184 2003-01-15  Maciej Stachowiak  <mjs (a] apple.com>
   33185 
   33186         Reviewed by Darin.
   33187 
   33188         - fixed 3143418 - controller assert in WebStandardPanels _didStartLoadingURL
   33189         - fixed 3141212 - crash in kjs garbage collection (contextimp mark)
   33190 
   33191         * WebCoreSupport.subproj/WebBridge.m:
   33192         (-[WebBridge startLoadingResource:withURL:]): If the data source
   33193         doesn't have a controller, then block the load.
   33194 
   33195 2003-01-15  Darin Adler  <darin (a] apple.com>
   33196 
   33197         Reviewed by Ken.
   33198 
   33199         - fixed problem where Content-Type was going into WebCore with suffixes like "charset"
   33200 
   33201         * WebView.subproj/WebDataSourcePrivate.m: (-[WebDataSource _commitIfReady:]):
   33202         Pass in contentType from the response, rather than the "Content-Type" header.
   33203         Also pass in the refresh header separately.
   33204 
   33205         * English.lproj/StringsNotToBeLocalized.txt: Updated for above change.
   33206 
   33207 2003-01-13  Maciej Stachowiak  <mjs (a] apple.com>
   33208 
   33209         Reviewed by Darin, Dave and Trey, and given the seal of approval by Don.
   33210 
   33211         Use new safer file removal call that does not handle directories.
   33212 
   33213         * Downloads.subproj/WebDownloadHandler.m:
   33214         (-[WebDownloadHandler cleanUpAfterFailure]): Use
   33215         _web_removeFileOnlyAtPath:
   33216         * Plugins.subproj/WebBaseNetscapePluginStream.m:
   33217         (-[WebBaseNetscapePluginStream dealloc]): Use _web_removeFileOnlyAtPath:
   33218         (-[WebBaseNetscapePluginStream finishedLoadingWithData:]): Use _web_removeFileOnlyAtPath:
   33219 
   33220 2003-01-14  Darin Adler  <darin (a] apple.com>
   33221 
   33222         Reviewed by Dave.
   33223 
   33224         * Plugins.subproj/WebBaseNetscapePluginStream.m:
   33225         (-[WebBaseNetscapePluginStream finishedLoadingWithData:]):
   33226         Fixed uninitialized variable warning so builds work again.
   33227 
   33228         * WebView.subproj/WebDataSourcePrivate.m: (+[WebDataSource _repTypes]): Added "application/xml".
   33229         * WebView.subproj/WebViewPrivate.m: (+[WebView _viewTypes]): Added "application/xml".
   33230 
   33231         * English.lproj/Localizable.strings: Regenerated.
   33232         * English.lproj/StringsNotToBeLocalized.txt: Updated for above change.
   33233 
   33234 2003-01-13  Darin Adler  <darin (a] apple.com>
   33235 
   33236         Reviewed by Trey, John, and Maciej, and given the seal of approval by Don.
   33237 
   33238         - fixed 3143317 -- plug-in supplied URLs cause correspondingly named files in /tmp to be deleted
   33239         - fixed 3143330 -- plug-in supplied URLs can overwrite files used in other windows by same plug-in
   33240 
   33241         * Plugins.subproj/WebBaseNetscapePluginStream.h: Make path be a char * rather than an NSString.
   33242         * Plugins.subproj/WebBaseNetscapePluginStream.m:
   33243         (-[WebBaseNetscapePluginStream dealloc]): Use unlink() to delete the temporary file we made.
   33244         Since we created the file, we know it doesn't have any fancy stuff like a resource fork.
   33245         (-[WebBaseNetscapePluginStream finishedLoadingWithData:]): Create the file with mkstemp instead of
   33246         trying to come up with our own filename. This eliminates the need to delete an old file (because we
   33247         are guaranteed the file is new) and also mkstemp opens the file for us, so we just need to write
   33248         the contents.
   33249 
   33250         * English.lproj/StringsNotToBeLocalized.txt: Updated for above changes.
   33251         
   33252         - unrelated change to help with other bug analysis
   33253         
   33254         * WebView.subproj/WebBaseResourceHandleDelegate.m: Added assertions.
   33255 
   33256 2003-01-12  Chris Blumenberg  <cblu (a] apple.com>
   33257 
   33258         Fix for checking and creating proper download filenames.
   33259 
   33260         Reviewed by mjs, kocienda, trey.
   33261 
   33262         * WebKit.pbproj/project.pbxproj:
   33263         * WebView.subproj/WebControllerPolicyDelegate.h: changes for renamed savePathForResponse:andRequest: method
   33264         * WebView.subproj/WebDefaultPolicyDelegate.m: changes for renamed savePathForResponse:andRequest: method
   33265         (-[WebDefaultPolicyDelegate savePathForResponse:andRequest:]): renamed 
   33266         * WebView.subproj/WebMainResourceClient.m:
   33267         (-[WebMainResourceClient continueAfterContentPolicy:response:]): changes for renamed savePathForResponse:andRequest: method
   33268 
   33269 2003-01-12  Darin Adler  <darin (a] apple.com>
   33270 
   33271         Reviewed by John.
   33272 
   33273         - fixed 3144882 -- pretend to be WinIE for abcnews.com
   33274 
   33275         * WebView.subproj/WebControllerPrivate.h: Add an enum, UserAgentStringType, with values
   33276         Safari, MacIE, and WinIE. Also add NumUserAgentStringTypes and turn the userAgent and
   33277         userAgentWhenPretendingToBeMacIE strings into an array indexed by type.
   33278 
   33279         * WebView.subproj/WebController.m:
   33280         (-[WebController setApplicationNameForUserAgent:]): Use a loop to discard the user agent
   33281         strings, since we have an array now.
   33282         (-[WebController userAgentForURL:]): Change user agent algorithm to check two strings rather
   33283         than once against the spoof table, allowing two dots in the "domain name", which is needed
   33284         for "abcnews.go.com". Get a user agent string type from the table rather than just a boolean
   33285         "pretend to be MacIE". Store a string per type rather than one for normalcy and one for MacIE.
   33286         Add a case for WinIE to the user agent computations.
   33287 
   33288         * English.lproj/StringsNotToBeLocalized.txt: Update for change above.
   33289 
   33290         * WebView.subproj/WebControllerPrivate.m:
   33291         (-[WebControllerPrivate dealloc]): Use a loop to discard the user agent strings, since we have
   33292         an array now.
   33293         (-[WebController _defaultsDidChange]): Ditto.
   33294 
   33295         * WebView.subproj/WebUserAgentSpoofTable.gperf: Add a UserAgentStringType field to the struct.
   33296         Add MacIE to each existing table entry, and add a new one that says WinIE for abcnews.go.com.
   33297 
   33298         * Makefile.am: Pass "-F ,0" to gperf so that we don't get warnings compiling empty entries
   33299         in the hash table.
   33300 
   33301         * WebView.subproj/WebUserAgentSpoofTable.c: Re-generated.
   33302         
   33303         - other changes
   33304         
   33305         * WebView.subproj/WebHTMLView.m: Removed some old, dead, #if 0'd code.
   33306 
   33307 2003-01-11  Darin Adler  <darin (a] apple.com>
   33308 
   33309         Reviewed by John.
   33310 
   33311         - fixed 3144479 -- put TITLE from links in status bar
   33312 
   33313         * WebKit.exp: Add _WebElementLinkTitleKey and also sort this file.
   33314 
   33315         * WebCoreSupport.subproj/WebImageRenderer.m: Need to touch a file to get the above
   33316         to have any effect, so update the copyright date here.
   33317 
   33318 2003-01-09  Darin Adler  <darin (a] apple.com>
   33319 
   33320         * WebKit.pbproj/project.pbxproj: Add the year 2003, remove CFBundleIconFile,
   33321         bump marketing version to 0.8.1 and version to 52u to keep up with the branch,
   33322         remove CFHumanReadableCopyright, remove NSPrincipalClass.
   33323 
   33324         * English.lproj/InfoPlist.strings: Updated to match above changes.
   33325 
   33326 2003-01-09  Darin Adler  <darin (a] apple.com>
   33327 
   33328         Reviewed by Maciej.
   33329 
   33330         * English.lproj/StringsNotToBeLocalized.txt: Update for recent changes.
   33331 
   33332 2003-01-09  Richard Williamson   <rjw (a] apple.com>
   33333 
   33334         Fixed 3143361.  This was a regression introduced with some image
   33335         rendering optimizations.  Don't bypass the tiling code path if
   33336         the image needs to be rendered out-of-phase.
   33337         
   33338         Reviewed by hyatt.
   33339 
   33340         * WebCoreSupport.subproj/WebImageRenderer.m:
   33341         (-[WebImageRenderer tileInRect:fromPoint:]):
   33342 
   33343 2003-01-09  Darin Adler  <darin (a] apple.com>
   33344 
   33345         Reviewed by Chris.
   33346 
   33347         - second pass on 3143332 - we still need a test case to be sure this is right
   33348 
   33349         * Plugins.subproj/WebBaseNetscapePluginStream.m:
   33350         (-[WebBaseNetscapePluginStream finishedLoadingWithData:]):
   33351         Check for "/". Also report the failure instead of just hanging on forever.
   33352 
   33353 2003-01-09  Darin Adler  <darin (a] apple.com>
   33354 
   33355         Reviewed by Richard.
   33356         
   33357         - fixed 3143332 -- if path returned is empty string (or "." or "..") it will trash the /tmp symlink
   33358 
   33359         * Plugins.subproj/WebBaseNetscapePluginStream.m:
   33360         (-[WebBaseNetscapePluginStream finishedLoadingWithData:]):
   33361         Check for empty string, ".", and "..", and don't create files by those names.
   33362 
   33363 2003-01-09  Trey Matteson  <trey (a] apple.com>
   33364 
   33365         3143294 - need short-term bulletproofing of download code against bad filenames
   33366 
   33367         We protect against a download location that is not an absolute path.
   33368 
   33369         Reviewed by Darin
   33370 
   33371         * WebView.subproj/WebMainResourceClient.m:
   33372         (-[WebMainResourceClient continueAfterContentPolicy:response:]):
   33373         Bail on download if we don't have a abs path to write to.
   33374 
   33375 2003-01-08  Trey Matteson  <trey (a] apple.com>
   33376 
   33377         3142201 - home directory nuked during power download session
   33378 
   33379         We add checks for various error cases that could combine to cause this problem.  While we
   33380         never got a reproducible case, we are confident that this is the only file removal done
   33381         in the download code, and its ability to wreak havoc has been clipped.
   33382         Reviewed by Richard.
   33383 
   33384         * Downloads.subproj/WebDownloadHandler.m:
   33385         (-[WebDownloadHandler cleanUpAfterFailure]):  Only nuke the partial download if in fact we created
   33386         a new download file.  Never nuke a directory.
   33387         (-[WebDownloadHandler createFileIfNecessary]):  Don't add "." to the foo-1 filenames we generate
   33388         if the original filename doesn't have any extension.
   33389         * WebView.subproj/WebMainResourceClient.m:
   33390         (-[WebMainResourceClient continueAfterContentPolicy:response:]):
   33391         If the policyDelegate gives us a nil filename, just stop the whole load, instead of trying to
   33392         overwrite the user's home directory.
   33393 
   33394 2003-01-08  Chris Blumenberg  <cblu (a] apple.com>
   33395 
   33396         Fixed: 3111432 - Support OBJECT tags with type text/plain or text/html
   33397 
   33398         Reviewed by dave.
   33399 
   33400         * WebCoreSupport.subproj/WebBridge.m:
   33401         (-[WebBridge frameRequiredForMIMEType:]): added, returns YES for non-plug-in views
   33402 
   33403 2003-01-08  Chris Blumenberg  <cblu (a] apple.com>
   33404 
   33405         FIXED: 3128098 - flash performance weak!!!
   33406 
   33407         Reviewed by darin.
   33408 
   33409         * Plugins.subproj/WebBaseNetscapePluginView.m: Don't throttle plug-in when in an active window.
   33410 
   33411 2003-01-03  Richard Williamson   <rjw (a] apple.com>
   33412 
   33413         Fixed 3139129.  Added application/xhtml+xml to list of supported type.
   33414 
   33415         Reviewed by gramps.
   33416 
   33417         * WebView.subproj/WebDataSourcePrivate.m:
   33418         (+[WebDataSource _repTypes]):
   33419         * WebView.subproj/WebViewPrivate.m:
   33420         (+[WebView _viewTypes]):
   33421 
   33422 2003-01-03  Richard Williamson   <rjw (a] apple.com>
   33423 
   33424         Support for fixes to 3138743, 3138678.  Added
   33425         isFontFixedPitch used to determine if font is fixed
   33426         pitch.  Makes use of appkit private _isFakeFixedPitch
   33427         (detects courier and monoca).  Updated our fakey test
   33428         to use the appkit's version.
   33429         
   33430         Reviewed by darin.
   33431 
   33432         * WebCoreSupport.subproj/WebTextRenderer.m:
   33433         * WebCoreSupport.subproj/WebTextRendererFactory.m:
   33434         (-[WebTextRendererFactory isFontFixedPitch:]):
   33435 
   33436 2003-01-03  Darin Adler  <darin (a] apple.com>
   33437 
   33438         Reviewed by Chris.
   33439 
   33440         - fixed leak of WebIconLoader observed using leaks tool
   33441 
   33442         * WebView.subproj/WebDataSourcePrivate.m:
   33443         (-[WebDataSourcePrivate dealloc]): Tell the icon loader to stop loading.
   33444         Add a FIXME asking why we had to do this to fix the leak.
   33445         (-[WebDataSource _loadIcon]): Add an assertion.
   33446 
   33447 2003-01-03  Richard Williamson   <rjw (a] apple.com>
   33448 
   33449         Fix to 3131226.  Don't force a layout when the document view is set 
   33450         on the page's scrollview.  A layout would occur indirectly as a result
   33451         of reflectScrolledClipView: being called when the document view
   33452         was set.  The khtmlpart/khtmlview/WebHTMLView would be out of sync
   33453         at this point and a layout would have unintended and incorrect
   33454         side effects.
   33455         
   33456         Reviewed by Darin (and tested by John).
   33457 
   33458         * WebView.subproj/WebDynamicScrollBarsView.h:
   33459         * WebView.subproj/WebDynamicScrollBarsView.m:
   33460         (-[WebDynamicScrollBarsView updateScrollers]):
   33461         * WebView.subproj/WebViewPrivate.m:
   33462         (-[WebView _setDocumentView:]):
   33463 
   33464 === Alexander-48 ===
   33465 
   33466 2003-01-02  Richard Williamson   <rjw (a] apple.com>
   33467 
   33468         Increase the minimum font size to 9pt.  This bounds the lower
   33469         size of the sizes array used for named sizes.  Net effect is
   33470         to increase xx-small from 8pt to 9pt.  xx-small is used by
   33471         www.microsoft.com.
   33472                 
   33473         Reviewed by hyatt.
   33474 
   33475         * WebView.subproj/WebPreferences.m:
   33476         (+[WebPreferences load]):
   33477 
   33478 2003-01-02  Darin Adler  <darin (a] apple.com>
   33479 
   33480         Reviewed by Don.
   33481 
   33482         - at Scott and Don's request, roll out small text anti-aliasing cutoff
   33483 
   33484         Turns out this makes small text look worse, not better. We're not going to respect
   33485         this setting, and in Panther AppKit will almost certainly be changed not to either.
   33486 
   33487         * WebCoreSupport.subproj/WebTextRenderer.m: Rolled out yesterday's change using CVS.
   33488 
   33489 2003-01-02  Darin Adler  <darin (a] apple.com>
   33490 
   33491         Reviewed by John and Don.
   33492 
   33493         - fixed 3137661 -- REGRESSION: autoscroll selection is broken
   33494 
   33495         The new logic in WebCore is slightly pickier, and can't abide a mouse-moved event
   33496         coming in during a drag. Unfortunately, we were sending a fake mouse-moved event
   33497         during a drag, so lets not do that.
   33498 
   33499         * WebView.subproj/WebHTMLView.m:
   33500         (-[WebHTMLView mouseDown:]): Cancel any scheduled fake mouse-moved event.
   33501         (-[WebHTMLView mouseUp:]): Send a fake mouse-moved event because we didn't update during the drag.
   33502 
   33503         * WebView.subproj/WebHTMLViewPrivate.m: (-[WebHTMLView _frameOrBoundsChanged]):
   33504         Don't schedule a fake mouse-moved event if the mouse is down, because that means we are in the
   33505         middle of a drag.
   33506 
   33507 2003-01-02  Darin Adler  <darin (a] apple.com>
   33508 
   33509         Reviewed by John and Ken.
   33510 
   33511         - fixed 3135548 -- exception in Internet Explorer bookmark import code at first startup
   33512 
   33513         * Bookmarks.subproj/WebBookmarkImporter.m:
   33514         (_breakStringIntoLines): Break lines before a <DT> or </DL>.
   33515         (_HREFTextFromSpec): Rewrite to simplify, search in a case-insensitive manner.
   33516         (-[WebBookmarkImporter initWithPath:]): Change prefix checks to be case-insensitive.
   33517         Don't discard folders altogether if the name can't be parsed as that would mess up
   33518         nesting w.r.t the next </DL>. Make the </DL> handling robust so we misparse, but don't
   33519         crash the whole application by raising an exception.
   33520 
   33521         * English.lproj/StringsNotToBeLocalized.txt: Updated for this change and recent changes.
   33522 
   33523 2003-01-01  Richard Williamson   <rjw (a] apple.com>
   33524 
   33525         Obey the font smoothing size preference (3137618).
   33526         
   33527         Reviewed by Don and Darin.
   33528 
   33529         * WebCoreSupport.subproj/WebTextRenderer.m:
   33530 
   33531 2002-12-31  Maciej Stachowiak  <mjs (a] apple.com>
   33532 
   33533         Reviewed by Darin.
   33534 
   33535         - fixed 3130831 - HOMEPAGE: JavaScript that tries to intercept onmousedown fails, image gets dragged instead
   33536         - fixed 3125554 - while dragging to select text in a nested frame, you can start dragging a link or image
   33537 
   33538         * WebCoreSupport.subproj/WebBridge.m:
   33539         (-[WebBridge handleMouseDragged:]): New method; call through the WebHTMLView.
   33540         (-[WebBridge mayStartDragWithMouseDown:]): Likewise.
   33541         (-[WebBridge handleAutoscrollForMouseDragged:]): Likewise.
   33542         * WebView.subproj/WebHTMLView.m:
   33543         (-[WebHTMLView mouseDragged:]): Instead of doing drag handling
   33544         here, just pass the event to WebCore.
   33545         (-[WebHTMLView draggedImage:endedAt:operation:]): Send a fake
   33546         mousemove event instead of sending the current event (likely a
   33547         mouse up as if it were a mouse move).
   33548         * WebView.subproj/WebHTMLViewPrivate.h:
   33549         * WebView.subproj/WebHTMLViewPrivate.m:
   33550         (-[WebHTMLViewPrivate dealloc]): Release drag element if any.
   33551         (-[WebHTMLView _dragImageForElement:]): New method. Split out the
   33552         code to make the special drag image for links.
   33553         (-[WebHTMLView _handleMouseDragged:]): Move all the drag handling
   33554         here. This method will get called only if WebCore hasn't blocked
   33555         default drag handling.
   33556         (-[WebHTMLView _handleAutoscrollForMouseDragged:]): Do
   33557         autoscroll. Autoscroll is still lame, we need a timer.
   33558         (-[WebHTMLView _mayStartDragWithMouseDown:]): Determine if the element
   33559         is a link or image and so may be dragged; remember the drag element.
   33560 
   33561 2003-01-01  Richard Williamson   <rjw (a] apple.com>
   33562 
   33563         Correct fix for 3137430 that doesn't always effectively disable
   33564         the cache.
   33565         
   33566         Reviewed by kocienda.
   33567 
   33568         * History.subproj/WebHistoryItem.m:
   33569         * WebView.subproj/WebFramePrivate.m:
   33570         (-[WebFrame _continueLoadRequestAfterNavigationPolicy:request:]):
   33571 
   33572 2003-01-01  Richard Williamson   <rjw (a] apple.com>
   33573 
   33574         Don't reset the cookie policy URL if it has already been set.  Fixes to 3109590.
   33575         
   33576         Reviewed by Maciej.
   33577 
   33578         * WebView.subproj/WebFramePrivate.m:
   33579         (-[WebFrame _addExtraFieldsToRequest:alwaysFromRequest:]):
   33580 
   33581 2003-01-01  Richard Williamson   <rjw (a] apple.com>
   33582 
   33583         Don't attempt to restore page from page cache if the cache
   33584         doesn't contain valid page state.  This may happen after a
   33585         redirect.  Fixes 3137430.
   33586         
   33587         Reviewed by kocienda.
   33588 
   33589         * History.subproj/WebHistoryItem.m:
   33590 
   33591 2002-12-31  Darin Adler  <darin (a] apple.com>
   33592 
   33593         Reviewed by Trey.
   33594 
   33595         - fixed 3137287 -- REGRESSION: Java applets don't work when you go back to them (Java 1.4.1 plug-in)
   33596 
   33597         By attaching the plug-in controller to the frame, we run into trouble.
   33598         It really needs to be attached to the data source, which has the right lifetime
   33599         and is kept around in the page cache.
   33600 
   33601         * Plugins.subproj/WebPluginController.h: Keep a reference to a data source, not a frame.
   33602         Add a new _started variable. Rename addPluginView: to addPlugin:, get rid of didAddPluginView:,
   33603         replace destroyAllPlugins with dataSourceWillBeDeallocated, add startAllPlugins and stopAllPlugins.
   33604         * Plugins.subproj/WebPluginController.m:
   33605         (-[WebPluginController initWithDataSource:]): Store a data source reference, not a frame reference.
   33606         Don't bother registering for the window will close notification, WebHTMLView handles that fine.
   33607         (-[WebPluginController startAllPlugins]): Do nothing if they are already started, call pluginStart on each otherwise.
   33608         (-[WebPluginController stopAllPlugins]): Do nothing if they are not started, call pluginStop on each otherwise.
   33609         (-[WebPluginController addPlugin:]): Initialize the plugin if it's not already in our list. Also start
   33610         it if we are in "started" mode.
   33611         (-[WebPluginController dataSourceWillBeDeallocated]): Stop all the plugins, then destroy them.
   33612         Also nil out the fields of the object. This is always called before the controller is released so we
   33613         don't need to override dealloc.
   33614         (-[WebPluginController showURL:inFrame:]): Added error checking and changed now that we start with a data source.
   33615         (-[WebPluginController showStatus:]): Ditto.
   33616 
   33617         * WebCoreSupport.subproj/WebBridge.m: (-[WebBridge pluginViewWithPackage:attributes:baseURL:]):
   33618         Use the data source, not the view. Don't add the plugin here, wait until we are ready to start.
   33619 
   33620         * WebView.subproj/WebDataSourcePrivate.h: Store a pointer to the plug-in controller here.
   33621         * WebView.subproj/WebDataSourcePrivate.m:
   33622         (-[WebDataSourcePrivate dealloc]): Tell the plug-in controller to go away.
   33623         (-[WebDataSource _makeHandleDelegates:deferCallbacks:]): Remove unused empty method.
   33624         (-[WebDataSource _pluginController]): Create a plug-in controller if needed.
   33625 
   33626         * WebView.subproj/WebFramePrivate.h: Remove plug-in controller code.
   33627         * WebView.subproj/WebFramePrivate.m:
   33628         (-[WebFramePrivate dealloc]): Remove plug-in controller code.
   33629         (-[WebFrame _detachFromParent]): Remove plug-in controller code.
   33630         (-[WebFrame _transitionToCommitted:]): Remove plug-in controller code.
   33631 
   33632         * WebView.subproj/WebHTMLView.m:
   33633         (-[WebHTMLView viewWillMoveToWindow:]): Stop plug-ins when view moves out of a window.
   33634         This includes the case when the window is being destroyed.
   33635         (-[WebHTMLView viewDidMoveToWindow]): Start plug-ins when view moves into a window.
   33636         (-[WebHTMLView addSubview:]): Add plug-ins to the controller as they are added to us.
   33637 
   33638         * WebView.subproj/WebController.m: Added now-needed include due to header change.
   33639         * WebView.subproj/WebDefaultContextMenuDelegate.m: Ditto.
   33640 
   33641 === Alexander-47 ===
   33642 
   33643 2002-12-30  Darin Adler  <darin (a] apple.com>
   33644 
   33645         * English.lproj/StringsNotToBeLocalized.txt: Updated for recent changes.
   33646 
   33647 2002-12-30  Trey Matteson  <trey (a] apple.com>
   33648 
   33649         3137110 - REGRESSION: calls from 2nd and subsequent instances of Java 1.4.1 plug-in seem to be ignored
   33650 
   33651         We had previously made changes to "numb" a plugin controller after its frame
   33652         was tossed or changed content.  We now finish the job by making sure a new
   33653         controller is created when we go to a new page with plugins.  To so this we
   33654         release the old controller whenever we flush the plugins from a page.
   33655 
   33656         Reviewed by Maciej.
   33657 
   33658         * WebView.subproj/WebFramePrivate.m:
   33659         (-[WebFrame _detachFromParent]):  Call newly factored code.
   33660         (-[WebFrame _transitionToCommitted:]):  Call newly factored code.
   33661         (-[WebFrame _destroyPluginController]):  New method to tear down plugins.
   33662 
   33663 2002-12-30  Trey Matteson  <trey (a] apple.com>
   33664 
   33665         3135025 - Assertion failure in _transitionToCommitted on espn nba scoreboard
   33666 
   33667         For blank pages we decided that there would be no b/f entry.  This means that
   33668         subframes within such pages (created via doc.write()), should not try to make
   33669         WebHistoryItems, since they have no parent items to attach them to.
   33670 
   33671         Reviewed by Darin.
   33672 
   33673         * WebView.subproj/WebFramePrivate.m:
   33674         (-[WebFrame _transitionToCommitted:]):  Don't make a history item for a subframe
   33675         it the parent frame has no item.
   33676 
   33677 2002-12-30  Trey Matteson  <trey (a] apple.com>
   33678 
   33679         3135779 - REGRESSION: reproducible assertion failure, going back from ~orubin to the main spies.com page        3136218 - REGRESSION: Assertion failure in _restoreScrollPosition running browser buster
   33680         Both were caused by subtle interactions between new code for short-circuiting loading of
   33681         blank pages, and the WebHistoryItem manipulations we do for b/f and reload of child frames.
   33682 
   33683         Reviewed by Maciej
   33684 
   33685         * WebView.subproj/WebFramePrivate.m:
   33686         (-[WebFrame _loadURL:intoChild:]):  Setup provisional or current item before jumping into
   33687         the real work of loading the URL.
   33688         (-[WebFrame _restoreScrollPosition]):  Tweaked to make the assertion message clearer.
   33689 
   33690 2002-12-30  Darin Adler  <darin (a] apple.com>
   33691 
   33692         Reviewed by Don and Ken.
   33693 
   33694         - fixed 3136797 -- crash when Adobe SVG Viewer plug-in puts up modal dialog
   33695 
   33696         * Plugins.subproj/WebBaseNetscapePluginView.h: Add inSetWindow boolean.
   33697         * Plugins.subproj/WebBaseNetscapePluginView.m:
   33698         (-[WebBaseNetscapePluginView sendEvent:]): Don't send any events to a plug-in while it's
   33699         inside NPP_SetWindow. We don't want to implement more general reentrancy protection, because
   33700         it could cause trouble for plugins that can handle it correctly, but it's unlikely that any
   33701         legitimate use would require reentrant calls while inside NPP_SetWindow, and that's the case
   33702         that crashes for the SVG viewer plug-in when it presents its registration dialog.
   33703         (-[WebBaseNetscapePluginView setWindow]): Set boolean.
   33704 
   33705 2002-12-29  Darin Adler  <darin (a] apple.com>
   33706 
   33707         Reviewed by Don.
   33708 
   33709         - fixed 3103287 -- body of page not rendered (page uses JavaScript trick to be both a frameset and a frame)
   33710 
   33711         Our self-reference checks prevented this page from working.
   33712         I just removed the WebKit one, since it was really just working around a problem with the WebCore
   33713         one that I fixed (didn't ignore #xxx suffixes).
   33714 
   33715         * WebCoreSupport.subproj/WebBridge.m:
   33716         (-[WebBridge createChildFrameNamed:withURL:renderPart:allowsScrolling:marginWidth:marginHeight:]):
   33717         Remove self-reference check.
   33718 
   33719 2002-12-29  Darin Adler  <darin (a] apple.com>
   33720 
   33721         Reviewed by Don.
   33722 
   33723         - fixed 3136801 -- scrolling a page that contains a QuickTime movie leaves garbage behind
   33724 
   33725         * Plugins.subproj/WebBaseNetscapePluginView.m:
   33726         (-[WebBaseNetscapePluginView tellQuickTimeToChill]): Added. Calls a QuickDraw SPI
   33727         CallDrawingNotifications to let QuickTime know it should take a nature break.
   33728         (-[WebBaseNetscapePluginView viewWillMoveToWindow:]): Call tellQuickTimeToChill.
   33729         (-[WebBaseNetscapePluginView viewHasMoved:]): Call tellQuickTimeToChill.
   33730 
   33731 2002-12-29  Darin Adler  <darin (a] apple.com>
   33732 
   33733         Reviewed by Don.
   33734 
   33735         - follow-on to my fix for 3125877 that fixes a crash I observed when a plug-in fails to NPP_New
   33736         
   33737         I filed bug 3136870 about the fact that we don't do a good job reporting the error.
   33738 
   33739         * Plugins.subproj/WebBaseNetscapePluginView.m:
   33740         (-[WebBaseNetscapePluginView sendEvent:]): Return quietly if this is called when
   33741         the plug-in is not started rather than asserting (and doing bad things on Deployment).
   33742         (-[WebBaseNetscapePluginView setWindow]): Ditto.
   33743         (-[WebBaseNetscapePluginView viewHasMoved:]): Just call setWindow since it now checks isStarted.
   33744 
   33745 2002-12-29  Darin Adler  <darin (a] apple.com>
   33746 
   33747         Reviewed by Don.
   33748 
   33749         - fixed 3120630 -- spacebar scrolls the page as well as pausing the QuickTime movie
   33750 
   33751         Imitate Mozilla and OmniWeb by not propagating keyboard events after passing them to
   33752         plug-ins regardless of what the plug-in returns, rather than imitating MacIE, which
   33753         looks at the return value from NPP_HandleEvent.
   33754 
   33755         * Plugins.subproj/WebBaseNetscapePluginView.m:
   33756         (-[WebBaseNetscapePluginView keyUp:]): Remove call to super, add comment.
   33757         (-[WebBaseNetscapePluginView keyDown:]): Ditto.
   33758 
   33759 2002-12-29  Darin Adler  <darin (a] apple.com>
   33760 
   33761         Reviewed by Ken and Don.
   33762 
   33763         - fixed 3136120 -- much content missing at www.olympic.org
   33764 
   33765         This site gives modern CSS to "Internet Explorer" or "Netscape 6". Since we are neither of
   33766         those, we need to pretend to be one or the other. So we add olympic.org to our MacIE spoofing list.
   33767 
   33768         * WebView.subproj/WebUserAgentSpoofTable.gperf: Add olympic.org to the list of pages that give us better
   33769         CSS if we claim to be Internet Explorer.
   33770         * WebView.subproj/WebUserAgentSpoofTable.c: Regenerated.
   33771 
   33772 === Alexander-46 ===
   33773 
   33774 2002-12-28  Ken Kocienda  <kocienda (a] apple.com>
   33775 
   33776          Reviewed by Gramps and Richard
   33777 
   33778          Fix for this bug:
   33779 
   33780          Radar 3112233 (400 response when attaching files at mail.yahoo.com)
   33781 
   33782          I added the MIMETypeForPath method which accesses the WebFoundation mime
   33783          file map we maintain. KHTML can now access this map by using the bridge.
   33784 
   33785          * WebCoreSupport.subproj/WebBridge.m:
   33786          (-[WebBridge MIMETypeForPath:])
   33787 
   33788 2002-12-28  Darin Adler  <darin (a] apple.com>
   33789 
   33790         Reviewed by Gramps and Ken
   33791         Checked in by Ken
   33792 
   33793         - fixed 3125877 -- RealPlayer plug-in doesn't work in Safari
   33794 
   33795         * Plugins.subproj/WebBaseNetscapePluginView.h: Remove some methods that don't have
   33796         any need to be public, getCarbonEvent:, sendEvent:, sendUpdateEvent, setUpWindowAndPort.
   33797         Make setWindow public.
   33798 
   33799         * Plugins.subproj/WebBaseNetscapePluginView.m:
   33800         (-[WebBaseNetscapePluginView saveAndSetPortStateForUpdate:]): Added. This replaces the
   33801         old setUpWindowAndPort. Besides setting up the port and the window, it also sets up the
   33802         port's origin, clip, visible, and update regions properly, and sets the current port.
   33803         In the case of an update event, we have extra work to do, which was formerly done in drawRect:.
   33804         (-[WebBaseNetscapePluginView saveAndSetPortState]): Calls saveAndSetPortStateForUpdate:NO.
   33805         (-[WebBaseNetscapePluginView restorePortState:]): Undoes the port state changes done by the
   33806         saveAndSetPortState calls.
   33807         (-[WebBaseNetscapePluginView sendEvent:]): Call saveAndSetPortStateForUpdate: before sending
   33808         the event to the plug-in. This is the core of fixing the bug. We need to have the port set
   33809         up properly. Specifically, RealPlayer depended on the port's origin being set and the update
   33810         region being set. Also added a "draw green" debugging aid to builds without NDEBUG set.
   33811         (-[WebBaseNetscapePluginView sendNullEvent]): Update text of a FIXME.
   33812         (-[WebBaseNetscapePluginView setWindow]): Call the new saveAndSetPortState method instead of
   33813         the old setUpWindowAndPort method.
   33814         (-[WebBaseNetscapePluginView drawRect:]): Remove bug workarounds that are now inside the
   33815         saveAndSetPortStateForUpdate: method.
   33816         (-[WebBaseNetscapePluginView viewDidMoveToWindow]): Add missing call to super.
   33817         (-[WebBaseNetscapePluginView windowBecameKey:]): Don't send an update event to the plugin directly.
   33818         Instead mark this view as needing display so we'll get a drawRect later.
   33819         (-[WebBaseNetscapePluginView windowResignedKey:]): Ditto.
   33820         (-[WebBaseNetscapePluginView requestWithURLCString:]): Corrected handling of URLs. Absolute URLs
   33821         are handled by the relative URL function, so there's no need to do an explicit check. Also use
   33822         requestWithURL instead of doing a three-method dance that does the same thing.
   33823         (-[WebBaseNetscapePluginView invalidateRect:]): Use setNeedsDisplayInRect: to schedule redrawing
   33824         rather than forcing an update right away by doing a sendUpdateEvent directly.
   33825         (-[WebBaseNetscapePluginView invalidateRegion:]): Ditto.
   33826         (-[WebBaseNetscapePluginView forceRedraw]): Use setNeedsDisplay: and displayIfNeeded to do the
   33827         drawing through the view system instead of doing a sendUpdateEvent directly.
   33828 
   33829         * Plugins.subproj/WebNetscapePluginDocumentView.m: (-[WebNetscapePluginDocumentView layout]):
   33830         Do a setWindow rather than a setUpWindowAndPort when the size of the view changes. This matches
   33831         what other browsers do and extends the bug fix for the Java plug-in to the resize case as well as
   33832         the scrolling case.
   33833 
   33834         * Plugins.subproj/WebNetscapePluginPackage.m: (-[WebNetscapePluginPackage initWithPath:]):
   33835         Remove RealPlayer antibodies.
   33836 
   33837 2002-12-27  Darin Adler  <darin (a] apple.com>
   33838 
   33839         Reviewed by Don.
   33840 
   33841         - fixed 3136206 -- Can't display images in Ambrosia Software image viewer
   33842 
   33843         WebKit wasn't creating the frames correctly when they weren't HTML.
   33844 
   33845         * WebView.subproj/WebFramePrivate.m: (-[WebFrame _makeDocumentView]): Added. Calls the
   33846         WebView to make the document view and then installs the new view, as WebHTMLView used to do.
   33847         (-[WebFrame _transitionToCommitted:]): Call _makeDocumentView instead of calling WebView
   33848         directly. These are all the calls to _makeDocumentViewForDataSource:.
   33849 
   33850         * WebView.subproj/WebViewPrivate.h: Add return value to _makeDocumentViewForDataSource:.
   33851         * WebView.subproj/WebViewPrivate.m: (-[WebView _makeDocumentViewForDataSource:]):
   33852         Return the newly-created view.
   33853 
   33854         * WebView.subproj/WebHTMLView.m: (-[WebHTMLView setDataSource:]): Removed the code here
   33855         since it's done by WebFrame now.
   33856 
   33857 2002-12-25  Darin Adler  <darin (a] apple.com>
   33858 
   33859         Reviewed by Don.
   33860 
   33861         - fixed 3133611 -- Java "ticker" applet renders badly when scrolling page
   33862 
   33863         * Plugins.subproj/WebBaseNetscapePluginView.m: (-[WebBaseNetscapePluginView viewHasMoved:]):
   33864         Call setWindow so we make a call to the plugin each time it moves, rather than just adjusting
   33865         the data structure we had passed to it earlier.
   33866 
   33867 2002-12-24  Darin Adler  <darin (a] apple.com>
   33868 
   33869         Reviewed by Richard and Don.
   33870 
   33871         - fixed 3132192 -- HOMEPAGE: Quicktime plug in with AVI content brings Plug-ins not found panel
   33872 
   33873         * Plugins.subproj/WebPluginDatabase.m: (-[WebPluginDatabase pluginForKey:withEnumeratorSelector:]):
   33874         Lower-case the key before searching for it. This is needed for both MIME types and extensions,
   33875         since we want case insensitive comparison in both cases.
   33876 
   33877 === Alexander-45 ===
   33878 
   33879 2002-12-23  Ken Kocienda  <kocienda (a] apple.com>
   33880 
   33881         Reviewed by Darin and Gramps
   33882 
   33883         Workaround for this bug:
   33884 
   33885         Radar 3134219 (MPEG-4 files don't work with the QuickTime plugin in Safari, 
   33886         work fine in Mozilla, IE)
   33887 
   33888         For beta 1, when getting the MIME information for the QuickTime plugin, we directly 
   33889         insert the information to handle MP4.
   33890 
   33891         In the future, we will use the additional plugin entry points to dynamically load 
   33892         this information from the plugin itself.
   33893 
   33894         * Plugins.subproj/WebNetscapePluginPackage.m:
   33895         (-[WebNetscapePluginPackage getMIMEInformation])
   33896 
   33897 2002-12-23  Darin Adler  <darin (a] apple.com>
   33898 
   33899         Reviewed by John and Don.
   33900 
   33901         - fixed 3134282 -- REGRESSION: text encoding setting reverts when you go to a new location
   33902 
   33903         * WebView.subproj/WebFrame.m: (-[WebFrame loadRequest:]): Propagate an override encoding if there
   33904         was an existing data source and it had an override encoding.
   33905         * WebView.subproj/WebFramePrivate.m: (-[WebFrame _loadRequest:triggeringAction:loadType:]): Ditto.
   33906 
   33907 === Alexander-44 ===
   33908 
   33909 2002-12-20  Trey Matteson  <trey (a] apple.com>
   33910 
   33911         Do not add empty URLs to the back forward list.
   33912 
   33913         Reviewed by Richard, Darin
   33914 
   33915         * WebView.subproj/WebFramePrivate.m:
   33916         (-[WebFrame _transitionToCommitted:]):
   33917 
   33918 2002-12-20  Trey Matteson  <trey (a] apple.com>
   33919 
   33920         3133829 - crash leaving page with a running applet
   33921 
   33922         This fixes some holes in how we teardown plugins.  An additional fix is expected
   33923         from Mike Hay to finish the issue. (3133981)
   33924 
   33925         Reviewed by Richard
   33926 
   33927         * Plugins.subproj/WebPluginController.m:
   33928         (-[WebPluginController destroyAllPlugins]):  frame=nil, so we don't do any more
   33929         messaging back to WK after this step.
   33930         (-[WebPluginController showURL:inFrame:]):  bail if !frame
   33931         (-[WebPluginController showStatus:]):  bail if !frame
   33932         * WebView.subproj/WebFramePrivate.m:
   33933         (-[WebFrame _detachFromParent]):  destroy plugins here.  We were only doing it
   33934         in the non-frame case.
   33935 
   33936 === Alexander-43 ===
   33937 
   33938 2002-12-20  Trey Matteson  <trey (a] apple.com>
   33939 
   33940         3131841 - crash when switching encodings on a page with frames
   33941 
   33942         Reviewed by rjw
   33943 
   33944         * WebView.subproj/WebFramePrivate.m:
   33945         (-[WebFrame _transitionToCommitted:]):  Create a docView in the LoadStale case, like
   33946         every other kind of load does.
   33947 
   33948 2002-12-20  Richard Williamson   <rjw (a] apple.com>
   33949 
   33950         Fixed 3133261.  This fix really has two parts.  This first part
   33951         is here in WebTextRenderer.  The second part adds some width
   33952         caching to RenderText.  I was using a stack allocated array,
   33953         this would blow out the stack for large strings.
   33954 
   33955         Reviewed by john.
   33956 
   33957         * WebCoreSupport.subproj/WebTextRenderer.m:
   33958 
   33959 2002-12-20  Trey Matteson  <trey (a] apple.com>
   33960 
   33961         We now build with symbols the B&I.  Deployment builds are without symbols,
   33962         so it is easy to generate a non-huge app as a one-off.
   33963 
   33964         Reviewed by Darin
   33965 
   33966         * WebKit.pbproj/project.pbxproj:
   33967 
   33968 === Alexander-42 ===
   33969 
   33970 2002-12-19  John Sullivan  <sullivan (a] apple.com>
   33971 
   33972         - WebKit part of fix for 3124949 -- Alexander recreates the 
   33973         default set of bookmarks every time a separate app copy is launched
   33974 
   33975         Reviewed by Darin
   33976 
   33977         * Bookmarks.subproj/WebBookmarkGroup.h:
   33978         new _tag ivar and -tag method.
   33979 
   33980         * Bookmarks.subproj/WebBookmarkGroup.m:
   33981         (-[WebBookmarkGroup dealloc]):
   33982         release _tag
   33983         (-[WebBookmarkGroup tag]):
   33984         return _tag
   33985         (-[WebBookmarkGroup _loadBookmarkGroupGuts]):
   33986         read _tag from the dictionary in the file (or leave it at
   33987         nil if there's no value in the file).
   33988 
   33989         * English.lproj/StringsNotToBeLocalized.txt:
   33990         kept this file up to date
   33991 
   33992 2002-12-19  Darin Adler  <darin (a] apple.com>
   33993 
   33994         Reviewed by John.
   33995 
   33996         - corrected the name of a method that was leading to trouble elsewhere
   33997 
   33998         * WebView.subproj/WebDataSource.h: Change fileType to fileExtension for clarity.
   33999         * WebView.subproj/WebDataSource.m: (-[WebDataSource fileExtension]): Ditto.
   34000 
   34001 === Alexander-41 ===
   34002 
   34003 2002-12-19  Darin Adler  <darin (a] apple.com>
   34004 
   34005         Reviewed by John.
   34006 
   34007         - probably fixed 3129395 -- Reproducible crash when running a javascript at www.scenespot.org
   34008 
   34009         * WebCoreSupport.subproj/WebViewFactory.m:
   34010         (-[WebViewFactory runJavaScriptTextInputPanelWithPrompt:defaultText:returningText:]):
   34011         Close the window. Before we relied on it being released which was bad. But it's not clear this
   34012         actually was the cause of the bug.
   34013 
   34014 2002-12-19  Darin Adler  <darin (a] apple.com>
   34015 
   34016         Reviewed by Chris.
   34017 
   34018         - fixed 31323455 -- REGRESSION: Crash in plugin code closing popup window on lordoftherings.net
   34019 
   34020         * Plugins.subproj/WebBaseNetscapePluginView.m:
   34021         (-[WebBaseNetscapePluginView sendEvent:]): Added an assert.
   34022         (-[WebBaseNetscapePluginView setWindow]): Added an assert.
   34023         (-[WebBaseNetscapePluginView stop]): Cancel perform requests, now that we are using them for
   34024         URL navigation.
   34025         (-[WebBaseNetscapePluginView frameStateChanged:]): Only notify if the plugin is still running.
   34026         (-[WebBaseNetscapePluginView loadPluginRequest:]): Added. Does the actual load at idle time.
   34027         Also fixed to only notify if plugin is loaded. Added a number of FIXMEs for other problems here.
   34028         Also send JavaScript to the appropriate frame, not always the top level.
   34029         (-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:]): Use loadPluginRequest:
   34030         to do the request after a delay. Also remove the special cases for special frame names; they
   34031         were trying to avoid calling a plugin that has gone away, but we do that a better way now.
   34032         (-[WebBaseNetscapePluginView getURLNotify:target:notifyData:]): Added logging.
   34033         (-[WebBaseNetscapePluginView status:]): Use Windows Latin-1 rather than MacRoman for messages.
   34034         I guess we should test later to find out which is used by MacIE and conform to that, but for now
   34035         this seems like a better default.
   34036         (-[WebPluginRequest initWithRequest:frame:notifyData:]): Added.
   34037         (-[WebPluginRequest dealloc]): Added.
   34038         (-[WebPluginRequest request]): Added.
   34039         (-[WebPluginRequest webFrame]): Added.
   34040         (-[WebPluginRequest notifyData]): Added.
   34041 
   34042 2002-12-18  Darin Adler  <darin (a] apple.com>
   34043 
   34044         Reviewed by Chris.
   34045 
   34046         - fixed fix for 3132056 -- Supply Finder bits for decoded BinHex files
   34047 
   34048         * Downloads.subproj/WebBinHexDecoder.m: (-[WebBinHexDecoder decodeHeader]):
   34049         Mask off fewer Finder flag bits. Use the same mask as for MacBinary, in fact.
   34050 
   34051 2002-12-18  Darin Adler  <darin (a] apple.com>
   34052 
   34053         Reviewed by Richard.
   34054 
   34055         - fixed 3127490 -- pages w/frames sometimes show up blank
   34056 
   34057         * WebView.subproj/WebHTMLView.m: (-[WebHTMLView drawRect:]):
   34058         Updated the optimization where we draw the entire view if we did a layout
   34059         so that it works properly for the case where the clip is narrower because of
   34060         the parent WebHTMLView.
   34061 
   34062         * English.lproj/StringsNotToBeLocalized.txt: Updated for recent changes.
   34063 
   34064 === Alexander-40 ===
   34065 
   34066 2002-12-18  Trey Matteson  <trey (a] apple.com>
   34067 
   34068         3098388 - Pressing the back button goes back two levels at allmusic.com
   34069 
   34070         I rewrote the logic we use to decide whether a given redirect should be
   34071         treated as part of the previous navigation.  We make use of WebCore's
   34072         lockHistory setting, the delay time and the frame state.
   34073 
   34074         Reviewed by Darin.
   34075 
   34076         * WebCoreSupport.subproj/WebBridge.m:
   34077         (-[WebBridge reportClientRedirectToURL:delay:fireDate:lockHistory:]):
   34078         Pass lockHistory up to the frame.
   34079         * WebView.subproj/WebFramePrivate.h:
   34080         * WebView.subproj/WebFramePrivate.m:
   34081         (-[WebFrame _clientRedirectedTo:delay:fireDate:lockHistory:]):
   34082         New logic.  No quick summary, best to read the code.
   34083 
   34084 2002-12-18  Chris Blumenberg  <cblu (a] apple.com>
   34085 
   34086         Reject the RealPlayer plug-in because we know it doesn't work.
   34087 
   34088         Reviewed by sullivan.
   34089 
   34090         * English.lproj/StringsNotToBeLocalized.txt:
   34091         * Plugins.subproj/WebNetscapePluginPackage.m:
   34092         (-[WebNetscapePluginPackage initWithPath:]): reject the RealPlayer plug-in
   34093 
   34094 2002-12-18  Maciej Stachowiak  <mjs (a] apple.com>
   34095 
   34096         Reviewed by John.
   34097 
   34098         - fixed 3131171 - Change Alex versions to satisfy both marketing and B&I requirements
   34099         * English.lproj/InfoPlist.strings:
   34100 
   34101 2002-12-18  Richard Williamson   <rjw (a] apple.com>
   34102 
   34103         Fixed 3129951.  Don't allow pages that are stopping to enter the page cache.
   34104         (Fixed yesterday, forgot to checkin.)
   34105          
   34106         Reviewed by trey.
   34107 
   34108         * WebView.subproj/WebFramePrivate.m:
   34109         (-[WebFrame _setState:]):
   34110 
   34111 2002-12-18  Maciej Stachowiak  <mjs (a] apple.com>
   34112 
   34113         Reviewed by Darin and Trey.
   34114 
   34115         - fixed 3124933 - abcnews.com leads to empty window with sheet complaining about javascript: URL
   34116         - fixed 3091248 - picture does not show up in window from epinions
   34117         - made "about:blank" load synchronously, which I'm told is required by some sites.
   34118 
   34119         * WebCoreSupport.subproj/WebBridge.m:
   34120         (-[WebBridge createWindowWithURL:frameName:]): If the URL is nil
   34121         or empty, pass a nil request - otherwise WebBrowser will try to
   34122         load it, resulting in an extra back/forward list entry.
   34123         (-[WebBridge loadEmptyDocumentSynchronously]): Tell the frame to
   34124         load a request with an empty URL - this will cause a synchronous
   34125         load of an empty html document
   34126         * WebView.subproj/WebBaseResourceHandleDelegate.h:
   34127         * WebView.subproj/WebBaseResourceHandleDelegate.m:
   34128         (-[WebBaseResourceHandleDelegate loadWithRequest:]): Split off
   34129         startLoading: part of method to allow behavior to be subclassed.
   34130         (-[WebBaseResourceHandleDelegate startLoading:]): 
   34131         * WebView.subproj/WebDataSourcePrivate.m:
   34132         (-[WebDataSource _commitIfReady:]): Lie and claim the URL is
   34133         "about:blank" if it's really empty to avoid confusing WebCore.
   34134         * WebView.subproj/WebFramePrivate.m:
   34135         (-[WebFrame _transitionToCommitted:]): Don't put the empty URL in
   34136         global history.
   34137         (-[WebFrame
   34138         _checkNavigationPolicyForRequest:dataSource:andCall:withSelector:]):
   34139         Don't check policy if URL is empty - this is likely to confuse the
   34140         client and we know what the right behavior here is.
   34141         * WebView.subproj/WebMainResourceClient.m:
   34142         (-[WebMainResourceClient startLoading:]): Try to load
   34143         "about:blank" and the empty URL synchronously, bypassing
   34144         WebFoundation.
   34145         (-[WebMainResourceClient continueAfterContentPolicy:response:]): Ditto.
   34146         (-[WebMainResourceClient setDefersCallbacks:]): Ditto.
   34147         * English.lproj/StringsNotToBeLocalized.txt: Updated.
   34148 
   34149 2002-12-18  Chris Blumenberg  <cblu (a] apple.com>
   34150 
   34151         Fixed: 2862385 - need to pass browser's user agent and version to plug-ins
   34152         Added some more error checking to the plug-in code
   34153 
   34154         Reviewed by trey.
   34155 
   34156         * Plugins.subproj/WebBaseNetscapePluginView.h:
   34157         * Plugins.subproj/WebBaseNetscapePluginView.m:
   34158         (+[WebBaseNetscapePluginView setCurrentPluginView:]): new, sets a global variable for the current plug-in
   34159         (+[WebBaseNetscapePluginView currentPluginView]): new, returns the current plug-in
   34160         (-[WebBaseNetscapePluginView start]): check if NPP_New fails, return NO if it does, set the current plug-in view. Currently, this is the only place we need to do this.
   34161         (-[WebBaseNetscapePluginView userAgent]): made instance-specific because it depends on the plug-in view's WebController
   34162         * Plugins.subproj/WebBaseNetscapePluginViewPrivate.h:
   34163         * Plugins.subproj/WebNetscapePluginEmbeddedView.m:
   34164         (-[WebNetscapePluginEmbeddedView viewDidMoveToWindow]): don't start the stream is start fails
   34165         * Plugins.subproj/npapi.m: 
   34166         (NPN_MemAlloc): tweak
   34167         (NPN_RequestRead): tweak
   34168         (pluginViewForInstance): returns the instance's plug-in view if it has one, if not, return the current plug-in view
   34169         (NPN_GetURLNotify): get the instance from pluginViewForInstance  
   34170         (NPN_GetURL):
   34171         (NPN_PostURLNotify):
   34172         (NPN_PostURL):
   34173         (NPN_NewStream):
   34174         (NPN_Write):
   34175         (NPN_DestroyStream):
   34176         (NPN_UserAgent):
   34177         (NPN_Status):
   34178         (NPN_InvalidateRect):
   34179         (NPN_InvalidateRegion):
   34180         (NPN_ForceRedraw):
   34181         (NPN_GetValue):
   34182         (NPN_SetValue):
   34183         (NPN_GetJavaEnv):
   34184         (NPN_GetJavaPeer):
   34185 
   34186 2002-12-18  Richard Williamson   <rjw (a] apple.com>
   34187 
   34188         Fixed 3109590.  We now set the cookie policy URL to a frame's URL if the
   34189         contents of the frame changes as a result of user action.  The site mentioned
   34190         is this bug branded a service by wrapping it in their own frameset.  That frameset
   34191         had a different domain than the service, so our cookie policy prevented cookies
   34192         from being set.
   34193         
   34194         Reviewed by trey.
   34195 
   34196         * WebView.subproj/WebDataSourcePrivate.m:
   34197         (-[WebDataSource _startLoading:]):
   34198         * WebView.subproj/WebFrame.m:
   34199         (-[WebFrame loadRequest:]):
   34200         * WebView.subproj/WebFramePrivate.h:
   34201         * WebView.subproj/WebFramePrivate.m:
   34202         (-[WebFrame _loadItem:fromItem:withLoadType:]):
   34203         (-[WebFrame _addExtraFieldsToRequest:alwaysFromRequest:]):
   34204         (-[WebFrame _loadURL:loadType:triggeringEvent:isFormSubmission:]):
   34205         (-[WebFrame _postWithURL:data:contentType:triggeringEvent:]):
   34206 
   34207 2002-12-18  Chris Blumenberg  <cblu (a] apple.com>
   34208 
   34209         Fixed: 3131714 - System becomes unresponsive while downloading
   34210 
   34211         While downloading a file, Safari and the Finder take up 30%-40% of the CPU each. This is happening because for every chunk of data we write to disk, we call -[NSWorkspace noteFileSystemChanged:]. noteFileSystemChanged is inefficient. It calls 2 AppleEven
   34212 
   34213 
   34214 
   34215 
   34216 
   34217 
   34218 
   34219 
   34220 
   34221 ts each with 60 timeouts. The event also cause the Finder to do a lot of work.
   34222 
   34223         We should:
   34224         - Send 1 AppleEvent ourselves with no timeout since we don't care about the reply
   34225         - Call the notification/event less often. The only benefit of sending the event for every chunk written is that the file size updates in the Finder. Not worth the performance impact.
   34226 
   34227         Reviewed by kocienda.
   34228 
   34229         * Downloads.subproj/WebDownloadHandler.m:
   34230         (-[WebDownloadHandler cleanUpAfterFailure]): call _web_noteFileChangedAtPath
   34231         (-[WebDownloadHandler createFileIfNecessary]): call _web_noteFileChangedAtPath
   34232         (-[WebDownloadHandler writeDataForkData:resourceForkData:]): don't call noteFileSystemChanged
   34233         (-[WebDownloadHandler finishedLoading]): call _web_noteFileChangedAtPath
   34234         * Misc.subproj/WebNSWorkspaceExtras.h: Added.
   34235         * Misc.subproj/WebNSWorkspaceExtras.m: Added.
   34236         (-[NSWorkspace _web_noteFileChangedAtPath:]): Notifies the Finder (or any other app that cares) that we added, removed or changed the attributes of a file. This method is better than calling noteFileSystemChanged: because noteFileSystemChanged: se
   34237 
   34238 
   34239 
   34240 
   34241 
   34242 
   34243 
   34244 
   34245 
   34246 nds 2 apple events both with a 60 second timeout. This method returns immediately.
   34247         * WebKit.pbproj/project.pbxproj:
   34248 
   34249 2002-12-18  Darin Adler  <darin (a] apple.com>
   34250 
   34251         Reviewed by Maciej.
   34252 
   34253         - fixed 3098293 -- Shockwave plug-in doesn't work
   34254 
   34255         The problem is that the Shockwave plug-in depends on being able to do LMGetCurApRefNum
   34256         and then do a PBGetFCBInfoSync on the result, and if it gets an error it will refuse
   34257         to initialize.
   34258 
   34259         * Plugins.subproj/WebNetscapePluginPackage.m: (+[WebNetscapePluginPackage initialize]):
   34260         Supply a bogus CurApRefNum. Do it only if CurApRefNum is -1, so we don't screw things
   34261         up if we are used in a Carbon application.
   34262 
   34263 2002-12-17  Darin Adler  <darin (a] apple.com>
   34264 
   34265         Reviewed by Trey.
   34266 
   34267         * WebKit.pbproj/project.pbxproj: Remove signature.
   34268         * WebView.subproj/WebController.m: Turn off inlining so we can build even on the
   34269         compiler that warns about static data in inline functions.
   34270 
   34271 2002-12-17  John Sullivan  <sullivan (a] apple.com>
   34272 
   34273         - fixed 2895826 -- ICON: Need a "no plug-in" icon
   34274 
   34275         * Resources/nullplugin.tiff:
   34276         new plug-in icon. Blue 3-D lego with question marks.
   34277 
   34278 2002-12-17  Richard Williamson   <rjw (a] apple.com>
   34279 
   34280         Added support for Aki's 20% boost to line height.  This is
   34281         done with a horrible hack and should be removed when 3129490
   34282         is fixed.
   34283         
   34284         Reviewed by hyatt.
   34285 
   34286         * WebCoreSupport.subproj/WebTextRenderer.m:
   34287 
   34288 === Alexander-39 ===
   34289 
   34290 === Alexander-38 ===
   34291 
   34292 2002-12-17  Richard Williamson   <rjw (a] apple.com>
   34293 
   34294         Fixed 3127932.  Added WebFrameLoadTypeReloadAllowingStaleData to cases that do not
   34295         get cached in the b/f cache.
   34296         
   34297         Reviewed by trey.
   34298 
   34299         * WebView.subproj/WebFramePrivate.m:
   34300         (-[WebFrame _setState:]):
   34301 
   34302 2002-12-17  Richard Williamson   <rjw (a] apple.com>
   34303 
   34304         Fixed 3128794.  Use CG directy to get font metrics rather than the appkit.  The appkit
   34305         has a bug (3129490) that sometimes causes line height to be 20% too large.
   34306         
   34307         Reviewed by hyatt.
   34308 
   34309         * WebCoreSupport.subproj/WebTextRenderer.m:
   34310         (-[WebTextRenderer initWithFont:]):
   34311         (-[WebTextRenderer ascent]):
   34312         (-[WebTextRenderer descent]):
   34313         (-[WebTextRenderer lineSpacing]):
   34314 
   34315 2002-12-17  Trey Matteson  <trey (a] apple.com>
   34316 
   34317         Reworking the code to update the page icon led me to roll the WebIconDB API
   34318         for URL to NSString.  In addition, the vestigial "Site" was removed.
   34319 
   34320         Everything below is renaming, except where noted.
   34321 
   34322         Reviewed by Darin
   34323 
   34324         * English.lproj/StringsNotToBeLocalized.txt:
   34325         * History.subproj/WebHistoryItem.m:
   34326         (-[WebHistoryItem _retainIconInDatabase:]):
   34327         (-[WebHistoryItem icon]):
   34328         * Misc.subproj/WebIconDatabase.h:
   34329         * Misc.subproj/WebIconDatabase.m:
   34330         (-[WebIconDatabase init]):
   34331         (-[WebIconDatabase iconForURL:withSize:cache:]):  Use _web_isFileURL.
   34332         (-[WebIconDatabase iconForURL:withSize:]):
   34333         (-[WebIconDatabase retainIconForURL:]):
   34334         (-[WebIconDatabase releaseIconForURL:]):
   34335         (-[WebIconDatabase _iconDictionariesAreGood]):
   34336         (-[WebIconDatabase _loadIconDictionaries]):
   34337         (-[WebIconDatabase _updateFileDatabase]):
   34338         (-[WebIconDatabase _iconForFileURL:withSize:]):  Cons up a NSURL to get the path.
   34339         Test explicitly for .htm and .html suffixes.
   34340         (-[WebIconDatabase _setIcon:forIconURL:]):
   34341         (-[WebIconDatabase _setIconURL:forURL:]):
   34342         (-[WebIconDatabase _releaseIconForIconURLString:]):
   34343         (-[WebIconDatabase _retainFutureIconForURL:]):
   34344         (-[WebIconDatabase _releaseFutureIconForURL:]):
   34345         (-[WebIconDatabase _sendNotificationForURL:]):
   34346         * Misc.subproj/WebIconDatabasePrivate.h:
   34347         * Misc.subproj/WebIconLoader.m:
   34348         (-[WebIconLoader handleDidFinishLoading:]):
   34349         * WebKit.exp:
   34350         * WebView.subproj/WebDataSourcePrivate.m:
   34351         (-[WebDataSource _updateIconDatabaseWithURL:]):
   34352         (-[WebDataSource _loadIcon]):
   34353 
   34354 2002-12-17  Chris Blumenberg  <cblu (a] apple.com>
   34355 
   34356         Fixed: 3113073 - link on http://studio.adobe.com/explore/ redirects to not found page in Alex
   34357 
   34358         Reviewed by darin.
   34359 
   34360         * Misc.subproj/WebNSPasteboardExtras.m:
   34361         (-[NSPasteboard _web_bestURL]): don't trim whitespace because _web_URLWithString does this for us
   34362         * Plugins.subproj/WebBaseNetscapePluginView.m:
   34363         (-[WebBaseNetscapePluginView pluginURLFromCString:]): tweak
   34364 
   34365 2002-12-17  John Sullivan  <sullivan (a] apple.com>
   34366 
   34367         - to help with performance of various bookmark operations,
   34368         added a call that returns the internal array of children,
   34369         to complement the safer call that returns a copy.
   34370 
   34371         Reviewed by Darin
   34372 
   34373         * Bookmarks.subproj/WebBookmark.h:
   34374         commented -children and new -rawChildren
   34375         * Bookmarks.subproj/WebBookmark.m:
   34376         (-[WebBookmark rawChildren]):
   34377         new method, returns nil at this level.
   34378         (-[WebBookmark contentMatches:]):
   34379         use -rawChildren instead of -children
   34380 
   34381         * Bookmarks.subproj/WebBookmarkList.m:
   34382         (-[WebBookmarkList rawChildren]):
   34383         new method, returns internal array without copying
   34384 
   34385 2002-12-16  Darin Adler  <darin (a] apple.com>
   34386 
   34387         Reviewed by Don and Maciej.
   34388 
   34389         * WebView.subproj/WebUserAgentSpoofTable.gperf: Added a couple of new domains to the list we
   34390         spoof as Mac IE, and added comments.
   34391         * WebView.subproj/WebUserAgentSpoofTable.c: Regenerated.
   34392 
   34393         * WebKit.pbproj/project.pbxproj: Set MACOSX_DEPLOYMENT_TARGET to 10.2
   34394 
   34395 2002-12-16  Chris Blumenberg  <cblu (a] apple.com>
   34396 
   34397         Fixed: 3129503 - Crash cancelling download after closing browser window that started download
   34398 
   34399         Reviewed by rjw.
   34400 
   34401         * WebView.subproj/WebDataSourcePrivate.m:
   34402         (-[WebDataSource _setLoading:]): Added comment about our tragic dependence on a non-retained reference to the controller.
   34403         (-[WebDataSource _recursiveStopLoading]): Call webFrame before calling _stopLoading because we release the controller in _stopLoading and we depend on it in webFrame.
   34404 
   34405 === Alexander-37 ===
   34406 
   34407 2002-12-16  Maciej Stachowiak  <mjs (a] apple.com>
   34408 
   34409         Reviewed by no one but it's just a version bump.
   34410 
   34411         * WebKit.pbproj/project.pbxproj: Bump version to 37u3
   34412 
   34413 2002-12-16  Darin Adler  <darin (a] apple.com>
   34414 
   34415         Reviewed by Maciej.
   34416 
   34417         - fixed 3128858 -- Supply Finder bits for decoded BinHex files
   34418 
   34419         * Downloads.subproj/WebBinHexDecoder.h: Add a _finderFlags field.
   34420         * Downloads.subproj/WebBinHexDecoder.m:
   34421         (-[WebBinHexDecoder decodeHeader]): Decode Finder flags.
   34422         (-[WebBinHexDecoder fileAttributes]): Put Finder flags in dictionary.
   34423 
   34424         * Downloads.subproj/WebMacBinaryDecoder.m: Tweaked things for no good reason.
   34425         (It is good to always import your own header first as a check that it's self-sufficient).
   34426 
   34427         * WebKit.pbproj/project.pbxproj: Let Electron wipe the slate clean of pre-Electron iniquity.
   34428 
   34429 2002-12-15  Chris Blumenberg  <cblu (a] apple.com>
   34430         Fixed: 3094928 - Apply Finder bits to decoded downloads
   34431 
   34432         Reviewed by darin.
   34433 
   34434         * Downloads.subproj/WebDownloadHandler.m:
   34435         (-[WebDownloadHandler createFileIfNecessary]): call _web_createFileAtPath:contents:attributes: so we set Finder bits
   34436         * Downloads.subproj/WebMacBinaryDecoder.h:
   34437         * Downloads.subproj/WebMacBinaryDecoder.m:
   34438         (-[WebMacBinaryDecoder decodeData:dataForkData:resourceForkData:]): save Finder bits
   34439         (-[WebMacBinaryDecoder fileAttributes]): return Finder bits
   34440 
   34441 === WebKit-37u2 ===
   34442 
   34443 2002-12-15  Maciej Stachowiak  <mjs (a] apple.com>
   34444 
   34445         Reviewed by Darin.
   34446 
   34447         - fixed likely B&I build problem.
   34448 
   34449         * WebKit.pbproj/project.pbxproj: Get at other frameworks in B&I
   34450         build. Bump version to 37u2.
   34451 
   34452 2002-12-15  Darin Adler  <darin (a] apple.com>
   34453 
   34454         Reviewed by Dave.
   34455 
   34456         - implemented user-agent spoofing as described in bug 3044569
   34457 
   34458         * WebView.subproj/WebController.m: (-[WebController userAgentForURL:]):
   34459         Find the suffix of the host name that contains exactly one dot, lower-case it,
   34460         and look it up in the user-agent spoof table. For now, anything in the table
   34461         pretends to be MacIE. Don't fret that this table is simple. We will complicate it
   34462         as needed. The technique is flexible, even though it may not look it now.
   34463 
   34464         * WebView.subproj/WebControllerPrivate.h: Add userAgentWhenPretendingToBeMacIE field.
   34465         * WebView.subproj/WebControllerPrivate.m:
   34466         (-[WebControllerPrivate dealloc]): Release userAgentWhenPretendingToBeMacIE.
   34467         (-[WebController _defaultsDidChange]): Release and nil userAgentWhenPretendingToBeMacIE.
   34468 
   34469         * Makefile.am: Added rules to build WebUserAgentSpoofTable.c using gperf.
   34470         * WebView.subproj/WebUserAgentSpoofTable.c: Added. Generated file.
   34471         * WebView.subproj/WebUserAgentSpoofTable.gperf: Added. Table 
   34472 
   34473         * English.lproj/StringsNotToBeLocalized.txt: Update for above changes.
   34474 
   34475         - fixed a crash I saw in a simplistic way
   34476 
   34477         * WebView.subproj/WebHTMLViewPrivate.m: (-[WebHTMLView _elementAtPoint:]):
   34478         Don't assert if the webFrame is nil, just return a partial dictionary.
   34479 
   34480 2002-12-15  Darin Adler  <darin (a] apple.com>
   34481 
   34482         Reviewed by Trey.
   34483 
   34484         - fixed 3128260 -- REGRESSION: context menus in frames are always the generic page menu
   34485 
   34486         * WebView.subproj/WebHTMLViewPrivate.m: (-[WebHTMLView hitTest:]):
   34487         Check the control key in the mouse down event. If it's down, then do no magic.
   34488 
   34489 2002-12-15  Darin Adler  <darin (a] apple.com>
   34490 
   34491         Reviewed by Dave.
   34492 
   34493         - fixed 3128651 -- REGRESSION: Mouse wheeling is busted on frames pages
   34494 
   34495         * WebView.subproj/WebHTMLViewPrivate.m: (-[WebHTMLView hitTest:]):
   34496         Only do the hitTest magic for left mouse downs; the rest of the clicks end up going
   34497         to the correct view anyway, without our help. This makes this stop making trouble for
   34498         the scroll wheel events.
   34499 
   34500 2002-12-14  Don Melton  <gramps (a] apple.com>
   34501 
   34502         Fixed 3127173 -- REGRESSION: fboweb.com renders incorrectly
   34503 
   34504         Reviewed by darin
   34505 
   34506         * English.lproj/StringsNotToBeLocalized.txt:
   34507         * WebView.subproj/WebController.m:
   34508         (-[WebController userAgentForURL:]):
   34509 
   34510         Changed "PPC" in our user agent string to "PPC Mac OS X" in order to
   34511         match Mozilla and make the silly server-side user agent string checking
   34512         work at fboweb.com.  Actually, just "PPC " would work fine at
   34513         fboweb.com.  Go figure.
   34514 
   34515 2002-12-13  Darin Adler  <darin (a] apple.com>
   34516 
   34517         Reviewed by Don.
   34518 
   34519         * WebView.subproj/WebController.m: (-[WebController userAgentForURL:]):
   34520         Add "(like Gecko)" string and change "WebKit" to "AppleWebKit".
   34521 
   34522         * English.lproj/StringsNotToBeLocalized.txt: Update for these changes.
   34523         * Misc.subproj/WebUnicode.h: No need for & 0xFF since we cast to unsigned char.
   34524 
   34525 2002-12-13  John Sullivan  <sullivan (a] apple.com>
   34526 
   34527         - WebKit part of fix for 3028061 -- visiting a bookmarked site
   34528         that now has a site icon will not update bookmark's icon
   34529 
   34530         No longer store the icon in the WebHistoryItem, since there's no
   34531         mechanism for keeping it fresh and telling interested clients
   34532         when it changes. Instead, the latest icon is always returned from
   34533         the icon database, and it's up to clients to get a fresh one when
   34534         they notice that the icon for a URL has been updated.
   34535 
   34536         Reviewed by Darin
   34537 
   34538         * History.subproj/WebHistoryItem.h:
   34539         remove _icon and _loadedIcon ivars
   34540 
   34541         * History.subproj/WebHistoryItem.m:
   34542         (-[WebHistoryItem dealloc]):
   34543         don't release _icon
   34544         (-[WebHistoryItem icon]):
   34545         just return fresh icon from database, don't store
   34546         (-[WebHistoryItem setURL:]):
   34547         don't set _loadedIcon to NO
   34548 
   34549 === Alexander-37u1 ===
   34550 
   34551 2002-12-13  Darin Adler  <darin (a] apple.com>
   34552 
   34553         Reviewed by Maciej.
   34554 
   34555         * English.lproj/StringsNotToBeLocalized.txt: Update for recent changes.
   34556 
   34557 2002-12-13  Trey Matteson  <trey (a] apple.com>
   34558 
   34559         3108976 - assert _private provisionalItem in -[WebFrame(WebPrivate) _transitionToCommitted
   34560         3108865 - frames not maintained going back at directory.apple.com
   34561 
   34562         Both bugs are fixed by the same small change.  We no longer try to inherit loadType
   34563         across redirects.  Instead we just make sure the right thing happens in _transitionToCommitted:
   34564         for redirects in the loadType=Standard case.
   34565 
   34566         3122721 - History stores both original and redirected sites
   34567 
   34568         Easy fix while in the neighborhood.  We just don't add to History when doing a redirect.
   34569 
   34570         Reviewed by rjw
   34571 
   34572         * WebView.subproj/WebFramePrivate.m:
   34573         (-[WebFrame _transitionToCommitted:]):  On redirect, update the URL of the frame's current
   34574         item, not the current item in the b/f list.  Also do not add to history on redirect.
   34575         (-[WebFrame _loadURL:loadType:triggeringEvent:isFormSubmission:]):  Cut out funny business
   34576         that tried to guess when to inherit loadtype across redirects.
   34577 
   34578 2002-12-13  Richard Williamson   <rjw (a] apple.com>
   34579 
   34580         Fixed 3127225.  Scale page cache based on available memory.
   34581         Also added support for setting WebCore object cache size via
   34582         a preference.
   34583         Fixed 3126267.  Increase CG glyph cache size if font smoothing
   34584         is turned on.
   34585         
   34586         Reviewed by gramps.
   34587 
   34588         * History.subproj/WebBackForwardList.m:
   34589         (+[WebBackForwardList pageCacheSize]):
   34590         * Misc.subproj/WebKitLogging.h:
   34591         * Misc.subproj/WebKitLogging.m:
   34592         * WebCoreSupport.subproj/WebBridge.m:
   34593         (-[WebBridge getObjectCacheSize]):
   34594         * WebCoreSupport.subproj/WebTextRendererFactory.m:
   34595         (getAppDefaultValue):
   34596         (getUserDefaultValue):
   34597         (getLCDScaleParameters):
   34598         * WebView.subproj/WebPreferences.m:
   34599         (+[WebPreferences load]):
   34600         (-[WebPreferences _pageCacheSize]):
   34601         (-[WebPreferences _objectCacheSize]):
   34602         * WebView.subproj/WebPreferencesPrivate.h:
   34603 
   34604 2002-12-13  Chris Blumenberg  <cblu (a] apple.com>
   34605 
   34606         Fixed: 3105486 - c|net news.com site seems to have lost its favicon again
   34607 
   34608         Reviewed by darin.
   34609 
   34610         * Misc.subproj/WebIconDatabase.m:
   34611         (-[WebIconDatabase _updateFileDatabase]): Only save icons with a size of 16 x 16 since that's the only size we use.
   34612 
   34613 2002-12-13  Chris Blumenberg  <cblu (a] apple.com>
   34614 
   34615         Catch NULL status strings passed to NPN_Status.
   34616         Reviewed by darin.
   34617 
   34618         * Plugins.subproj/WebBaseNetscapePluginView.m:
   34619         (-[WebBaseNetscapePluginView status:]): check the incoming string before calling [NSString stringWithCString]
   34620 
   34621 2002-12-12  Trey Matteson  <trey (a] apple.com>
   34622 
   34623         3117101 - PLT slows down as history fills up
   34624 
   34625         I saw a 3% sloth effect from a huge (100k) history.  This change cut that cost in half.
   34626         I think we still have a marginally measurable cost for our worst practical case.
   34627 
   34628         Reviewed by rjw
   34629 
   34630         * History.subproj/WebHistoryPrivate.m:
   34631         (-[WebHistoryPrivate insertEntry:atDateIndex:]):  Comment.
   34632         (-[WebHistoryPrivate removeEntryForURLString:]):  Use removeIdentical
   34633         instead of remove, since we don't need to do all the equals comparisons.
   34634 
   34635 2002-12-12  Richard Williamson   <rjw (a] apple.com>
   34636 
   34637         Changes to fix 3116584.
   34638         Reviewed by hyatt.
   34639         
   34640         Changes to support emptying the page cache from the
   34641         "Empty Cache" menu.
   34642         Reviewed by trey.
   34643 
   34644         * ChangeLog:
   34645         * History.subproj/WebBackForwardList.h:
   34646         * History.subproj/WebBackForwardList.m:
   34647         (-[WebBackForwardList clearPageCache]):
   34648         * History.subproj/WebHistoryItem.m:
   34649         (+[WebHistoryItem _scheduleReleaseTimer]):
   34650         (-[WebHistoryItem _scheduleRelease]):
   34651         (+[WebHistoryItem _releasePageCache:]):
   34652         (-[WebHistoryItem setHasPageCache:]):
   34653         * WebCoreSupport.subproj/WebTextRenderer.m:
   34654         * WebView.subproj/WebFramePrivate.m:
   34655         (-[WebFrame _opened]):
   34656 
   34657 2002-12-12  Richard Williamson   <rjw (a] apple.com>
   34658 
   34659         Fixed 3119693.  Restore scroll position when going back
   34660         to item in b/f cache.
   34661         
   34662         Reviewed by trey.
   34663 
   34664         * WebView.subproj/WebFramePrivate.m:
   34665         (-[WebFrame _opened]):
   34666 
   34667 === Alexander-36 ===
   34668 
   34669 2002-12-12  Richard Williamson   <rjw (a] apple.com>
   34670 
   34671         Change relating to 3083287.  This doesn't fix the problem but
   34672         flips the geometry calcs to get most incremental images to draw
   34673         correctly.  .mac now slideshows draw with the incorrect sliding 
   34674         behavior while loading.
   34675         
   34676         3083287 has been moved to 0.9/1.
   34677         
   34678         Reviewed by darin.
   34679 
   34680         * WebCoreSupport.subproj/WebImageRenderer.m:
   34681         (-[WebImageRenderer incrementalLoadWithBytes:length:complete:]):
   34682         (-[WebImageRenderer drawClippedToValidInRect:fromRect:]):
   34683 
   34684 2002-12-12  Trey Matteson  <trey (a] apple.com>
   34685 
   34686         Fixed 3094525 - Need to use SPI to fix flipped drag image problem
   34687 
   34688         We call the new SPI.  I also had to rework the dissolve steps to get it
   34689         to non flip the image in Panther in millions (but leave the old code for
   34690         the Jaguar case).
   34691 
   34692         Reviewed by cblu
   34693 
   34694         * Misc.subproj/WebNSImageExtras.m:
   34695         (+[NSImage load]):  Call the SPI.
   34696         (-[NSImage _web_dissolveToFraction:]):  Add new way of building the image for Panther.
   34697 
   34698 2002-12-12  Darin Adler  <darin (a] apple.com>
   34699 
   34700         Reviewed by Maciej.
   34701 
   34702         - fixed most likely cause of 3125565 -- 2% regression running the PLT for uncached loads
   34703         
   34704         Don't recompute the user agent when it doesn't change. It almost never changes.
   34705 
   34706         * WebView.subproj/WebController.m:
   34707         (-[WebController initWithView:controllerSetName:]): Add observer so we know when defaults change.
   34708         (-[WebController dealloc]): Remove observer.
   34709         (-[WebController setApplicationNameForUserAgent:]): Clear out computed user agent to force it
   34710         to be recomputed later.
   34711         (-[WebController applicationNameForUserAgent]): Just retain since we copied when we stored it
   34712         so we know it's not mutable.
   34713         (-[WebController customUserAgent]): Ditto.
   34714         (-[WebController userAgentForURL:]): Use the cached user agent if it's good. Otherwise compute
   34715         and cache the user agent string. This means that we will almost never recompute it.
   34716 
   34717         * WebView.subproj/WebControllerPrivate.h: Add userAgent field to cache in.
   34718         * WebView.subproj/WebControllerPrivate.m:
   34719         (-[WebControllerPrivate dealloc]): Release userAgent.
   34720         (-[WebController _defaultsDidChange]): Release and nil userAgent.
   34721 
   34722 2002-12-12  Darin Adler  <darin (a] apple.com>
   34723 
   34724         Reviewed by Maciej.
   34725 
   34726         - fixed 3125504 -- REGRESSION: Selection not working correctly for text area on http://glish.com/css/7.asp
   34727 
   34728         The problem is that the text area lost its first responder status because WebHTMLView took the click,
   34729         and NSWindow wanted WebHTMLView to become first responder too.
   34730 
   34731         * WebView.subproj/WebHTMLView.m: (-[WebHTMLView acceptsFirstResponder]):
   34732         Don't allow the NSWindow to make this the first responder during the early part of mouseDown event
   34733         handling. But do allow anyone else to make this the first responder, for example from keyboard events,
   34734         or from calls back from WebCore once we begin mouse-down event handling.
   34735 
   34736 2002-12-12  Darin Adler  <darin (a] apple.com>
   34737 
   34738         Reviewed by Maciej and Richard.
   34739 
   34740         - fixed reentrancy crash I ran into while debugging infinite recursion bugs
   34741 
   34742         * WebView.subproj/WebHTMLViewPrivate.m:
   34743         (-[WebHTMLView _updateMouseoverWithFakeEvent]): Added. Does part of what _frameOrBoundsChanged did.
   34744         (-[WebHTMLView _frameOrBoundsChanged]): Schedule the mouseover update to happen soon, rather than
   34745         doing it right away. If we do it right away, we might reenter because sending a mouse moved event
   34746         can result in another layout since mouse moved events are the same as mouse dragged events in KHTML.
   34747         * WebView.subproj/WebHTMLView.m:
   34748         (-[WebHTMLView viewWillMoveToWindow:]): Cancel the scheduled mouseover update.
   34749 
   34750         * WebKit.pbproj/project.pbxproj: Electron uber alles.
   34751 
   34752 2002-12-12  Richard Williamson   <rjw (a] apple.com>
   34753 
   34754         Fixed 3125585.  One click crasher option clicking on
   34755         any link.  Added additional check to curtail overly
   34756         zealous ASSERT.
   34757         
   34758         Reviewed by mjs.
   34759 
   34760         * WebView.subproj/WebControllerPrivate.m:
   34761         (-[WebController _mainReceivedError:fromDataSource:complete:]):
   34762 
   34763 2002-12-11  Richard Williamson   <rjw (a] apple.com>
   34764 
   34765         Fixed 3125425.  Just call super if view isn't in view heirarchy,
   34766         rather than asserting.  The assert was firing because NSText 
   34767         was trying to perform a background layout on an item view that
   34768         was moved to the page cache.
   34769         
   34770         Reviewed by gramps.
   34771 
   34772         * WebCoreSupport.subproj/WebImageRenderer.m:
   34773         (-[WebImageRenderer incrementalLoadWithBytes:length:complete:]):
   34774         (-[WebImageRenderer drawClippedToValidInRect:fromRect:]):
   34775         * WebView.subproj/WebHTMLView.m:
   34776         (-[WebHTMLView visibleRect]):
   34777 
   34778 2002-12-11  Richard Williamson   <rjw (a] apple.com>
   34779 
   34780         Fixed 3124121, 3124716 (and other dupes).  Regressions related to b/f crash.
   34781         
   34782         Reviewed by hyatt.
   34783 
   34784         * ChangeLog:
   34785         * History.subproj/WebHistoryItem.m:
   34786         (-[WebHistoryItem _scheduleRelease]):
   34787         * WebCoreSupport.subproj/WebBridge.m:
   34788         (-[WebBridge saveDocumentToPageCache:]):
   34789         * WebCoreSupport.subproj/WebImageRenderer.m:
   34790         (-[WebImageRenderer incrementalLoadWithBytes:length:complete:]):
   34791         (-[WebImageRenderer drawClippedToValidInRect:fromRect:]):
   34792         * WebView.subproj/WebFramePrivate.m:
   34793         (-[WebFrame _setState:]):
   34794 
   34795 2002-12-11  Richard Williamson   <rjw (a] apple.com>
   34796 
   34797         Fixed 3123375.  Provide SPI to release all pending page caches
   34798         
   34799         Reviewed by kocienda.
   34800 
   34801         * History.subproj/WebBackForwardList.m:
   34802         * History.subproj/WebHistoryItem.h:
   34803         * History.subproj/WebHistoryItem.m:
   34804         * History.subproj/WebHistoryItemPrivate.h: Added.
   34805         * WebCoreSupport.subproj/WebBridge.m:
   34806         * WebKit.pbproj/project.pbxproj:
   34807         * WebView.subproj/WebFramePrivate.m:
   34808 
   34809 2002-12-11  Darin Adler  <darin (a] apple.com>
   34810 
   34811         Reviewed by Richard.
   34812 
   34813         - fixed 3124837 -- Crash trying to handle weird javascript URL in page address field
   34814 
   34815         * Plugins.subproj/WebBaseNetscapePluginView.m:
   34816         (-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:]):
   34817         Use the new _web_scriptIfJavaScriptURL to simplify the check for JavaScript URLs,
   34818         and to use a more tolerant unescaper.
   34819 
   34820         * English.lproj/StringsNotToBeLocalized.txt: Updated.
   34821 
   34822 2002-12-11  Darin Adler  <darin (a] apple.com>
   34823 
   34824         Reviewed by John.
   34825 
   34826         - turned on the mechanism that passes events through WebCore, now that it's working better
   34827 
   34828         * WebView.subproj/WebHTMLViewPrivate.m:
   34829         (-[WebHTMLView hitTest:]): Moved this function in here. Rewrote it. It has a new feature where
   34830         you can set a global and do a normal hit test, needed for the mouse-moved handling below. Also,
   34831         for efficiency, it does the actual hit testing of itself, rather than calling super, which recurses,
   34832         and ignoring the result. The sum total is that it always returns self for mouse-moved events, so
   34833         we pass them all over the bridge at the topmost frame.
   34834 
   34835         (-[WebHTMLView _updateMouseoverWithEvent:]):
   34836         * WebView.subproj/WebHTMLView.m: Moved hitTest: out of here.
   34837 
   34838 2002-12-11  John Sullivan  <sullivan (a] apple.com>
   34839 
   34840         - fixed 3124640 -- Crash importing IE Favorites if there 
   34841         are no IE favorites
   34842 
   34843         Reviewed by Darin
   34844 
   34845         * Bookmarks.subproj/WebBookmarkImporter.m:
   34846         (-[WebBookmarkImporter initWithPath:]):
   34847         use alloc/init instead of autoreleasing constructor for error since
   34848         it's kept around until dealloc.
   34849 
   34850 2002-12-11  Darin Adler  <darin (a] apple.com>
   34851 
   34852         Reviewed by John.
   34853 
   34854         - fixed 3117611 -- REGRESSION: exception in mouseoverTextForElement with accented characters in status
   34855 
   34856         * WebView.subproj/WebHTMLViewPrivate.m:
   34857         (-[NSMutableDictionary _web_setObjectIfNotNil:forKey:]):
   34858         Remove the object from the dictionary rather than just leaving the dictionary alone if it's nil.
   34859         This is needed since we now are reusing an already-existing dictionary.
   34860 
   34861         * English.lproj/StringsNotToBeLocalized.txt: Update for recent changes.
   34862 
   34863 2002-12-11  Chris Blumenberg  <cblu (a] apple.com>
   34864 
   34865         Fixed: 3118430 - crash / loop trying to copy url of link to clipboard
   34866         Fixed: 3122585 - REGRESSION: dragging links to the desktop or a Finder window does not do anything
   34867 
   34868         Reviewed by john.
   34869 
   34870         We were reusing the drag types from the previous drag pasteboard. For example, we would declare image types when dragging URLs. This would confuse the Finder, so location files weren't being created. This would occasional cause us to crash because we wer
   34871 
   34872 
   34873 
   34874 
   34875 
   34876 
   34877 
   34878 
   34879 
   34880 en't providing the declared data. 
   34881 
   34882         * Misc.subproj/WebNSPasteboardExtras.h:
   34883         * Misc.subproj/WebNSPasteboardExtras.m:
   34884         (+[NSPasteboard _web_dragTypesForURL]): Added more types that we handle
   34885         (-[NSPasteboard _web_writeURL:andTitle:withOwner:declareTypes:]): declares the provided types, writes URL and title
   34886         (-[NSPasteboard _web_writeURL:andTitle:withOwner:]): call _web_writeURL:andTitle:withOwner:types: with _web_dragTypesForURL
   34887         * Misc.subproj/WebNSViewExtras.h:
   34888         * Misc.subproj/WebNSViewExtras.m:
   34889         (-[NSView _web_dragPromisedImage:origin:URL:fileType:title:event:]): call _web_writeURL:andTitle:withOwner: types: plus images types
   34890 
   34891 2002-12-10  Trey Matteson  <trey (a] apple.com>
   34892 
   34893         3092966 - going back goes to different page (can't go back to a POST page)
   34894         3123450 - if the user refuses a navigation, the b/f menus is wrong
   34895 
   34896         We will rePOST data upon back/forward/refresh if our caches fail us.  The policy delegate
   34897         gets a crack at confirming this operation.  Latent bugs where the policy delegate was double
   34898         queried are fixed.  A bug in the b/f cursor when a page failed to load is fixed.
   34899 
   34900         Reviewed by Maciej.
   34901 
   34902         * English.lproj/StringsNotToBeLocalized.txt:  Usual suspects.
   34903         * History.subproj/WebHistoryItem.h:  Add state for reposting forms.
   34904         * History.subproj/WebHistoryItem.m:  Boilerplate changes for new state.
   34905         (-[WebHistoryItem dealloc]):
   34906         (-[WebHistoryItem setFormData:]):
   34907         (-[WebHistoryItem setFormContentType:]):
   34908         (-[WebHistoryItem formData]):
   34909         (-[WebHistoryItem formContentType]):
   34910         (-[WebHistoryItem description]):
   34911         * WebView.subproj/WebController.m:
   34912         (-[WebController _goToItem:withLoadType:]):  Tighten up an assert as I clarified an
   34913         assumption as I worked through this task.
   34914         * WebView.subproj/WebControllerPolicyDelegate.h:  New WebNavigationType's for back/forward,
   34915         refresh, and repost.
   34916         * WebView.subproj/WebFrame.m:
   34917         (-[WebFrame loadRequest:]):  Eliminate extra copy of a request.
   34918         (-[WebFrame reload]):  Eliminate extra copy of a request.  Setup triggeringAction properly
   34919         if we're about to rePOST.
   34920         * WebView.subproj/WebFramePrivate.h:  Started moving some private methods into the .m file.
   34921         * WebView.subproj/WebFramePrivate.m:
   34922         (-[WebFrame _createItem]):  Save form state with history items.
   34923         (-[WebFrame _isLoadComplete]):  Fix up b/f cursor on page error before commit succeeds.
   34924         (-[WebFrame _loadItem:fromItem:withLoadType:]):  Set up request to rePOST if that's what the
   34925         HistoryItem demands.  Add call to _addExtraFieldsToRequest so we don't do a double
   34926         query of the policy delegate.  Pre-flight the form post vs. WF cache to setup triggering
   34927         action properly.
   34928         (-[WebFrame _actionInformationForLoadType:isFormSubmission:event:originalURL:]):
   34929         New utility method to help build action dict.
   34930         (-[WebFrame _continueAfterNavigationPolicy:]):  Comment only.
   34931         (-[WebFrame _loadURL:loadType:triggeringEvent:isFormSubmission:]):  Call new utility method
   34932         instead (just code factoring).
   34933         (-[WebFrame _postWithURL:data:contentType:triggeringEvent:]):  Call new utility method
   34934         instead (just code factoring).  Add call to _addExtraFieldsToRequest so we don't do a double
   34935         query of the policy delegate.
   34936         (-[WebFrame _reloadAllowingStaleDataWithOverrideEncoding:]):  Whitespace only.
   34937         (-[WebFrame _resetBackForwardListToCurrent]):  Utility routine to fix up b/f cursor on page error.
   34938         (-[WebFrame _continueLoadRequestAfterNavigationPolicy:request:]):  Fix up b/f cursor on page
   34939         error before commit succeeds.
   34940 
   34941 2002-12-10  Darin Adler  <darin (a] apple.com>
   34942 
   34943         Reviewed by Maciej.
   34944 
   34945         - fixed 3124302 -- REGRESSION: Can't use directory.apple.com because
   34946         frame resize bar intercepts mouse clicks
   34947 
   34948         * WebView.subproj/WebHTMLView.m: (-[WebHTMLView hitTest:]):
   34949         Don't steal clicks for views that are inside nested WebViews.
   34950         This isn't the real fix, but it's good enough for now. The real fix will be in WebCore.
   34951 
   34952 2002-12-10  Darin Adler  <darin (a] apple.com>
   34953 
   34954         - fixed fix for 3124081 -- REGRESSION: partial progress is left in address field after download
   34955 
   34956         Reviewed by Chris.
   34957 
   34958         Need to move it down one line so the data source is clear before callback.
   34959 
   34960         * WebView.subproj/WebMainResourceClient.m:
   34961         (-[WebMainResourceClient interruptForPolicyChangeAndKeepLoading:]):
   34962         Do the _clearProvisionalDataSource before the locationChangeDone: callback.
   34963 
   34964 2002-12-10  John Sullivan  <sullivan (a] apple.com>
   34965 
   34966         Fixed more "Alexander"s that were lurking in places I forgot 
   34967         to look before.
   34968 
   34969         Reviewed by Darin
   34970 
   34971         * Makefile.am:
   34972         "rm -rf $(SYMROOTS)/Safari.app/Frameworks/WebKit.framework"
   34973 
   34974 2002-12-10  Darin Adler  <darin (a] apple.com>
   34975 
   34976         - fixed 3124081 -- REGRESSION: partial progress is left in address field after download
   34977 
   34978         Reviewed by Chris.
   34979 
   34980         * WebView.subproj/WebMainResourceClient.m:
   34981         (-[WebMainResourceClient interruptForPolicyChangeAndKeepLoading:]):
   34982         Put in code to call the locationChangeDone: method on the location change delegate if
   34983         keepLoading is YES. Since the data source is not finished loading WebFrame won't do it.
   34984 
   34985 2002-12-10  Chris Blumenberg  <cblu (a] apple.com>
   34986 
   34987         Fixed: 3124079 - REGRESSION: Downloads never complete
   34988 
   34989         Reviewed by darin.
   34990 
   34991         * WebView.subproj/WebMainResourceClient.m:
   34992         (-[WebMainResourceClient handleDidFinishLoading:]): release and set to nil the download handler after calling [super handleDidFinishLoading:h]
   34993 
   34994 2002-12-10  Richard Williamson   <rjw (a] apple.com>
   34995 
   34996         Fixed 3115427.  Page now draws instantly instead of 20 seconds.
   34997         I added the substitution font we get from the appkit to the character to glyph
   34998         cache.
   34999         
   35000         Fixed early return optimization from letter forming function.  It was too
   35001         eager to return!
   35002         
   35003         Reviewed by mjs.
   35004 
   35005         * Misc.subproj/WebUnicode.m:
   35006         (shapedString):
   35007         * WebCoreSupport.subproj/WebTextRenderer.h:
   35008         * WebCoreSupport.subproj/WebTextRenderer.m:
   35009         (glyphForCharacter):
   35010         (glyphForUnicodeCharacter):
   35011         (widthForGlyph):
   35012         (widthForCharacter):
   35013         (_fontContainsString):
   35014         (-[WebTextRenderer substituteFontForString:families:]):
   35015         (-[WebTextRenderer _computeWidthForSpace]):
   35016         (-[WebTextRenderer _floatWidthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:withPadding:applyRounding:attemptFontSubstitution:widths:fonts:glyphs:numGlyphs:letterSpacing:wordSpacing:fontFamilies:]):
   35017         (-[WebTextRenderer extendUnicodeCharacterToGlyphMapToInclude:]):
   35018         (-[WebTextRenderer updateGlyphEntryForCharacter:glyphID:font:]):
   35019         (-[WebTextRenderer extendCharacterToGlyphMapToInclude:]):
   35020         (-[WebTextRenderer extendGlyphToWidthMapToInclude:]):
   35021 
   35022 2002-12-10  John Sullivan  <sullivan (a] apple.com>
   35023 
   35024         - tweaked the API of WebBookmarkImporter while implementing
   35025         real "Import IE Favorites" UI
   35026 
   35027         Reviewed by Ken
   35028 
   35029         * Bookmarks.subproj/WebBookmarkImporter.h:
   35030         fixed a typo in a constant
   35031         * Bookmarks.subproj/WebBookmarkImporter.m:
   35032         (-[WebBookmarkImporter initWithPath:]):
   35033         Don't pass a group here. This method now creates the topBookmark
   35034         (as it was doing before) but does not attempt to insert it
   35035         anywhere. It's up to the client to fetch the topBookmark and do
   35036         something with it. Also, don't name the new folder here; leave
   35037         that to the caller also.
   35038 
   35039         * English.lproj/Localizable.strings:
   35040         kept this file up to date
   35041 
   35042 2002-12-10  Darin Adler  <darin (a] apple.com>
   35043 
   35044         Reviewed by John.
   35045 
   35046         - fixed 3108912 -- onclick handlers not supported on form elements
   35047 
   35048         * WebView.subproj/WebHTMLView.m: (-[WebHTMLView hitTest:]):
   35049         Take over hit testing so that all clicks on subviews are handled by the WebHTMLView.
   35050         WebCore now handles getting the mouse events to the subviews after passing
   35051         the events through the DOM.
   35052 
   35053 2002-12-09  Maciej Stachowiak  <mjs (a] apple.com>
   35054 
   35055         Reviewed by Trey.
   35056 
   35057         - fixed 3123057 - SJ: DHTML doesn't always work on http://www.pixar.com/howwedoit/
   35058         * WebView.subproj/WebFramePrivate.m:
   35059         (-[WebFrame _loadURL:loadType:triggeringEvent:isFormSubmission:]):
   35060         Treat a click on a link to the same URL with an anchor as a scroll
   35061         to anchor, not a same URL load.
   35062         (-[WebFrame _continueFragmentScrollAfterNavigationPolicy:request:]): Avoid
   35063         adding the same anchor URL to the back/forward list many times.
   35064 
   35065 2002-12-09  Darin Adler  <darin (a] apple.com>
   35066 
   35067         Reviewed by Maciej.
   35068 
   35069         - fixed 3028664 -- change user agent string to include application name and version
   35070 
   35071         * WebView.subproj/WebController.m:
   35072         (-[WebController setApplicationNameForUserAgent:]): Remove locking, unneeded since we changed
   35073         how WebFoundation handles user agent.
   35074         (-[WebController setCustomUserAgent:]): Ditto.
   35075         (-[WebController resetUserAgent]): Ditto.
   35076         (-[WebController userAgentForURL:]): Remove locking. Also add new algorithm for computing the
   35077         user agent which takes the preferred language into account, and incorporates the WebKit version
   35078         and the application name.
   35079 
   35080         * WebView.subproj/WebControllerPrivate.h: No need for a lock.
   35081         * WebView.subproj/WebControllerPrivate.m:
   35082         (-[WebControllerPrivate init]): Don't create a lock.
   35083         (-[WebControllerPrivate dealloc]): Don't release a lock.
   35084 
   35085         * WebKit.pbproj/project.pbxproj: Bump versions to 0.8 and 35u.
   35086         * English.lproj/InfoPlist.strings: In here too.
   35087 
   35088         * English.lproj/StringsNotToBeLocalized.txt: Updated for these and other recent changes.
   35089 
   35090 2002-12-09  Richard Williamson   <rjw (a] apple.com>
   35091 
   35092         Many changes for b/f list.
   35093         1.  Always attempt to cache snap back items.
   35094         2.  Lazily release resources from page cache.  This garners gains on the PLT (and presumably iBench) tests, both for uncached.
   35095         3.  Set the page cache size to 4 (+ snap back items).  After releasing resources we hover around 28MB footprint.  Closing windows releases all resources.
   35096         4.  Turn on the back/forward cache by default.  The menu item still allows you to toggle b/f on and off.  Useful when conducting speed comparison in the PLT.
   35097         5.  Addition of lazy update to PLT memory statistics to show footprint after lazy release of page cache resources.
   35098         6.  Delayed to leak detector to account for lazy release of resources.
   35099         7.  A change when saving a page to back/forward cache to clear and restore the documents root renderer.  Without this fix pages would appear to 'flicker' more when content arrived.
   35100         8.  A change to ensure a layout when restoring a page from the b/f cache.  Without this fix scrollbars wouldn't appear correctly.
   35101         9.  A change to ensure that khtmlview layout and paint timers are unscheduled when a page is placed in the b/f cache.
   35102         10.  A fix to decouple of khtmlview from it's part when placed in the b/f cache.  This fixed a crash caused by inappropriate deference of the part when a page cache item was released.
   35103         11.  A comment in KHTMLPageCache.h explaining the that our page cache is not the same as the khtml page cache.  (Their cache just cached the html source.)
   35104         12.  Reapply styles when loading page from cache.  This ensures that visited link get the appropriate style.
   35105 
   35106         Reviewed by kocienda.
   35107 
   35108         * History.subproj/WebBackForwardList.m:
   35109         (+[WebBackForwardList pageCacheSize]):
   35110         (+[WebBackForwardList setUsesPageCache:]):
   35111         (+[WebBackForwardList usesPageCache]):
   35112         * History.subproj/WebHistoryItem.h:
   35113         * History.subproj/WebHistoryItem.m:
   35114         (-[WebHistoryItem setAlwaysAttemptToUsePageCache:]):
   35115         (-[WebHistoryItem alwaysAttemptToUsePageCache]):
   35116         (+[WebHistoryItem _invalidateReleaseTimer]):
   35117         (-[WebHistoryItem _scheduleRelease]):
   35118         (+[WebHistoryItem _releaseAllPendingPageCaches]):
   35119         (-[WebHistoryItem _releasePageCache:]):
   35120         (-[WebHistoryItem setHasPageCache:]):
   35121         (-[WebWindowWatcher windowWillClose:]):
   35122         * WebView.subproj/WebDataSourcePrivate.h:
   35123         * WebView.subproj/WebDataSourcePrivate.m:
   35124         (-[WebDataSource _startLoading:]):
   35125         (-[WebDataSource _commitIfReady:]):
   35126         (-[WebDataSource _loadingFromPageCache]):
   35127         * WebView.subproj/WebDynamicScrollBarsView.h:
   35128         * WebView.subproj/WebFramePrivate.h:
   35129         * WebView.subproj/WebFramePrivate.m:
   35130         (-[WebFrame _purgePageCache]):
   35131         (+[WebFrame _timeOfLastCompletedLoad]):
   35132         (-[WebFrame _setState:]):
   35133         (-[WebFrame _opened]):
   35134         (-[WebFrame _continueLoadRequestAfterNavigationPolicy:request:]):
   35135         * WebView.subproj/WebPreferences.m:
   35136         (+[WebPreferences load]):
   35137 
   35138 2002-12-09  Darin Adler  <darin (a] apple.com>
   35139 
   35140         Reviewed by Chris.
   35141 
   35142         - fixed 3122608 -- REGRESSION: Downloads can't be cancelled
   35143 
   35144         When I fixed the leak for other categories of policy interruption, I messed
   35145         things up for downloads. Added new parameters to handle this right.
   35146 
   35147         * WebView.subproj/WebBaseResourceHandleDelegate.h: Remove isDownload flag.
   35148         * WebView.subproj/WebBaseResourceHandleDelegate.m:
   35149         (-[WebBaseResourceHandleDelegate isDownload]): Return NO, override in subclass.
   35150         (-[WebBaseResourceHandleDelegate handle:didReceiveResponse:]): Call isDownload
   35151         method instead of looking at flag directly.
   35152 
   35153         * WebView.subproj/WebControllerPrivate.h: Add complete: parameter to _mainReceivedError:.
   35154         * WebView.subproj/WebControllerPrivate.m:
   35155         (-[WebController _mainReceivedError:fromDataSource:complete:]): If complete is NO, then
   35156         don't mark the primary load as complete.
   35157         * WebView.subproj/WebMainResourceClient.m:
   35158         (-[WebMainResourceClient isDownload]): Added. Returns YES if downloadHandler is non-nil.
   35159         (-[WebMainResourceClient receivedError:complete:]): Added complete parameter. Call the
   35160         _setPrimaryLoadComplete: method in the download case (fixes a possible leak), and pass
   35161         the complete parameter through to the controller.
   35162         (-[WebMainResourceClient cancel]): Pass complete:YES.
   35163         (-[WebMainResourceClient interruptForPolicyChangeAndKeepLoading:]): Added the keepLoading
   35164         flag, and pass complete:!keepLoading.
   35165         (-[WebMainResourceClient stopLoadingForPolicyChange]): Pass keepLoading:NO.
   35166         (-[WebMainResourceClient continueAfterContentPolicy:response:]): Pass keepLoading:YES,
   35167         and remove the call to the now-obsolete setIsDownload:.
   35168         (-[WebMainResourceClient handle:didFailLoadingWithError:]): Pass complete:YES.
   35169 
   35170 2002-12-08  Darin Adler  <darin (a] apple.com>
   35171 
   35172         Reviewed by Don and Dave.
   35173 
   35174         - fixed 3120578 -- REGRESSION: going to about:blank creates null view
   35175 
   35176         This part of the fix makes sure that a renderer is created, even when there are no bytes
   35177         of data passed through. This makes the empty document about:blank case work just like the
   35178         "document with just whitespace in it case". There's another part of the fix in WebCore that
   35179         takes care of the remaining problem. 
   35180 
   35181         * WebView.subproj/WebHTMLRepresentation.m:
   35182         (-[WebHTMLRepresentation finishedLoadingWithDataSource:]):
   35183         Call receivedData:withDataSource: on the bridge with nil for the data. It would be even more
   35184         elegant to add a new call for the case where we finish, but it's not necessary, since the
   35185         existing receivedData: call does all the right things if passed nil.
   35186 
   35187         * WebView.subproj/WebDataSourcePrivate.m: (-[WebDataSource _finishedLoading]):
   35188         Call finishedLoadingWithDataSource: here, to make sure it's done after committing.
   35189         This parallels what we already do for the didReceiveData call.
   35190         * WebView.subproj/WebMainResourceClient.m: (-[WebMainResourceClient handleDidFinishLoading:]):
   35191         Remove the call to finishedLoadingWithDataSource: because it's handled by _finishedLoading now.
   35192         This parallels what we already do for the didReceiveData call.
   35193 
   35194         - fixed long standing problem where resizing could make you see a "null view"
   35195 
   35196         * WebView.subproj/WebView.m:
   35197         (-[WebView drawRect:]): Add a "paint cyan" feature in development builds.
   35198         Null view problems are particularly hard to debug without something like this,
   35199         and we don't care if development builds are slightly slower. No change in deployment.
   35200         (-[WebView setFrameSize:]): Tell the scroll view to draw the background if we are
   35201         resized. We can't do our "let the old bits show through" thing any more if we have to
   35202         redraw because of resizing.
   35203 
   35204         - other changes
   35205 
   35206         * WebKit.pbproj/project.pbxproj: Remove the old -DAPPLE_CHANGES and -DHAVE_CONFIG_H that we
   35207         once needed when WebKit used to compile  C++ headers from the KHTML part of WebCore.
   35208         We haven't needed those for ages. Also sort things a bit, using the new Electron feature for
   35209         sorting lists of files alphabetically, and some by hand.
   35210 
   35211         * English.lproj/StringsNotToBeLocalized.txt: Update for recent changes.
   35212 
   35213 2002-12-08  Chris Blumenberg  <cblu (a] apple.com>
   35214 
   35215         Fixed: 3121627 - REGRESSION: partial progress is left in address field after download
   35216 
   35217         Reviewed by: darin
   35218 
   35219         In WebMainResourceClient, make sure to always call receivedError before _clearProvisionalDataSource so that
   35220         receivedError works. This is done in multiple places, so I factored this out into one method interuptForPolicyChange.
   35221 
   35222         * WebView.subproj/WebControllerPrivate.m:
   35223         (-[WebController _mainReceivedError:fromDataSource:]): added asserts for nil error, dataSource and frame
   35224         * WebView.subproj/WebMainResourceClient.m:
   35225         (-[WebMainResourceClient interruptForPolicyChange]): renamed from notifyDelegatesOfInterruptionByPolicyChange because it now also sets the provisionalDataSource on the frame to nil. 
   35226         (-[WebMainResourceClient stopLoadingForPolicyChange]): call interruptForPolicyChange, stop load
   35227         (-[WebMainResourceClient continueAfterContentPolicy:response:]): call interruptForPolicyChange
   35228 
   35229 2002-12-06  Trey Matteson  <trey (a] apple.com>
   35230 
   35231         Clean up some printfs.  Use WebKitLogPageCache for page cache info.
   35232 
   35233         Reviewed by: rjw
   35234 
   35235         * WebView.subproj/WebFramePrivate.m:
   35236         (-[WebFrame _transitionToCommitted:]):
   35237         (-[WebFrame _purgePageCache]):
   35238         (-[WebFrame _setState:]):
   35239         (-[WebFrame _continueLoadRequestAfterNavigationPolicy:request:]):
   35240 
   35241 2002-12-06  Trey Matteson  <trey (a] apple.com>
   35242 
   35243         3118584 - implement desired behavior for load - reload - b/f
   35244         3119241 - page cache needs to be refreshed after reload
   35245         3118096 - isTargetItem:NO saved to disk with every bookmark
   35246 
   35247         The most noticeable changes are the addition of the "Same" loadType, and that reload
   35248         does not restore form state.  3119241 was noticed in passing, and is related.
   35249         3118096 is a nit with a possible small perf benefit.
   35250 
   35251         Reviewed by: rjw
   35252 
   35253         * History.subproj/WebHistoryItem.h:
   35254         * History.subproj/WebHistoryItem.m:
   35255         (-[WebHistoryItem dealloc]):  New originalURL field.
   35256         (-[WebHistoryItem originalURL]):  New getter.
   35257         (-[WebHistoryItem setOriginalURL:]):  New setter.
   35258         (-[WebHistoryItem dictionaryRepresentation]):  Dont save isTarget.
   35259         (-[WebHistoryItem initFromDictionaryRepresentation:]):  Dont save isTarget.
   35260         * WebView.subproj/WebFrame.m:
   35261         (-[WebFrame loadRequest:]):  Test for going to same URL, invoke loadTypeSame case.
   35262         * WebView.subproj/WebFramePrivate.h:  Add loadTypeSame
   35263         * WebView.subproj/WebFramePrivate.m:
   35264         (-[WebFrame _addBackForwardItemClippedAtTarget:]):  Remove a line of dead code.
   35265         (-[WebFrame _createItem]):  Set originalURL when item is created.
   35266         (-[WebFrame _transitionToCommitted:]):  For loadTypeSame, clear page cache
   35267         (-[WebFrame _purgePageCache]):  Added logging.
   35268         (-[WebFrame _setState:]):  Don't add to page cache if doing a reload.
   35269         (-[WebFrame _isLoadComplete]):  LoadTypeSame is a NOP.
   35270         (-[WebFrame _loadItem:fromItem:withLoadType:]):  LoadTypeSame is an ASSERT.
   35271         (-[WebFrame _loadURL:loadType:triggeringEvent:isFormSubmission:]):  In
   35272         the LoadTypeSame case load from origin and never do anchor nav.  If asked to load
   35273         the same URL, invoke LoadTypeSame case.
   35274         (-[WebFrame _loadURL:intoChild:]):  Latent bug: WebFrameLoadTypeReloadAllowingStaleData
   35275         should restore child frame content like reload does.
   35276         (-[WebFrame _itemForRestoringDocState]):  Prevent form state restore on reload and loadSame.
   35277         (-[WebFrame _shouldTreatURLAsSameAsCurrent:]):  New utility function.
   35278 
   35279 2002-12-06  Maciej Stachowiak  <mjs (a] apple.com>
   35280 
   35281         Reviewed by: Darin Adler
   35282 
   35283         - made framework embedding work correctly with buildit
   35284 
   35285         * WebKit.pbproj/project.pbxproj: Give framework a relative
   35286         install path, don't install it the normal way, and copy it
   35287         manually to /AppleInternal/Library/Frameworks if installing. Also
   35288         look for other frameworks in
   35289         ${DSTROOT}/AppleInternal/Library/Frameworks.
   35290 
   35291 2002-12-05  Darin Adler  <darin (a] apple.com>
   35292 
   35293         Reviewed by Trey.
   35294 
   35295         - fixed 3103691 -- assertion in WebHTMLView addMouseMovedObserver at versiontracker
   35296 
   35297         * WebView.subproj/WebHTMLView.m:
   35298         (-[WebHTMLView addMouseMovedObserver]): Instead of asserting, do the checks here to
   35299         determine if the observer should be installed.
   35300         (-[WebHTMLView viewDidMoveToWindow]): Remove checks, since addMouseMovedObserver now checks.
   35301         (-[WebHTMLView windowDidBecomeMain:]): Remove checks, since addMouseMovedObserver now checks.
   35302 
   35303 2002-12-05  Richard Williamson   <rjw (a] apple.com>
   35304 
   35305         Don't ceil spaces if not a fixed pitch font.  This make sites
   35306         that have hard coded block widths have less wrapping beyond what the
   35307         designer expected.  Fixes 3117225.
   35308         
   35309         Reviewed by: mjs
   35310 
   35311         * WebCoreSupport.subproj/WebTextRenderer.h:
   35312         * WebCoreSupport.subproj/WebTextRenderer.m:
   35313         (widthForGlyph):
   35314         (-[WebTextRenderer _computeWidthForSpace]):
   35315         (-[WebTextRenderer initWithFont:]):
   35316         (-[WebTextRenderer _floatWidthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:withPadding:applyRounding:attemptFontSubstitution:widths:fonts:glyphs:numGlyphs:letterSpacing:wordSpacing:fontFamilies:]):
   35317 
   35318 2002-12-05  Chris Blumenberg  <cblu (a] apple.com>
   35319 
   35320         Added WebDocumentText protocol. Made WebHTMLView and WebTextView implement it.
   35321 
   35322         Reviewed by: rjw
   35323 
   35324         * WebView.subproj/WebController.m:
   35325         (-[WebController supportsTextEncoding]): check if protocol is WebDocumentText
   35326         * WebView.subproj/WebDocument.h:
   35327         * WebView.subproj/WebHTMLView.h:
   35328         * WebView.subproj/WebHTMLView.m:
   35329         (-[WebHTMLView hasSelection]): call selectedString
   35330         (-[WebHTMLView takeFindStringFromSelection:]): call selectedString
   35331         (-[WebHTMLView selectAll:]): call selectAll
   35332         (-[WebHTMLView string]): part of WebDocumentText protocol
   35333         (-[WebHTMLView attributedString]): part of WebDocumentText protocol
   35334         (-[WebHTMLView selectedString]): part of WebDocumentText protocol
   35335         (-[WebHTMLView selectedAttributedString]): part of WebDocumentText protocol
   35336         (-[WebHTMLView selectAll]): part of WebDocumentText protocol
   35337         (-[WebHTMLView deselectAll]): part of WebDocumentText protocol
   35338         * WebView.subproj/WebHTMLViewPrivate.m:
   35339         (-[WebHTMLView _writeSelectionToPasteboard:]): call selectedAttributedString
   35340         * WebView.subproj/WebTextView.h:
   35341         * WebView.subproj/WebTextView.m:
   35342         (-[WebTextView string]): part of WebDocumentText protocol
   35343         (-[WebTextView attributedString]): part of WebDocumentText protocol
   35344         (-[WebTextView selectedString]): part of WebDocumentText protocol
   35345         (-[WebTextView selectedAttributedString]): part of WebDocumentText protocol
   35346         (-[WebTextView selectAll]): part of WebDocumentText protocol
   35347         (-[WebTextView deselectAll]): part of WebDocumentText protocol
   35348 
   35349 2002-12-05  Darin Adler  <darin (a] apple.com>
   35350 
   35351         Reviewed by Richard.
   35352 
   35353         - fixed 3107240 -- world leak: reproducible, trying to open TIFF file
   35354 
   35355         * WebView.subproj/WebMainResourceClient.m:
   35356         (-[WebMainResourceClient notifyDelegatesOfInterruptionByPolicyChange]):
   35357         Send error to the delegate using receivedError: rather than directly.
   35358         This results in the frame properly stopping the load and fixes the leak.
   35359 
   35360 2002-12-05  Darin Adler  <darin (a] apple.com>
   35361 
   35362         Reviewed by Chris.
   35363 
   35364         * Downloads.subproj/WebDownloadHandler.m: (-[WebDownloadHandler initWithDataSource:]):
   35365         Add WebGZipDecoder to the list.
   35366 
   35367         * Downloads.subproj/WebGZipDecoder.h: Finished this.
   35368         * Downloads.subproj/WebGZipDecoder.m: Finished this.
   35369 
   35370         * English.lproj/StringsNotToBeLocalized.txt: Updated for recent changes.
   35371 
   35372 2002-12-05  Maciej Stachowiak  <mjs (a] apple.com>
   35373 
   35374         Reviewed by: Darin
   35375 
   35376         * English.lproj/InfoPlist.strings: removed letters from
   35377         CFBundleShortVersionString to make buildit happy.
   35378 
   35379 === Alexander-35 ===
   35380 
   35381 2002-12-05  Darin Adler  <darin (a] apple.com>
   35382 
   35383         Reviewed by Ken.
   35384 
   35385         - fixed 3118647 -- REGRESSION: click policy no longer works
   35386 
   35387         * WebView.subproj/WebFramePrivate.m:
   35388         (-[WebFrame _actionInformationForNavigationType:event:originalURL:]):
   35389         Allow mouse up events too. Those are usually the ones that trigger navigation.
   35390 
   35391 2002-12-04  Darin Adler  <darin (a] apple.com>
   35392 
   35393         Reviewed by Maciej.
   35394 
   35395         - fixed assert when you choose an item from a menu, for example, and that navigates
   35396 
   35397         * WebView.subproj/WebFramePrivate.m:
   35398         (-[WebFrame _actionInformationForNavigationType:event:originalURL:]):
   35399         If the event is over some other element, just don't include the element info.
   35400 
   35401 2002-12-04  Chris Blumenberg  <cblu (a] apple.com>
   35402 
   35403         Fixed: 3116294 - Need "Reload" feature in Downloads window
   35404 
   35405         Reviewed by: rjw
   35406 
   35407         * WebKit.pbproj/project.pbxproj: made WebFramePrivate.h private so that WebBrowser can call _downloadRequest:toPath:
   35408         * WebView.subproj/WebFramePrivate.m:
   35409         (-[WebFrame _loadDataSource:withLoadType:]): commented out assert that complains about lack of WebView. Long-term solution is to catch this earlier and have a lone datasource download mechanism 3118355.
   35410 
   35411 2002-12-04  Trey Matteson  <trey (a] apple.com>
   35412 
   35413         3097585 - Crash in -[WebFrame(WebPrivate) _isLoadComplete] at result of google image search
   35414 
   35415         The root of this problem was that we would detach child frames by calling detach
   35416         on them all, then clearing the whole array.  This would fail because detaching a
   35417         frame might have to stop a load, which calls checkLoadComplete, which visits the
   35418         entire frame tree.  But if a previously detached child is still sitting in that
   35419         tree, we end up with an assertion failure.  The solution is to remove the kids as
   35420         they are detached.
   35421 
   35422         Reviewed by: Darin Adler
   35423 
   35424         * WebView.subproj/WebFramePrivate.m:
   35425         (-[WebFrame _createItem]):   Method rename (a nit I missed from an earlier change)
   35426         (-[WebFrame _createItemTreeWithTargetFrame:clippedAtTarget:]):  Method rename
   35427         (-[WebFrame _detachChildren]):   new method to do detaching right
   35428         (-[WebFrame _detachFromParent]):  call new method
   35429         (-[WebFrame _setDataSource:]):  call new method
   35430         (-[WebFrame _transitionToCommitted:]):    Method rename
   35431 
   35432 2002-12-04  Darin Adler  <darin (a] apple.com>
   35433 
   35434         Reviewed by Trey and Maciej.
   35435 
   35436         - fixed 3117558 -- Assertion failure in KWQKHTMLPart::slotData after typing "amazon.com" twice
   35437         - update NSEvent handling in preparation for NSView mouse event handling going through WebCore
   35438 
   35439         * WebView.subproj/WebFramePrivate.m:
   35440         (-[WebFrame _loadItem:fromItem:withLoadType:]): Added FIXME comments about matching the _loadURL
   35441         case more closely.
   35442         (-[WebFrame _actionInformationForNavigationType:event:originalURL:]): Only use the event if it's
   35443         a mouse down event. This prevents trouble when we have other kinds of events coming through.
   35444         (-[WebFrame _continueFragmentScrollAfterNavigationPolicy:request:]): Call the new scrollToAnchorWithURL:
   35445         instead of openURL:. This fixes the assertion failure in the bug above.
   35446         (-[WebFrame _loadURL:loadType:triggeringEvent:isFormSubmission:]): Update checks here to more closely
   35447         match the ones in KHTMLPart::openURL that we are replacing. Add more comments.
   35448 
   35449         * WebView.subproj/WebHTMLView.m: (-[WebHTMLView hitTest:]): Function to intercept all clicks at the
   35450         WebHTMLView level, disabled for now because we are not yet ready.
   35451 
   35452         - started a gzip download decoder, not yet hooked up
   35453 
   35454         * Downloads.subproj/WebGZipDecoder.h: Added.
   35455         * Downloads.subproj/WebGZipDecoder.m: Added.
   35456         * WebKit.pbproj/project.pbxproj: Add WebGZipDecoder and zlib.
   35457 
   35458         - other changes
   35459 
   35460         * Panels.subproj/WebAuthenticationPanel.m: Fixed screwed-up indentation.
   35461 
   35462 2002-12-04  Richard Williamson   <rjw (a] apple.com>
   35463 
   35464         Cache the fallback font in the same way we cache other
   35465         fonts.
   35466         
   35467         Reviewed by: Darin
   35468 
   35469         * WebCoreSupport.subproj/WebTextRendererFactory.h:
   35470         * WebCoreSupport.subproj/WebTextRendererFactory.m:
   35471         (-[WebTextRendererFactory fallbackFontWithTraits:size:]):
   35472         (-[WebTextRendererFactory fontWithFamilies:traits:size:]):
   35473         (-[WebTextRendererFactory cachedFontFromFamily:traits:size:]):
   35474 
   35475 2002-12-04  Richard Williamson   <rjw (a] apple.com>
   35476 
   35477         Fixed massive performance regression.
   35478         We were leaking WebFontCacheKey.
   35479         Added a cache of missing fonts to avoid
   35480         expensive appkit lookup.
   35481         
   35482         Reviewed by: Maciej
   35483 
   35484         * WebCoreSupport.subproj/WebTextRendererFactory.m:
   35485         (-[WebTextRendererFactory cachedFontFromFamily:traits:size:]):
   35486         (-[WebTextRendererFactory cachedFontFromFamilies:traits:size:]):
   35487 
   35488 2002-12-03  Darin Adler  <darin (a] apple.com>
   35489 
   35490         - fixed 3117193 -- REGRESSION: Hang on Hixie's weblog
   35491 
   35492         Reviewed by Maciej.
   35493 
   35494         * WebCoreSupport.subproj/WebTextRenderer.m:
   35495         (-[WebTextRenderer substituteFontForString:families:]):
   35496         Do the operation on the whole string at once instead of a character at a time.
   35497         I decided to do this rather than correct the bug in the character-at-a-time version.
   35498 
   35499 == Rolled over to ChangeLog-2002-12-03 ==
   35500