Timeline



Apr 29, 2003:

7:33 PM Changeset in webkit [4216] by hyatt
  • 8 edits in trunk/WebCore

This patch fixes the following bugs:

(1) 3186174 - padding-left improperly applied to list items.
The fix is in render_list.cpp and involves adding in the
list item's border and padding so that outside markers end up
outside the border box instead of just inside the padding box.

(2) 3239571 - a stray !important after a ; causes the CSS parser
to choke. This patch adds a rule to parser.y to deal with
!importants found in between property values and to just ignore
them.

(3) 3170647 - positioned boxes with auto widths ended up adding
in their border/padding twice! Make sure that when
calcAbsoluteHorizontal in render_box.cpp examines m_maxWidth that
it subtracts out the border and padding and looks at content width.

(4) 3186165 - Negative padding values were being incorrectly
honored by Safari. A patch to css_styleselector.cpp checks to
see if the value specified by the rule is negative, and if so
the rule is not applied.

(5) 3132172 - The clip property could not be accessed via script
because the cssText routine for CSS_RECT primitive values had
not been implemented. In css_valueimpl.cpp this code has now been
filled in.

Reviewed by mjs

  • khtml/css/css_valueimpl.cpp: (CSSPrimitiveValueImpl::cssText):
  • khtml/css/cssstyleselector.cpp:
  • khtml/css/parser.cpp:
  • khtml/css/parser.y:
  • khtml/rendering/render_box.cpp: (RenderBox::calcAbsoluteHorizontal):
  • khtml/rendering/render_list.cpp: (RenderListMarker::paintObject):
6:13 PM Changeset in webkit [4215] by rjw
  • 3 edits in trunk/WebKit

API changes from final review meeting.
Added textEncodingName method to WebDataSource.

Reviewed by Chris.

  • WebView.subproj/WebDataSource.h:
  • WebView.subproj/WebDataSource.m: (-[WebDataSource textEncodingName]):
5:12 PM Changeset in webkit [4214] by hyatt
  • 4 edits in trunk/WebCore

Fix for 3226138, crash on canada.gc.ca. Make sure a failed
@media parse doesn't crash by adding a null check.

Reviewed by mjs

  • khtml/css/parser.cpp:
  • khtml/css/parser.y:
4:46 PM Changeset in webkit [4213] by hyatt
  • 1 edit in trunk/WebCore/khtml/rendering/render_object.cpp

Tweaking a comment.

4:32 PM Changeset in webkit [4212] by hyatt
  • 9 edits in trunk/WebCore

The remainder of the overflow:auto patch.

A minor table cell optimization has also been included.

Also fixing one of rjw's inline table bugs. Inline tables
didn't clear their minmaxwidth bool when contents inside them
changed size.

r=mjs/gramps on overflow:auto stuff
r=rjw on the table stuff

  • khtml/html/html_tableimpl.cpp: (HTMLTableElementImpl::parseAttribute):
  • khtml/rendering/render_block.cpp:
  • khtml/rendering/render_block.h:
  • khtml/rendering/render_layer.cpp: (RenderLayer::checkScrollbarsAfterLayout):
  • khtml/rendering/render_object.cpp: (RenderObject::nodeAtPoint):
  • khtml/rendering/render_table.cpp: (RenderTableCell::layout):
  • khtml/rendering/render_table.h:
2:54 PM Changeset in webkit [4211] by cblu
  • 6 edits in trunk/WebKit

Tests:

Updated to use the new NSURLDownload API.

  • Downloader/MyDocument.h:
  • Downloader/MyDocument.m: (-[MyDocument downloadCancel:]): (-[MyDocument savePanelDidEnd:returnCode:contextInfo:]): (-[MyDocument downloadDidBegin:]): (-[MyDocument download:didReceiveResponse:]): (-[MyDocument download:decideDestinationWithSuggestedFilename:]): (-[MyDocument download:didReceiveDataOfLength:]): (-[MyDocument download:didCreateDestination:]): (-[MyDocument downloadDidFinish:]): (-[MyDocument download:didFailWithError:]):

WebFoundation:

Updated to new NSURLDownload API.

Reviewed by rjw.

  • FileTransfer.subproj/NSBinHexDecoder.m: (+[NSBinHexDecoder MIMEType]):
  • FileTransfer.subproj/NSGZipDecoder.m: (+[NSGZipDecoder MIMEType]):
  • FileTransfer.subproj/NSMacBinaryDecoder.m: (+[NSMacBinaryDecoder MIMEType]):
  • FileTransfer.subproj/NSURLDownload.h:
  • FileTransfer.subproj/NSURLDownload.m: (-[NSURLDownload initWithSource:delegate:]): (-[NSURLDownload _initWithLoadingResource:request:response:delegate:proxy:]): (+[NSURLDownload _downloadWithLoadingConnection:request:response:delegate:proxy:]): (+[NSURLDownload _downloadWithSource:delegate:directory:]): (-[NSURLDownload setDestination:allowOverwrite:]): (-[NSURLDownload source]): (-[NSURLDownload useCredential:forAuthenticationChallenge:]): (-[NSURLDownload continueWithoutCredentialForAuthenticationChallenge:]): (-[NSURLDownload _sendDidBeginMessage]): (-[NSURLDownload connection:willSendRequest:redirectResponse:]): (-[NSURLDownload connection:didReceiveResponse:]): (-[NSURLDownload connection:didReceiveData:]): (-[NSURLDownload connectionDidFinishLoading:]): (-[NSURLDownload connection:didFailLoadingWithError:]): (-[NSURLDownload _createFileIfNecessary]): (-[NSURLDownload _decodeHeaderData:dataForkData:resourceForkData:]): (-[NSURLDownload _decodeData:dataForkData:resourceForkData:]): (-[NSURLDownload _didCloseFile:]): (-[NSURLDownload _cancelWithError:]): (-[NSURLDownload _setPath:]): (-[NSURLConnectionDelegateProxy connection:didFailLoadingWithError:]):
  • FileTransfer.subproj/NSURLDownloadDecoder.h:
  • FileTransfer.subproj/NSURLDownloadPrivate.h:
  • FileTransfer.subproj/NSURLUpload.h: Added.
  • FileTransfer.subproj/NSURLUpload.m: Added. (-[NSURLUpload initWithSource:destination:delegate:]): (-[NSURLUpload useCredential:forAuthenticationChallenge:]): (-[NSURLUpload continueWithoutCredentialForAuthenticationChallenge:]): (-[NSURLUploadAuthenticationChallenge upload]):
  • WebFoundation.pbproj/project.pbxproj:

WebKit:

Updated to use the new NSURLDownload API.

Reviewed by rjw.

  • WebView.subproj/WebDataSourcePrivate.h:
  • WebView.subproj/WebDataSourcePrivate.m: (-[WebDataSourcePrivate dealloc]):
  • WebView.subproj/WebMainResourceClient.m: (-[WebMainResourceClient continueAfterContentPolicy:response:]):
  • WebView.subproj/WebViewPrivate.m: (-[WebView _downloadURL:toDirectory:]):

WebBrowser:

Updated to use the new NSURLDownload API.

Reviewed by rjw.

  • DownloadMonitor.m: (-[DownloadMonitor downloadDidBegin:]): (-[DownloadMonitor download:decideDestinationWithSuggestedFilename:]): (-[DownloadMonitor download:shouldDecodeSourceDataOfMIMEType:]): (-[DownloadMonitor download:didCreateDestination:]): (-[DownloadMonitor downloadDidFinish:]): (-[DownloadMonitor download:didFailWithError:]): (-[DownloadMonitor cancelDownload:withError:]):
  • DownloadProgressEntry.m: (-[DownloadProgressEntry reload]):
2:38 PM Changeset in webkit [4210] by rjw
  • 18 edits in trunk/WebKit

Added "Copyright (C) 2003 Apple Computer, Inc. All rights reserved."
to all public headers. Also made formatting consistent.

Reviewed by darin.

12:44 PM Changeset in webkit [4209] by darin
  • 3 edits in trunk/WebCore

Reviewed by John.

  • fixed 3234633 -- page with moderately deep tag nesting causes crash when closed (www.4strokenationals.com)
  • khtml/xml/dom_nodeimpl.cpp: (NodeBaseImpl::~NodeBaseImpl): Avoid recursion by using a global list of child nodes to destroy and only doing the actual destruction at the top level.
11:30 AM Changeset in webkit [4208] by darin
  • 22 edits
    2 deletes in trunk/WebCore

Mostly reviewed by Ken, some bits reviewed by John.

  • fixed 3188781 -- eliminate globally initialized objects from WebCore
  • kwq/KWQString.h: Change QChar::null to be a char constant, and QString::null to be a const char *. In the cases where the code still compiles after these changes, everything works fine. A few cases that didn't compile are fixed below.
  • kwq/KWQString.mm: Remove QString::null. (QString::mid): Return QString() instead of null.
  • kwq/KWQChar.mm: Remove the definition of QChar::null.
  • khtml/css/css_base.cpp: (CSSSelector::extractPseudoType): Use DOMString explicitly in one place where the code said QString::null. The trick where QString::null is really a const char * does not work in this case.
  • khtml/khtml_part.cpp: (KHTMLPart::reparseConfiguration): Use QString() instead of QString::null in one place. The trick where QString::null is really a const char * does not work in this case.
  • kwq/KWQKHTMLSettings.h: Use QString() for settingsToCSS, the trick where QString::null is really a const char * does not work in this case.
  • khtml/rendering/render_list.cpp: (RenderListMarker::paintObject): Use an isEmpty check here instead of comparing with QString::null. Not sure this change was strictly required, but it is simpler and may also make the code slightly faster.
  • kwq/KWQKFileDialog.h: Removed. This used QString::null in a way that is incompatible with the new "0" hack, but was not used any more.
  • kwq/KWQKFileDialog.mm: Removed.
  • ForwardingHeaders/kfiledialog.h: Empty this out, since there is no KWQKFileDialog.h any more.
  • WebCore.pbproj/project.pbxproj: Removed KWQKFileDialog.h and .mm.
  • khtml/html/htmltokenizer.cpp: Change the commentStart global array to be an array of char instead of QChar to avoid the static constructor; the code works fine with char anyway.
  • khtml/html/html_formimpl.cpp: Change the global constants in this file to be char instead of QChar. It works this way (and faster for KWQ), and avoids the static constructor.
  • khtml/rendering/bidi.h: Change BidiIterator from a class with constructors into a plain struct. The copy construct and assignment operator weren't needed anyway since they simply duplicated default assignment, and if we have a constructor then we can't use it as a global object, since we want to avoid static constructors. Do the same with BidiStatus, and also stop using bit fields. It's silly to use bit fields for something when we have only one global instance of it; just makes extra code size and saves a few bytes.
  • khtml/rendering/bidi.cpp: (BidiIterator::current): Move the non-breaking space global inside this function. (appendRunsForObject): Initialize BidiIterator object using brace notation. (buildCompactRuns): Initialize BidiIterator objects using brace notation and assignment. (RenderBlock::layoutInlineChildren): Initialize BidiStatus fields separately. Initialize BidiIterator objects using brace notation and assignment. (RenderBlock::findNextLineBreak): Initialize BidiIterator objects using brace notation and assignment.
  • khtml/rendering/render_frames.cpp: Removed an include of <iostream.h>. This pulled the entire C++ I/O library in, with lots of static constructors. Elsewhere, we are careful not to use the C++ I/O library in WebCore except in Development versions. And this file didn't actually use the library, just included the header.
  • kwq/KWQNamespace.h: Remove all the color globals except for the ones used in KHTML: black, white, darkGray, gray, and lightGray. And for those, make the globals RGB constants instead of QColor objects. This gets rid of the global objects with constructors and works without any KHTML code changes.
  • kwq/KWQColor.mm: Remove the definition of the QColor constants from the Qt class.
  • kwq/KWQPainter.h: Add overloads for setPen and setBrush so they work with the "color" constants from Qt that are now RGB constants rather than QColor objects.
  • kwq/KWQPainter.mm: (QPainter::setPen): Set style to solid line and width to 0 when the parameter is an RGB constant. This is just like what you'd get if you constructed a QPen. (QPainter::setBrush): Set style to solid pattern when the parameter is an RGB constant. This is just like what you'd get if you constructed a QBrush.
  • khtml/misc/loader.h: Change m_LRULists to be a global pointer instead of a global array, so we don't have to statically construct LRUList objects.
  • khtml/misc/loader.cpp: (Cache::getLRUListFor): Allocate the global array the first time we pass through here.
11:27 AM Changeset in webkit [4207] by darin
  • 2 edits in trunk/JavaScriptCore

Reviewed by John.

  • fixed 2959353 -- eliminate globally initialized objects from JavaScriptCore
  • JavaScriptCore.pbproj/project.pbxproj: Added fpconst.cpp.
  • kjs/fpconst.cpp: Added. Defines KJS::NaN and KJS::Inf in a way that does not require a framework init routine.
  • kjs/identifier.h: Use a new KJS_IDENTIFIER_EACH_GLOBAL macro so we can do things to the entire set of identifiers easily. Also added an init function that sets up these globals in a way that does not require a framework init routine.
  • kjs/identifier.cpp: (Identifier::init): Initialize the property ane globals in a way that does not require a framework init routine.
  • kjs/internal.cpp: (InterpreterImp::initGlobalObject): Call Identifier::init.
  • kjs/ustring.h: Remove UChar::null and UString::null, and add UString::null(). We can't have a global object of a class that has a constructor if we want to avoid framework init routines, and luckily very little code relies on these.
  • kjs/ustring.cpp: (UCharReference::ref): Use our own global specific to this function rather than returning UChar::null when past the end of the string. This is dangerous because if the caller modifies it, that affects what all subsequent callers will see. (UString::Rep::create): Added assertions. (UString::UString): Got rid of code here that used to set up UString::null. (UString::null): Added. Returns a global null string, and can be used in some of the places where we used to use the UString::null global. (UString::operator[]): Fixed case where this used to return UChar::null to return '\0' instead.
  • kjs/regexp.cpp: (RegExp::match): Change uses of UString::null to UString::null().
11:26 AM Changeset in webkit [4206] by darin
  • 9 edits
    1 add in trunk/JavaScriptCore

Reviewed by John.

  • fixed 2959353 -- eliminate globally initialized objects from JavaScriptCore
  • JavaScriptCore.pbproj/project.pbxproj: Added fpconst.cpp.
  • kjs/fpconst.cpp: Added. Defines KJS::NaN and KJS::Inf in a way that does not require a framework init routine.
  • kjs/identifier.h: Use a new KJS_IDENTIFIER_EACH_GLOBAL macro so we can do things to the entire set of identifiers easily. Also added an init function that sets up these globals in a way that does not require a framework init routine.
  • kjs/identifier.cpp: (Identifier::init): Initialize the property ane globals in a way that does not require a framework init routine.
  • kjs/internal.cpp: (InterpreterImp::initGlobalObject): Call Identifier::init.
  • kjs/ustring.h: Remove UChar::null and UString::null, and add UString::null(). We can't have a global object of a class that has a constructor if we want to avoid framework init routines, and luckily very little code relies on these.
  • kjs/ustring.cpp: (UCharReference::ref): Use our own global specific to this function rather than returning UChar::null when past the end of the string. This is dangerous because if the caller modifies it, that affects what all subsequent callers will see. (UString::Rep::create): Added assertions. (UString::UString): Got rid of code here that used to set up UString::null. (UString::null): Added. Returns a global null string, and can be used in some of the places where we used to use the UString::null global. (UString::operator[]): Fixed case where this used to return UChar::null to return '\0' instead.
  • kjs/regexp.cpp: (RegExp::match): Change uses of UString::null to UString::null().
10:02 AM Changeset in webkit [4205] by darin
  • 6 edits in trunk/WebCore

Reviewed by Ken.

  • fixed 3242460 -- crash in NSPopUpButtonCell at acheter-moins-cher.com
  • kwq/KWQComboBox.mm: (-[KWQPopUpButtonCell trackMouse:inRect:ofView:untilMouseUp:]): Defer QObject timers too as well as loading while tracking a pop-up.
  • kwq/KWQObject.h: Add defersTimers and setDefersTimers functions.
  • kwq/KWQObject.mm: (QObject::setDefersTimers): Added. When called with true starts deferring timers. When called with false schedules a "delay 0" task to deliver all the timers and stop deferring them. (-[KWQObjectTimerTarget sendTimerEvent]): Added. Contains guts of the old timerFired method. (-[KWQObjectTimerTarget timerFired]): Puts timer on the deferred timers list or calls sendTimerEvent. (+[KWQObjectTimerTarget stopDeferringTimers]): Remove timers items from the deferred timers list, and makes them fire, then stops deferring timers.
  • WebCore.pbproj/project.pbxproj: Reorder things a bit.
8:19 AM Changeset in webkit [4204] by darin
  • 3 edits in trunk/WebCore

Reviewed by Ken.

  • fixed 3230885 -- crash loading hixie test page in -[WebSubresourceClient connection:didReceiveData:]
  • khtml/rendering/render_style.cpp: (RenderStyle::setContent): Change code around so we don't deref the text object without checking the contentType. Also fix the leak of a DOMStringImpl in the case where we are asked to add a string, but the string pointer is 0.

Apr 28, 2003:

7:09 PM Changeset in webkit [4203] by gramps
  • 6 edits in trunk/WebKit

WebFoundation:

Reviewed by Maciej.

  • English.lproj/StringsNotToBeLocalized.txt:

Updated for recent changes.

WebKit:

Fixed 3225050 -- Default font size should be 16px
Fixed 3241813 -- No longer spoof as WinIE for abcnews.go.com when
default font size becomes 16px

Reviewed by Darin and Maciej.

  • English.lproj/StringsNotToBeLocalized.txt:

Updated.

  • WebCoreSupport.subproj/WebTextRenderer.m: (-[WebTextRenderer initWithFont:usingPrinterFont:]):

We need to adjust Times, Helvetica, and Courier to closely match the
vertical metrics of their Microsoft counterparts that are the de facto
web standard. The AppKit adjustment of 20% is too big and is
incorrectly added to line spacing, so we use a 15% adjustment instead
and add it to the ascent.

  • WebView.subproj/WebPreferences.m: (+[WebPreferences initialize]):

Changed default font size from 14 to 16 pixels and default fixed font
size from 14 to 13 pixels. Changed standard font from Lucida Grande to
Times, serif font from Times New Roman to Times, and sans serif font
from Lucida Grande to Helvetica. Also replaced some stray tabs with
spaces and made a few other anal-retentive formatting changes.

  • WebView.subproj/WebUserAgentSpoofTable.c: (hash): (_web_findSpoofTableEntry):
  • WebView.subproj/WebUserAgentSpoofTable.gperf:

No longer spoof as Windows MSIE for abcnews.go.com since we've also
changed the default font size.

WebBrowser:

Reviewed by Maciej.

  • English.lproj/StringsNotToBeLocalized.txt:

Updated for recent changes.

6:59 PM Changeset in webkit [4202] by rjw
  • 22 edits in trunk

WebCore:

API changes from final review meeting.

goBackOrForwardToItem: -> goToBackForwardItem:
drop "Window" from WebUIDelegate method names.
WebElementIsSelectedTextKey -> WebElementIsSelectedKey
Cross-frame searchFor on WebView now public.

Reviewed by Chris.

  • kwq/WebCoreBridge.h:
  • kwq/WebCoreBridge.mm:

WebKit:

API changes from final review meeting.

goBackOrForwardToItem: -> goToBackForwardItem:
drop "Window" from WebUIDelegate method names.
WebElementIsSelectedTextKey -> WebElementIsSelectedKey
Cross-frame searchFor on WebView now public.

Reviewed by Chris.

  • Plugins.subproj/WebBaseNetscapePluginView.m:
  • WebCoreSupport.subproj/WebBridge.m:
  • WebKit.exp:
  • WebView.subproj/WebDefaultContextMenuDelegate.m:
  • WebView.subproj/WebDefaultUIDelegate.m:
  • WebView.subproj/WebFrame.h:
  • WebView.subproj/WebFramePrivate.m:
  • WebView.subproj/WebHTMLView.m:
  • WebView.subproj/WebHTMLViewPrivate.m:
  • WebView.subproj/WebImageView.m:
  • WebView.subproj/WebPolicyDelegate.h:
  • WebView.subproj/WebTextView.m:
  • WebView.subproj/WebUIDelegate.h:
  • WebView.subproj/WebView.h:
  • WebView.subproj/WebView.m:
  • WebView.subproj/WebViewPrivate.h:
  • WebView.subproj/WebViewPrivate.m:

WebBrowser:

API changes from final review meeting.

goBackOrForwardToItem: -> goToBackForwardItem:
drop "Window" from WebUIDelegate method names.
WebElementIsSelectedTextKey -> WebElementIsSelectedKey
Cross-frame searchFor on WebView now public.

Reviewed by Chris.

  • BrowserDocument.m:
  • BrowserWebController.m:
  • ContextMenuHandler.m:
  • FindPanelController.m:

Tests:

Updated examples to match API changes
Added zooming as an example of stringByEvaluatingJavaScriptFromString:
and custom context menus. Currently problematic because of 3242716.

  • IBViewer/English.lproj/Document.nib:
  • IBViewer/IBViewer.pbproj/project.pbxproj:
  • PictureBrowser/Document.m:
  • PictureBrowser/English.lproj/Document.nib:
  • PictureBrowser/image_template.html:
  • PictureBrowser/thumbnail_template.html:
5:12 PM Changeset in webkit [4201] by darin
  • 3 edits in trunk/WebCore

Reviewed by John.

  • re-fixed 3159076 -- turbotax.intuit.com forms have text fields instead of radio buttons
  • khtml/html/html_formimpl.cpp: (HTMLInputElementImpl::attach): Only set the type if JavaScript hasn't set it explicitly already.
4:01 PM Changeset in webkit [4200] by kocienda
  • 3 edits
    2 adds in trunk/WebKit

WebFoundation:

Reviewed by Chris

Large reworking of NSURLResponse internals and
NSCachedURLResponse internals to move this code to
the API-approved design. Quite a bit of SPI has
shifted around as well.

  • CacheLoader.subproj/NSCachedURLResponse.h: Name change: WebCacheObjectInternal -> NSCachedURLResponseInternal.

Added new init methods that conform to approved API. Removed old
initWithResponse: init method.

Also removed a host of other cache-related accessors and methods:
createdDate, setCreatedDate:, expiresDate, setExpiresDate:,
lastModifiedDate, setLastModifiedDate:, maxAgeValue, setMaxAgeValue:,
mustRevalidate, setMustRevalidate:, isExpired, age, and
freshnessLifetime. The getters have moved to SPI on NSURLResponse. The
setters have been obsoleted as there are now default values in the
case of non-HTTP responses, and the information can be derived from
the HTTP header in all cases for HTTP responses.

Removed: objectSize and setObjectSize: methods. This figure can be
derived from the length of the NSCachedURLResponse's data field.

Removed: canStoreInMemory, setCanStoreInMemory:, canStoreOnDisk, and
setCanStoreOnDisk: methods. These are obsoleted by the new
NSURLCacheStoragePolicy API construct.

  • CacheLoader.subproj/NSCachedURLResponse.m:

Name change: WebCacheObjectVersion -> NSCachedURLResponseVersion.
Bumped the version number as well.

Removed instance variables used for now-obsoleted getter and setter
methods.

Added NSData, user-info NSDictionary and NSURLCacheStoragePolicy
instance variables, and added the API-approved getters for them.

Added implementation for new init methods; removed old init method
implementation.

Modified copy and coding methods accordingly.

Removed all method implementations mentioned in the
NSCachedURLResponse.h comment.

  • CacheLoader.subproj/NSURLCache.m: (-[NSURLCache storeCacheObject:forKey:]): Rewrote implementation to use new NSURLCacheStoragePolicy construct in place of older canCache accessors.
  • CacheLoader.subproj/NSURLCachePrivate.h: Added _cacheStatistics SPI method that used to be API but did not make the cut.
  • CacheLoader.subproj/NSURLConnection.m: (-[NSURLConnection _didFinishReturnCachedResponse:]): Use new API to access cache object data. (-[NSURLConnection _didFinishLoading]): Use new API to create an NSCachedURLResponse.
  • CacheLoader.subproj/NSURLResponse.h: Now implements NSCopying.
  • CacheLoader.subproj/NSURLResponse.m:

Bumped NSURLResponseVersion.

Removed createdTime and lastModifiedTime instance variables from
NSURLResponseInternal. Added createdDate instance variable. This is
part of the new way to track this information in responses.

Removed resourceData instance variable from NSURLResponseInternal.
This is no longer stored in the response object; it has moved to
NSCachedURLResponse.

Fixed silly retain of a static string in NSURLResponseInternal.

Updated NSURLResponseInternal dealloc and coding methods for new
instance variable set.

Added copyWithZone: method.

Removed accessors for obsoleted instance variables.

Added SPI accessor methods to NSURLResponseInternal: _createdDate,
_expiresDate, _lastModifiedDate, _maxAge, _mustRevalidate, and
_freshnessLifetime. Most of these return default values that give
objects very permissive cache constraints.

Name change: WebHTTPResponseVersion -> NSHTTPURLResponseVersion.
Bumped the value.

Added a collection of transient instance variables to
NSHTTPURLResponseInternal to track the values the HTTP response
subclass returns for _createdDate, _expiresDate, _lastModifiedDate,
_maxAge, _mustRevalidate, and _freshnessLifetime methods.

Updated NSHTTPURLResponseInternal dealloc method for new instance
variable set.

Name change in NSHTTPURLResponseInternal: setHeader: ->
setAllHeaderFields:.

Added SPI accessor methods: _createdDate, _expiresDate,
_lastModifiedDate, _maxAge, _mustRevalidate, and _freshnessLifetime
that use HTTP header information to return protocol-correct values.
Added _parseCacheControl helper method.

  • CacheLoader.subproj/NSURLResponsePrivate.h:

Removed a collection of accessors having to do with cache processing
and replaced with a modified set of SPI methods which work
together with API-approved NSURLResponse and NSCachedURLResponse
designs.

  • CacheLoader.subproj/WebCacheObjectPrivate.h: Removed.
  • CacheLoader.subproj/WebDiskCache.m: (-[WebDiskCache storeCacheObject:forKey:]): Access NSCachedURLResponse data instance variable to determine the size of a cache object. (-[WebDiskCache removeCacheObjectForKey:]): Ditto.
  • CacheLoader.subproj/WebMemoryCache.m: (-[WebMemoryCache _truncateToSizeLimit]): Ditto. (-[WebMemoryCache storeCacheObject:forKey:]): Ditto.
  • Downloads.subproj/NSURLDownload.m: (-[NSURLDownload _createFileIfNecessary]): _createdDate is now NSURLResponse SPI, not API.
  • Misc.subproj/WebNSCalendarDateExtras.h: Modified convenience method:

+(NSTimeInterval)_web_timeIntervalFromHTTPDateString:(NSString *)string

is now

+(NSDate *)_web_dateFromHTTPDateString:(NSString *)string

  • Misc.subproj/WebNSCalendarDateExtras.m: (+[NSCalendarDate _web_dateFromHTTPDateString:]): Ditto.
  • Misc.subproj/WebNSStringExtras.h: Added a new method: -(BOOL)_web_hasCaseInsensitiveSubstring:(NSString *)substring;
  • Misc.subproj/WebNSStringExtras.m: Ditto. (-[NSString _web_hasCaseInsensitiveSubstring:]):
  • ProtocolHandlers.subproj/WebCFNetworkHTTPProtocol.m: (-[WebCFNetworkHTTPProtocol addConditionalFieldsToHeader]): Use new _web_dateFromHTTPDateString: method.
  • ProtocolHandlers.subproj/WebHTTPProtocol.h: Remove unused timeIntervalFromHTTPResponseHeader: method.
  • ProtocolHandlers.subproj/WebHTTPProtocol.m: Ditto.

Modify a wide range of cache-related methods to use new API and
SPI made available by NSURLResponse and NSCachedURLResponse. In
many cases, this involved deleting code that now lives in one
of these two classes, which allows the protocol to rely more
on helpers.
(-[WebHTTPProtocol cachedResponseMustBeRevalidated]):
(-[WebHTTPProtocol _cachedResponseHasExpired]):
(-[WebHTTPProtocol HTTPResponse]):
(-[WebHTTPProtocol _cachePolicyForResponse]):
(-[WebHTTPProtocol setResponseHeader:]):

  • ProtocolHandlers.subproj/WebSimpleHTTPProtocol.m: (-[WebSimpleHTTPProtocol buildHTTPRequest]): Tweaks to call new-style NSURLResponse and NSCachedURLResponse accessors.
  • WebFoundation.pbproj/project.pbxproj: PB knows best.

WebKit:

Reviewed by Chris

  • Plugins.subproj/WebBaseNetscapePluginStream.m: (-[WebBaseNetscapePluginStream setResponse:]): _lastModifiedDate on NSURLResponse is now SPI.
  • WebView.subproj/WebDataSourcePrivate.m: (-[WebDataSource _commitIfReady:]): Ditto.

Apr 27, 2003:

6:10 PM Changeset in webkit [4199] by cblu
  • 3 edits in trunk/WebKit

Improved headerdoc comments.

  • Misc.subproj/WebKitErrors.h:
  • WebView.subproj/WebFrameLoadDelegate.h:

Apr 25, 2003:

11:05 PM Changeset in webkit [4198] by darin
  • 3 edits in trunk/JavaScriptCore
  • fixed 3241344 -- REGRESSION: top of page missing on wired.com and cnn.com

Caused by the ResolveNode speedup. Roll it out until I can figure out why.

  • kjs/nodes.cpp: (ResolveNode::evaluate): Go back to using evaluateReference.
9:13 PM Changeset in webkit [4197] by gramps
  • 2 edits in trunk/WebKit

Backed out Richard's (hopefully) accidental checkin of our experiments
from earlier today. Otherwise many layout tests are hosed. But this
change, or something like it, will arrive soon.

Reviewed by me.

  • WebCoreSupport.subproj/WebTextRenderer.m:

(-[WebTextRenderer initWithFont:usingPrinterFont:]):

6:42 PM Changeset in webkit [4196] by rjw
  • 16 edits in trunk/WebKit

WebBrowser:

API changes from final review meeting.

WebView:
Added canShowMIMETypeAsHTML:

WebFrameView:
Removed scrollView
Removed isDocumentHTML

WebDataSource:
Removed isDocumentHTML

Reviewed by Chris.

  • BrowserDocument.m: (-[BrowserDocument _isDocumentHTML]):
  • BrowserWebViewExtras.h:
  • BrowserWebViewExtras.m: (-[WebFrameView scrollView]):
  • FrameProgressEntry.m: (+[FrameProgressEntry _isDocumentHTMLForDataSource:]): (-[FrameProgressEntry useSingletonChildForDisplay]):

WebKit:

API changes from final review meeting.

WebView:
Added canShowMIMETypeAsHTML:

WebFrameView:
Removed scrollView
Removed isDocumentHTML

WebDataSource:
Removed isDocumentHTML

Reviewed by Chris.

  • WebCoreSupport.subproj/WebTextRenderer.m: (-[WebTextRenderer initWithFont:usingPrinterFont:]):
  • WebView.subproj/WebDataSource.h:
  • WebView.subproj/WebDataSource.m:
  • WebView.subproj/WebDataSourcePrivate.h:
  • WebView.subproj/WebDataSourcePrivate.m: (-[WebDataSource _layoutChildren]): (-[WebDataSource _mainDocumentError]): (-[WebDataSource _isDocumentHTML]):
  • WebView.subproj/WebFramePrivate.m: (-[WebFrame _makeDocumentView]): (-[WebFrame _setState:]): (-[WebFrame _isLoadComplete]):
  • WebView.subproj/WebFrameView.h:
  • WebView.subproj/WebFrameView.m: (-[WebFrameView setAllowsScrolling:]): (-[WebFrameView allowsScrolling]): (-[WebFrameView documentView]): (-[WebFrameView drawRect:]): (-[WebFrameView setFrameSize:]):
  • WebView.subproj/WebFrameViewPrivate.h:
  • WebView.subproj/WebFrameViewPrivate.m: (-[WebFrameView _setDocumentView:]): (-[WebFrameView _scrollView]): (-[WebFrameView _contentView]): (-[WebFrameView _verticalKeyboardScrollAmount]): (-[WebFrameView _horizontalKeyboardScrollAmount]): (-[WebFrameView _scrollToBottomLeft]): (+[WebFrameView _viewTypesAllowImageTypeOmission:]): (+[WebFrameView _canShowMIMETypeAsHTML:]):
  • WebView.subproj/WebHTMLView.m: (-[WebHTMLView _setPrinting:pageWidth:]):
  • WebView.subproj/WebHTMLViewPrivate.m: (-[WebHTMLView _updateMouseoverWithEvent:]):
  • WebView.subproj/WebView.h:
  • WebView.subproj/WebView.m: (+[WebView canShowMIMETypeAsHTML:]):

Tests:

API changes from final review meeting.

WebView:
Added canShowMIMETypeAsHTML:

WebFrameView:
Removed scrollView
Removed isDocumentHTML

WebDataSource:
Removed isDocumentHTML

Reviewed by Chris.

  • SimpleViewer/DocumentController.m: (-[DocumentController webView:didReceiveTitle:forFrame:]):
6:24 PM Changeset in webkit [4195] by cblu
  • 16 edits
    3 deletes in trunk/WebKit

WebFoundation:

Renamed WebDownload to NSURLDownload and moved it to WebFoundation.

Reviewed by rjw.

  • Downloads.subproj/NSBinHexDecoder.h: Added.
  • Downloads.subproj/NSBinHexDecoder.m: Added. (-[NSBinHexDecoder decodeIntoBuffer:size:]): (-[NSBinHexDecoder pumpCRCTwice]): (-[NSBinHexDecoder decodeAllIntoBuffer:size:]): (-[NSBinHexDecoder decodeHeader]): (-[NSBinHexDecoder setUpSourceForData:]): (-[NSBinHexDecoder decodeForkWithData:count:CRCCheckFlag:]): (+[NSBinHexDecoder canDecodeHeaderData:]): (-[NSBinHexDecoder decodeData:dataForkData:resourceForkData:]): (-[NSBinHexDecoder finishDecoding]): (-[NSBinHexDecoder fileAttributes]): (-[NSBinHexDecoder filename]):
  • Downloads.subproj/NSGZipDecoder.h: Added.
  • Downloads.subproj/NSGZipDecoder.m: Added. (+[NSGZipDecoder decodeHeader:headerLength:modificationTime:filename:]): (+[NSGZipDecoder canDecodeHeaderData:]): (-[NSGZipDecoder init]): (-[NSGZipDecoder dealloc]): (-[NSGZipDecoder decodeData:dataForkData:resourceForkData:]): (-[NSGZipDecoder finishDecoding]): (-[NSGZipDecoder fileAttributes]): (-[NSGZipDecoder filename]):
  • Downloads.subproj/NSMacBinaryDecoder.h: Added.
  • Downloads.subproj/NSMacBinaryDecoder.m: Added. (+[NSMacBinaryDecoder canDecodeHeaderData:]): (-[NSMacBinaryDecoder decodeData:dataForkData:resourceForkData:]): (-[NSMacBinaryDecoder finishDecoding]): (-[NSMacBinaryDecoder fileAttributes]): (-[NSMacBinaryDecoder filename]): (CRC16):
  • Downloads.subproj/NSURLDownload.h: Added.
  • Downloads.subproj/NSURLDownload.m: Added. (+[NSURLDownloadPrivate initialize]): (-[NSURLDownloadPrivate dealloc]): (-[NSURLDownload initWithRequest:]): (-[NSURLDownload _initWithLoadingResource:request:response:delegate:proxy:]): (+[NSURLDownload _downloadWithLoadingResource:request:response:delegate:proxy:]): (-[NSURLDownload dealloc]): (-[NSURLDownload loadWithDelegate:]): (-[NSURLDownload cancel]): (-[NSURLDownload path]): (-[NSURLDownload setPath:]): (-[NSURLDownload _downloadStarted]): (-[NSURLDownload _downloadEnded]): (-[NSURLDownload _setRequest:]): (-[NSURLDownload _setResponse:]): (-[NSURLDownload connection:willSendRequest:redirectResponse:]): (-[NSURLDownload connection:didReceiveResponse:]): (-[NSURLDownload connection:didReceiveData:]): (-[NSURLDownload connectionDidFinishLoading:]): (-[NSURLDownload connection:didFailLoadingWithError:]): (-[NSURLDownload _pathWithUniqueFilenameForPath:]): (-[NSURLDownload _createFSRefForPath:]): (-[NSURLDownload _createFileIfNecessary]): (-[NSURLDownload _decodeHeaderData:dataForkData:resourceForkData:]): (-[NSURLDownload _decodeData:dataForkData:resourceForkData:]): (-[NSURLDownload _decodeData:]): (-[NSURLDownload _dataIfDoneBufferingData:]): (-[NSURLDownload _finishDecoding]): (-[NSURLDownload _writeForkData:isDataFork:]): (-[NSURLDownload _writeDataForkData:resourceForkData:]): (-[NSURLDownload _isFileClosed]): (-[NSURLDownload _didCloseFile:]): (-[NSURLDownload _closeForkAsync:]): (-[NSURLDownload _closeForkSync:]): (-[NSURLDownload _closeFileAsync]): (-[NSURLDownload _closeFileSync]): (-[NSURLDownload _didDeleteFile]): (-[NSURLDownload _deleteFileAsnyc]): (-[NSURLDownload _closeAndDeleteFileAsync]): (-[NSURLDownload _cancelWithError:]): (-[NSURLDownload _cancelWithErrorCode:]): (-[NSURLDownload _setPath:]): (-[NSURLDownload _setDirectoryPath:]): (-[NSURLDownload _currentPath]): (-[NSURLDownload _errorWithCode:]): (-[NSURLDownload _dataForkReferenceNumber]): (-[NSURLDownload _setDataForkReferenceNumber:]): (-[NSURLDownload _resourceForkReferenceNumber]): (-[NSURLDownload _setResourceForkReferenceNumber:]): (-[NSURLDownload _areWritesCancelled]): (-[NSURLDownload _setWritesCancelled:]): (-[NSURLDownload _encounteredCloseError]): (-[NSURLDownload _setEncounteredCloseError:]): (-[NSURLConnectionDelegateProxy setDelegate:]): (-[NSURLConnectionDelegateProxy connection:willSendRequest:redirectResponse:]): (-[NSURLConnectionDelegateProxy connection:didReceiveResponse:]): (-[NSURLConnectionDelegateProxy connection:didReceiveData:]): (-[NSURLConnectionDelegateProxy connectionDidFinishLoading:]): (-[NSURLConnectionDelegateProxy connection:didFailLoadingWithError:]): (WriteCompletionCallback): (CloseCompletionCallback): (DeleteCompletionCallback):
  • Downloads.subproj/NSURLDownloadDecoder.h: Added.
  • Downloads.subproj/NSURLDownloadPrivate.h: Added.
  • English.lproj/Localizable.strings:
  • English.lproj/StringsNotToBeLocalized.txt:
  • Misc.subproj/WebFoundation.h:
  • Misc.subproj/WebNSErrorConstants.h:
  • Misc.subproj/WebNSErrorExtras.m: (WebNSErrorExtrasInit):
  • Misc.subproj/WebNSFileManagerExtras.h:
  • Misc.subproj/WebNSFileManagerExtras.m: (-[NSFileManager _web_noteFileChangedAtPath:]):
  • WebFoundation-base.exp:
  • WebFoundation.pbproj/project.pbxproj:

WebKit:

Renamed WebDownload to NSURLDownload and moved it to WebFoundation.

Reviewed by rjw.

  • Downloads.subproj/WebBinHexDecoder.h: Removed.
  • Downloads.subproj/WebBinHexDecoder.m: Removed.
  • Downloads.subproj/WebDownload.h: Removed.
  • Downloads.subproj/WebDownload.m: Removed.
  • Downloads.subproj/WebDownloadDecoder.h: Removed.
  • Downloads.subproj/WebDownloadPrivate.h: Removed.
  • Downloads.subproj/WebGZipDecoder.h: Removed.
  • Downloads.subproj/WebGZipDecoder.m: Removed.
  • Downloads.subproj/WebMacBinaryDecoder.h: Removed.
  • Downloads.subproj/WebMacBinaryDecoder.m: Removed.
  • Downloads.subproj/crc16.h: Removed.
  • Downloads.subproj/crc16.m: Removed.
  • English.lproj/Localizable.strings:
  • English.lproj/StringsNotToBeLocalized.txt:
  • Misc.subproj/WebKit.h:
  • Misc.subproj/WebKitErrors.h:
  • Misc.subproj/WebKitErrors.m: (-[NSError _initWithPluginErrorCode:contentURLString:pluginPageURLString:pluginName:MIMEType:]): (registerErrors):
  • Misc.subproj/WebNSWorkspaceExtras.h: Removed.
  • Misc.subproj/WebNSWorkspaceExtras.m: Removed.
  • WebKit.exp:
  • WebKit.pbproj/project.pbxproj:
  • WebView.subproj/WebDataSource.m:
  • WebView.subproj/WebDataSourcePrivate.m:
  • WebView.subproj/WebMainResourceClient.h:
  • WebView.subproj/WebMainResourceClient.m: (-[WebMainResourceClient initWithDataSource:]): (-[WebMainResourceClient continueAfterContentPolicy:response:]):
  • WebView.subproj/WebView.h:
  • WebView.subproj/WebViewPrivate.m: (-[WebView _downloadURL:toDirectory:]):

WebBrowser:

Renamed WebDownload to NSURLDownload and moved it to WebFoundation.

Reviewed by rjw.

  • DownloadMonitor.h:
  • DownloadMonitor.m: (-[DownloadMonitor download:didStartFromRequest:]): (-[DownloadMonitor download:didReceiveResponse:]): (-[DownloadMonitor download:decidePathWithListener:suggestedFilename:]): (-[DownloadMonitor download:didReceiveDataOfLength:]): (-[DownloadMonitor downloadShouldDecodeEncodedFile:]): (-[DownloadMonitor download:didCreateFileAtPath:]): (-[DownloadMonitor downloadDidFinishDownloading:]): (-[DownloadMonitor download:didFailDownloadingWithError:]): (-[DownloadMonitor cancelDownload:withError:]): (-[DownloadMonitor setEntry:forReloadingDownload:]):
  • DownloadProgressEntry.h:
  • DownloadProgressEntry.m: (-[DownloadProgressEntry _setDownload:]): (-[DownloadProgressEntry reload]):
  • WebBookmarkImporter.m: (-[WebBookmarkImporter initWithPath:]):
4:21 PM Changeset in webkit [4194] by rjw
  • 2 edits in trunk/WebKit

Final API review changes.

parent -> parentFrame
children -> childFrames

Reviewed by Chris.

  • WebView.subproj/WebHTMLView.m: (-[WebHTMLView _setPrinting:pageWidth:]):
4:17 PM Changeset in webkit [4193] by rjw
  • 2 edits in trunk/WebKit

Final API review changes.

parent -> parentFrame
children -> childFrames

Reviewed by Chris.

  • WebCoreSupport.subproj/WebBridge.m: (-[WebBridge childFrames]): (-[WebBridge frameDetached]):
3:55 PM Changeset in webkit [4192] by rjw
  • 9 edits in trunk/WebKit

WebKit:

Final API review changes.

WebFrame:
parent -> parentFrame
children -> childFrames
loadString:baseURL: -> loadHTMLString:baseURL:
laodData:encodingName:baseURL: -> loadData:MIMEType:textEncodingName:baseURL:

Reviewed by Chris.

  • WebView.subproj/WebDataProtocol.h:
  • WebView.subproj/WebDataProtocol.m: (-[WebDataRequestParameters dealloc]): (-[NSURLRequest _webDataRequestMIMEType]): (-[NSURLRequest _webDataRequestSetMIMEType:]): (-[WebDataProtocol startLoading]):
  • WebView.subproj/WebDataSource.m: (-[WebDataSource isLoading]):
  • WebView.subproj/WebDataSourcePrivate.m: (-[WebDataSource _recursiveStopLoading]): (-[WebDataSource _layoutChildren]): (-[WebDataSource _defersCallbacksChanged]):
  • WebView.subproj/WebFrame.h:
  • WebView.subproj/WebFrame.m: (-[WebFrame loadHTMLString:baseURL:]): (-[WebFrame findFrameNamed:]): (-[WebFrame parentFrame]): (-[WebFrame childFrames]):
  • WebView.subproj/WebFramePrivate.m: (-[WebFrame _createItem]): (-[WebFrame _descendantFrameNamed:]): (-[WebFrame _transitionToCommitted:]): (-[WebFrame _isLoadComplete]): (+[WebFrame _recursiveCheckCompleteFromFrame:]): (-[WebFrame _textSizeMultiplierChanged]): (-[WebFrame _viewWillMoveToHostWindow:]): (-[WebFrame _viewDidMoveToHostWindow]): (-[WebFrame _saveDocumentAndScrollState]): (-[WebFrame _loadDataSource:withLoadType:formState:]):
  • WebView.subproj/WebViewPrivate.m: (-[WebViewPrivate _clearControllerReferences:]): (-[WebView _frameForDataSource:fromFrame:]): (-[WebView _frameForView:fromFrame:]):

WebBrowser:

Final API review changes.

WebFrame:
parent -> parentFrame
children -> childFrames
loadString:baseURL: -> loadHTMLString:baseURL:
laodData:encodingName:baseURL: -> loadData:MIMEType:textEncodingName:baseURL:

Reviewed by Chris.

  • BrowserWebController.m: (-[BrowserWebController _closeDataSources:]):
  • BrowserWebFrameExtras.m: (-[WebFrame _topFrame]):
  • BrowserWebViewExtras.m: (-[WebFrameView largestScrollableWebView]):
  • Debug/SnippetController.m: (-[SnippetController load]):
  • LoadProgressMonitor.m: (-[LoadProgressMonitor _monitorProvisionalDataSourceForFrame:]): (-[LoadProgressMonitor titleChangedForFrame:]):

Tests:

Final API review changes.

WebFrame:
parent -> parentFrame
children -> childFrames
loadString:baseURL: -> loadHTMLString:baseURL:
laodData:encodingName:baseURL: -> loadData:MIMEType:textEncodingName:baseURL:

Reviewed by Chris.

  • PictureBrowser/Document.m: (-[Document readFromFile:ofType:]):
  • SnippetEditor/SnippetController.m: (-[SnippetController updateFromText:]):
3:47 PM Changeset in webkit [4191] by darin
  • 4 edits in trunk/JavaScriptCore

Reviewed by Maciej.

  • a couple improvements that give a 6.6% speedup on iBench JavaScript
  • kjs/nodes.cpp: (ResolveNode::evaluate): Don't use evaluateReference.
  • kjs/object.cpp: (ObjectImp::get): Do the prototype work with the ValueImp, not a wrapper. Contributes a tiny bit to the speedup, but cleaner anyway. (ObjectImp::hasProperty): Same thing here.
3:07 PM Changeset in webkit [4190] by cblu
  • 2 edits in trunk/WebKit

WebKit:

Don't do "@class WebDataSource" as that class isn't mentioned in this file.

  • WebView.subproj/WebFrameLoadDelegate.h:

WebBrowser:

Do "@class WebDataSource" as that class is mentioned in this file.

  • LocationChangeError.h:
2:55 PM Changeset in webkit [4189] by cblu
  • 20 edits
    3 deletes in trunk/WebKit

Tests:

Turned WebLocationChangeDelegate into WebFrameLoadDelegate. Renamed WebFrameLoadDelegate all methods to pass a frame instead of the data source.

Reviewed by rjw.

  • DumpBackForward/main.m: (main): (-[WaitUntilDoneDelegate webView:locationChangeDone:forDataSource:]): (-[WaitUntilDoneDelegate webView:didFailProvisionalLoadWithError:forFrame:]): (-[WaitUntilDoneDelegate webView:didFinishLoadForFrame:]): (-[WaitUntilDoneDelegate webView:didFailLoadWithError:forFrame:]):
  • DumpRenderTree/main.m: (main): (-[WaitUntilDoneDelegate webView:locationChangeDone:forDataSource:]): (-[WaitUntilDoneDelegate webView:didFailProvisionalLoadWithError:forFrame:]): (-[WaitUntilDoneDelegate webView:didFinishLoadForFrame:]): (-[WaitUntilDoneDelegate webView:didFailLoadWithError:forFrame:]):
  • IBViewer/DocumentController.m: (-[DocumentController webView:didStartProvisionalLoadForFrame:]): (-[DocumentController webView:didReceiveTitle:forFrame:]): (-[DocumentController webView:locationChangeDone:forDataSource:]): (-[DocumentController webView:didFailProvisionalLoadWithError:forFrame:]): (-[DocumentController webView:didFinishLoadForFrame:]): (-[DocumentController webView:didFailLoadWithError:forFrame:]):
  • PDFViewer/DocumentController.m: (-[DocumentController webView:didStartProvisionalLoadForFrame:]): (-[DocumentController webView:didReceiveTitle:forFrame:]): (-[DocumentController webView:locationChangeDone:forDataSource:]): (-[DocumentController webView:didFailProvisionalLoadWithError:forFrame:]): (-[DocumentController webView:didFinishLoadForFrame:]): (-[DocumentController webView:didFailLoadWithError:forFrame:]):
  • PictureBrowser/Document.m: (-[Document webView:didStartProvisionalLoadForFrame:]): (-[Document webView:locationChangeDone:forDataSource:]): (-[Document webView:didFailProvisionalLoadWithError:forFrame:]): (-[Document webView:didFinishLoadForFrame:]): (-[Document webView:didFailLoadWithError:forFrame:]):
  • SimpleViewer/DocumentController.m: (-[DocumentController webView:didStartProvisionalLoadForFrame:]): (-[DocumentController webView:didReceiveTitle:forFrame:]): (-[DocumentController webView:didFailProvisionalLoadWithError:forFrame:]): (-[DocumentController webView:didFinishLoadForFrame:]): (-[DocumentController webView:didFailLoadWithError:forFrame:]):
  • SnippetEditor/SnippetController.m: (-[SnippetController updateFromURL:]): (-[SnippetController webView:didReceiveTitle:forFrame:]): (-[SnippetController webView:didFailProvisionalLoadWithError:forFrame:]): (-[SnippetController webView:didFinishLoadForFrame:]): (-[SnippetController webView:didFailLoadWithError:forFrame:]):

WebKit:

Turned WebLocationChangeDelegate into WebFrameLoadDelegate. Renamed WebFrameLoadDelegate all methods to pass a frame instead of the data source.

Reviewed by rjw.

  • English.lproj/Localizable.strings:
  • Misc.subproj/WebKit.h:
  • Misc.subproj/WebKitErrors.h:
  • Misc.subproj/WebKitErrors.m: (registerErrors):
  • WebCoreSupport.subproj/WebBridge.m:
  • WebKit.pbproj/project.pbxproj:
  • WebView.subproj/WebDataSourcePrivate.m: (-[WebDataSource _startLoading:]): (-[WebDataSource _setTitle:]): (-[WebDataSource _setRequest:]): (-[WebDataSource _updateIconDatabaseWithURL:]):
  • WebView.subproj/WebDefaultFrameLoadDelegate.h: Added.
  • WebView.subproj/WebDefaultFrameLoadDelegate.m: Added. (+[WebDefaultFrameLoadDelegate sharedFrameLoadDelegate]): (-[WebDefaultFrameLoadDelegate webView:didStartProvisionalLoadForFrame:]): (-[WebDefaultFrameLoadDelegate webView:didReceiveServerRedirectForProvisionalLoadForFrame:]): (-[WebDefaultFrameLoadDelegate webView:didFailProvisionalLoadWithError:forFrame:]): (-[WebDefaultFrameLoadDelegate webView:didCommitLoadForFrame:]): (-[WebDefaultFrameLoadDelegate webView:didReceiveTitle:forFrame:]): (-[WebDefaultFrameLoadDelegate webView:didReceiveIcon:forFrame:]): (-[WebDefaultFrameLoadDelegate webView:didFinishLoadForFrame:]): (-[WebDefaultFrameLoadDelegate webView:didFailLoadWithError:forFrame:]): (-[WebDefaultFrameLoadDelegate webView:didChangeLocationWithinPageForFrame:]): (-[WebDefaultFrameLoadDelegate webView:willPerformClientRedirectToURL:delay:fireDate:forFrame:]): (-[WebDefaultFrameLoadDelegate webView:didCancelClientRedirectForFrame:]): (-[WebDefaultFrameLoadDelegate webView:willCloseFrame:]):
  • WebView.subproj/WebDefaultLocationChangeDelegate.h: Removed.
  • WebView.subproj/WebDefaultLocationChangeDelegate.m: Removed.
  • WebView.subproj/WebFrame.m:
  • WebView.subproj/WebFrameLoadDelegate.h: Added.
  • WebView.subproj/WebFramePrivate.m: (-[WebFrame _closeOldDataSources]): (-[WebFrame _transitionToCommitted:]): (-[WebFrame _isLoadComplete]): (-[WebFrame _loadItem:withLoadType:]): (-[WebFrame _continueFragmentScrollAfterNavigationPolicy:formState:]): (-[WebFrame _clientRedirectedTo:delay:fireDate:lockHistory:]): (-[WebFrame _clientRedirectCancelled]):
  • WebView.subproj/WebLocationChangeDelegate.h: Removed.
  • WebView.subproj/WebMainResourceClient.m: (-[WebMainResourceClient interruptForPolicyChangeError]):
  • WebView.subproj/WebPolicyDelegate.h:
  • WebView.subproj/WebView.h:
  • WebView.subproj/WebView.m: (-[WebView setFrameLoadDelegate:]): (-[WebView frameLoadDelegate]):
  • WebView.subproj/WebViewPrivate.h:
  • WebView.subproj/WebViewPrivate.m: (-[WebViewPrivate dealloc]): (-[WebView _frameLoadDelegateForwarder]):

WebBrowser:

Turned WebLocationChangeDelegate into WebFrameLoadDelegate. Renamed WebFrameLoadDelegate all methods to pass a frame instead of the data source.

Reviewed by rjw.

  • BrowserNSErrorExtras.m: (-[NSError isPolicyChangeError]):
  • BrowserWebController.m: (-[BrowserWebController initWithDocument:request:frameName:]): (-[BrowserWebController close]):
  • Debug/SnippetController.m: (-[SnippetController load]): (-[SnippetController webView:didFinishLoadForFrame:]): (-[SnippetController webView:didReceiveTitle:forFrame:]):
  • LocationChangeHandler.h:
  • LocationChangeHandler.m: (-[LocationChangeHandler webView:didStartProvisionalLoadForFrame:]): (-[LocationChangeHandler webView:didReceiveServerRedirectForProvisionalLoadForFrame:]): (-[LocationChangeHandler webView:didCommitLoadForFrame:]): (-[LocationChangeHandler webView:didReceiveTitle:forFrame:]): (-[LocationChangeHandler webView:didReceiveIcon:forFrame:]): (-[LocationChangeHandler webView:didFailProvisionalLoadWithError:forFrame:]): (-[LocationChangeHandler webView:didFinishLoadForFrame:]): (-[LocationChangeHandler webView:didFailLoadWithError:forFrame:]): (-[LocationChangeHandler webView:didChangeLocationWithinPageForFrame:]): (-[LocationChangeHandler webView:willPerformClientRedirectToURL:delay:fireDate:forFrame:]): (-[LocationChangeHandler webView:didCancelClientRedirectForFrame:]): (-[LocationChangeHandler webView:willCloseFrame:]):
2:51 PM Changeset in webkit [4188] by darin
  • 5 edits in trunk/JavaScriptCore

Reviewed by Maciej.

  • move from linear probing to double hashing, gives an 0.7% speedup in iBench JavaScript
  • kjs/property_map.h: Remove the hash function.
  • kjs/property_map.cpp: Added statistics for rehashes and removes. Moved from linear probing to double hashing, using the hash modulo (table size minus one) plus one for the probing distance.
  • kjs/ustring.h: Use unsigned instead of int for hash function result.
2:14 PM Changeset in webkit [4187] by hyatt
  • 16 edits
    3 adds in trunk/WebCore

Part two of the overflow patch. This adds the scrollbars and
patches the layers code, but it doesn't yet turn on the
overflow:auto capability.

Reviewed by mjs/gramps

  • ForwardingHeaders/qscrollbar.h: Added.
  • WebCore.pbproj/project.pbxproj:
  • khtml/ecma/kjs_dom.cpp: (DOMNode::getValueProperty): (DOMNode::putValue):
  • khtml/ecma/kjs_dom.h:
  • khtml/ecma/kjs_dom.lut.h:
  • khtml/rendering/render_box.cpp: (RenderBox::contentWidth): (RenderBox::repaintRectangle): (RenderBox::calcAbsoluteHorizontal): (RenderBox::calcAbsoluteVertical): (RenderBox::lowestPosition):
  • khtml/rendering/render_layer.cpp: (RenderScrollMediator::slotValueChanged): (RenderLayer::RenderLayer): (RenderLayer::~RenderLayer): (RenderLayer::updateLayerPosition): (RenderLayer::scrollOffset): (RenderLayer::subtractScrollOffset): (RenderLayer::scrollToOffset): (RenderLayer::updateScrollPositionFromScrollbars): (RenderLayer::setHasHorizontalScrollbar): (RenderLayer::setHasVerticalScrollbar): (RenderLayer::verticalScrollbarWidth): (RenderLayer::horizontalScrollbarHeight): (RenderLayer::moveScrollbarsAside): (RenderLayer::positionScrollbars): (RenderLayer::checkScrollbarsAfterLayout): (RenderLayer::paintScrollbars): (RenderLayer::paint): (RenderLayer::nodeAtPoint):
  • khtml/rendering/render_layer.h:
  • khtml/rendering/render_object.cpp: (RenderObject::clientWidth): (RenderObject::clientHeight): (RenderObject::scrollWidth): (RenderObject::scrollHeight): (RenderObject::nodeAtPoint):
  • khtml/rendering/render_object.h:
  • kwq/KWQKHTMLPart.h:
  • kwq/KWQKHTMLPart.mm: (KWQKHTMLPart::passWidgetMouseDownEventToWidget):
  • kwq/KWQNamespace.h:
  • kwq/KWQScrollBar.h: Added.
  • kwq/KWQScrollBar.mm: Added. (-[KWQScrollBar initWithQScrollBar:]): (-[KWQScrollBar scroll:]): (:m_valueChanged): (QScrollBar::~QScrollBar): (QScrollBar::setValue): (QScrollBar::setSteps): (QScrollBar::setKnobProportion): (QScrollBar::scrollbarHit): (QScrollBar::valueChanged):
  • kwq/KWQSlot.mm: (KWQSlot::KWQSlot): (KWQSlot::call):
1:23 PM Changeset in webkit [4186] by sullivan
  • 2 edits in trunk/WebKit
  • fixed 3240676 -- REGRESSION: Using old Safari then new one erases history

Reviewed by Darin.

  • History.subproj/WebHistoryPrivate.m: (-[WebHistoryPrivate _loadHistoryGuts:URL:error:]): The new code to use a synchronous NSURLConnection to read the property list file did not take into account the two possible formats of the file (NSArray or NSDictionary), so reading old-style history files was completely broken. While in here, I distributed the variable declarations to first use.
Note: See TracTimeline for information about the timeline view.