⚠ Archived content — this site is no longer maintained.   Current WebKit documentation is at docs.webkit.org.

Timeline



Mar 31, 2003:

6:49 PM Changeset in webkit [3983] by trey
  • 9 edits in trunk/WebKit

WebKit:

3212724 - bookmarks and history items have screwed up designated inits

and support code for:
3116315 - autocomplete needs some prioritization magic

The main changes are adding and maintaining a visitCount to the HistoryItem,
cleaning up the init methods of HistoryItem. Also lastVisitedDate is now
set explicitly instead of automatically getting the current date.

Reviewed by John.

  • History.subproj/WebHistory.m: (-[WebHistory addItemForURL:]): Set lastVisitedDate of new item. (-[WebHistory _itemForURLString:]): New helper routine.
  • History.subproj/WebHistoryItem.h: Conform to NSCopying.
  • History.subproj/WebHistoryItem.m: (-[WebHistoryItem init]): Behave like a designated initializer. (-[WebHistoryItem copyWithZone:]): New. (-[WebHistoryItem initWithURL:title:]): Call the designated initializer. (-[WebHistoryItem initWithURL:target:parent:title:]): Call the designated initializer. Don't blindly init lastVisitedDate. (-[WebHistoryItem setLastVisitedDate:]): Update visitCount too. (-[WebHistoryItem visitCount]): New getter. (-[WebHistoryItem setVisitCount:]): New setter. (-[WebHistoryItem _mergeAutoCompleteHints:]): Combine autocomplete info of two items. Used when one item replaces another in the history. (-[WebHistoryItem dictionaryRepresentation]): Write visitCount. (-[WebHistoryItem initFromDictionaryRepresentation:]): Read visitCount.
  • History.subproj/WebHistoryItemPrivate.h:
  • History.subproj/WebHistoryPrivate.h:
  • History.subproj/WebHistoryPrivate.m: (-[WebHistoryPrivate addItem:]): Merge autocomplete date from old item to new. (-[WebHistoryPrivate itemForURLString:]): s/entry/item/ (-[WebHistoryPrivate containsItemForURLString:]): s/entry/item/ (-[WebHistoryPrivate containsURL:]): s/entry/item/ (-[WebHistoryPrivate itemForURL:]): s/entry/item/ (-[WebHistoryPrivate _loadHistoryGuts:]): Skip history items without visitDate.
  • WebView.subproj/WebFramePrivate.m: (-[WebFrame _transitionToCommitted:]): Update last visitTime when we revisit the same URL (since no new history item is created).

WebBrowser:

3116315 - autocomplete needs some prioritization magic
3181925 - editing redundant bookmarks could lead to screwed up autocomplete, likely crash
3212724 - bookmarks and history items have screwed up designated inits
3213092 - REGRESSION: infinite loop on launch if no bookmarks file exists

Reviewed by John.

  • BookmarksController.h:
  • BookmarksController.m: (-[BookmarksController bookmarksFileHasChanged]): Don't return YES if the file doesn't exist - fixes 3213092. (-[BookmarksController savePendingChangesWhenever]): New method to dirty bookmarks file without causing save.
  • BrowserWebBookmarkExtras.m: (-[WebBookmark _goToWithWindowPolicy:]): Set lastVisited date of bookmark. Rearranged code to get rid of embedded return statements.

General idea here is that the _instantRedirectPending is replaced by the
delay of the redirect. I ended up tossing the client code that used this,
but it seems like a useful thing to keep for no cost.

  • BrowserWebController.h:
  • BrowserWebController.m: (-[BrowserWebController initWithDocument:request:frameName:]): Init _redirectDelay. (-[BrowserWebController displayName]): Test _redirectDelay. (-[BrowserWebController setPendingRedirectDelay:]): Set the _redirectDelay instead of just the BOOL. (-[BrowserWebController cancelPendingRedirect]): Clear _redirectDelay. (-[BrowserWebController pendingRedirectDelay]): Return _redirectDelay. (-[BrowserWebController pageLoadingStatusHasChanged]): Test _redirectDelay.
  • LocationChangeHandler.m: (-[LocationChangeHandler webView:locationChangeStartedForDataSource:]): Don't clear redirectDelay yet. Wait for clientRedirectCancelled. (-[LocationChangeHandler webView:locationChangeDone:forDataSource:]): Adopt coding standards. clear redirectDelay (-[LocationChangeHandler webView:willCloseLocationForDataSource:]): Add LOG (-[LocationChangeHandler webView:locationChangedWithinPageForDataSource:]): Add LOG (-[LocationChangeHandler webView:clientWillRedirectTo:delay:fireDate:forFrame:]): Add LOG, set redirectDelay. (-[LocationChangeHandler webView:clientRedirectCancelledForFrame:]): Add LOG, clear redirectDelay.
  • BrowserWindowController.m: (-[BrowserWindowController frameLoadFinished:]): Renamed a variable, noted an existing bug.
  • English.lproj/Localizable.strings:
  • English.lproj/StringsNotToBeLocalized.txt:
  • GlobalHistory.m: (-[GlobalHistory parentOfContentItem:]): Added ASSERT.
  • LoadProgressMonitor.m: (-[LoadProgressMonitor _createProgressEntryWithRequest:dataSource:]): Comment out overly verbose, misfit LOG.

Two things going on here: 1) We changed the Patricia Trie data structure to
hold an array of bookmarks instead of just one with a refcount, to fix problems
when bookmarks were added/deleted. In addition, this also means that when we
have both a HistoryItem and Bookmark added, we prefer the Bookmark instead of
the History item. 2) Added code to pick the selected autocomplete element
based on various heuristics.

  • URLCompletionController.m: (isDeleted): Use deleted flag instead of refCount. (+[URLCompletionController _tree_create]): Set deleted instead of refCount. (_keyStringFromNode): Test deleted flag instead of isKindOf:NSString. This is functionally the same thing, but would make it easier to separate out the data structure into a reusable class someday. (_findPotentialNode): Added ASSERT. (setKeyForNode): New utility routine for setting the key of a node. (deleteKeyForNode): New utility routine for deleting the key of a node. (+[URLCompletionController _tree_addItem:]): Deal with all the cases of adding items and bookmarks in different order. (+[URLCompletionController _tree_deleteItem:]): Deal with all the cases of removing items and bookmarks in different order. (_rawStringFromItem): Handle the array-of-bookmarks case. (+[URLCompletionController _loadDB]): Use GlobalHistory instead of WebHistory so we know the thing will be created if needed. (-[URLCompletionController _queryStringForAbsoluteURL:fullScan:]): This is just code factored from the next method. (-[URLCompletionController _queryStringForString:fullScan:]): Cut out code of above method for factoring. (visitCountForResult): Calc the visit count for a given result. (-[URLCompletionController _indexOfBestMatch:]): Pick the best result. (-[URLCompletionController queryResultsForString:startingMatch:]): Call _indexOfBestMatch instead of just using 0. All other changes here are diff being dumb. (+[URLCompletionController _registerForNotifications]): Use GlobalHistory instead of WebHistory so we know the thing will be created if needed. (-[URLCompletionController _addStatsForURL:]): NOP'ed code.

This is all mostly sorting out the designated inits.

  • WebBookmark.h:
  • WebBookmark.m: (-[WebBookmark initFromDictionaryRepresentation:withGroup:]): Call super like a designated init should.
  • WebBookmarkGroup.h:
  • WebBookmark.h:
  • WebBookmark.m: (-[WebBookmarkLeaf setLastVisitedDate:]): New abstract method. (-[WebBookmarkLeaf lastVisitedDate]): New abstract method.
  • WebBookmarkLeaf.m: (-[WebBookmarkLeaf init]): Call super like a designated init should. (-[WebBookmarkLeaf initWithURLString: title:group:]): Call [self init] like a non-designated init should. (-[WebBookmarkLeaf initFromDictionaryRepresentation:withGroup:]): No need to free wasted entry now that this is a designated init. (-[WebBookmarkLeaf dictionaryRepresentation]): Nil out visitCount, since we don't want this to end up in the bookmarks file. (-[WebBookmarkLeaf copyWithZone:]): Do a real copy of the HistoryItem. (-[WebBookmarkLeaf setLastVisitedDate:]): New setter. (-[WebBookmarkLeaf lastVisitedDate]): New getter.
  • WebBookmarkList.m: (-[WebBookmarkList init]): Call super like a designated init should. (-[WebBookmarkList initWithTitle:group:]): Call [self init] like a non-designated init should. (-[WebBookmarkList initFromDictionaryRepresentation:withGroup:]): Alloc _list, since we are a designated init.
  • WebBookmarkProxy.m: Nuke init method. Now that it is a designated init, it can use the inherited one. (-[WebBookmarkList initWithTitle:group:]): Call [self init] like a non-designated init should.
5:14 PM Changeset in webkit [3982] by darin
  • 7 edits in branches/Safari-70-branch

Bumped versions to 70 and 1.0 Beta 2, regenerated strings files.

5:06 PM Changeset in webkit [3981] by rjw
  • 2 edits in trunk/WebKit

Fixed 3213637. We weren't calling the correct delegate method,
setStatus: instead of webView:setStatus:

Reviewed by darin.

  • Plugins.subproj/WebBaseNetscapePluginView.m: (-[WebBaseNetscapePluginView status:]):
4:51 PM Changeset in webkit [3980] by mjs
  • 6 edits in trunk/WebKit

Reviewed by Chris.

  • fixed 3210813 - REGRESSION: full size stock chart on etrade shows up empty after viewing mini stock chart

I fixed this by adding a "negative cache" of icon URLs that loaded
something but failed to yield an icon. This prevents us from
asking for the site icon over and over, which was messing up the
session cookie.

  • Misc.subproj/WebIconDatabase.m: (-[WebIconDatabase init]): (-[WebIconDatabase iconForURL:withSize:cache:]): (-[WebIconDatabase _updateFileDatabase]): (-[WebIconDatabase _iconsForIconURLString:]): (-[WebIconDatabase _setHaveNoIconForIconURL:]): (-[WebIconDatabase _releaseIconForIconURLString:]):
  • Misc.subproj/WebIconDatabasePrivate.h:
  • Misc.subproj/WebIconLoader.h:
  • Misc.subproj/WebIconLoader.m: (-[WebIconLoader startLoading]): (-[WebIconLoader connectionDidFinishLoading:]):
  • WebView.subproj/WebDataSourcePrivate.m: (-[WebDataSource _iconLoaderReceivedPageIcon:]):
4:39 PM Changeset in webkit [3979] by darin
  • 5 edits in trunk/WebKit
  • English.lproj/InfoPlist.strings: Changed "1.0 Beta" to "1.0 Beta 2".
  • WebKit.pbproj/project.pbxproj: Changed "1.0 Beta" to "1.0 Beta 2".
  • English.lproj/StringsNotToBeLocalized.txt: Updated for recent changes.
  • English.lproj/Localizable.strings: Regenerated (new script, "1.0 Beta 2").
4:38 PM Changeset in webkit [3978] by darin
  • 4 edits in trunk/WebCore
  • English.lproj/InfoPlist.strings: Changed "1.0 Beta" to "1.0 Beta 2".
  • WebCore.pbproj/project.pbxproj: Changed "1.0 Beta" to "1.0 Beta 2".
4:37 PM Changeset in webkit [3977] by darin
  • 4 edits in trunk/JavaScriptCore
  • English.lproj/InfoPlist.strings: Changed "1.0 Beta" to "1.0 Beta 2".
  • JavaScriptCore.pbproj/project.pbxproj: Changed "1.0 Beta" to "1.0 Beta 2".
2:46 PM Changeset in webkit [3976] by hyatt
  • 4 edits in trunk/WebCore

Fixes for 3211862 and 3212750, add error-handling cases for
property values to the CSS parser so the whole sheet doesn't
get rejected.

Reviewed by darin

  • khtml/css/parser.cpp:
  • khtml/css/parser.y:
2:36 PM Changeset in webkit [3975] by rjw
  • 6 edits in trunk/WebKit

WebKit:

Reviewed by darin.

  • History.subproj/WebHistory.h: Added use of WebHistoryItemsKey instead of @"Entries".
  • History.subproj/WebHistory.m:(-[WebHistory _sendNotification:entries:]): Use WebHistoryItemsKey as key instead of @"Entries".
  • History.subproj/WebHistoryItem.m: (-[WebHistoryItem init]): Fix double allocation of WebHistoryPrivate.
  • WebKit/WebKit.exp Added export for WebHistoryItemsKey
  • WebKit/API-Issues.rtf Notes.

WebBrowser:

Use WebHistoryItemsKey as key instead of @"Entries".

Reviewed by darin.

  • URLCompletionController.m: (+[URLCompletionController _historyAdded:]): (+[URLCompletionController _historyRemoved:]):
2:31 PM Changeset in webkit [3974] by darin
  • 3 edits in trunk/WebCore

Reviewed by Chris.

  • fixed 3213093 -- REGRESSION: crash accessing menu items right after launch with about:blank as homepage
  • khtml/khtmlview.cpp: (KHTMLView::viewportMouseMoveEvent): Another place needed a check for null.
1:44 PM Changeset in webkit [3973] by hyatt
  • 3 edits in trunk/WebCore

Fix for 3211849. I accidentally removed a BORDER_COLOR case
from the switch when I removed the transparency check for
the shorthand. The case originally fell through to the case
below it, so a straight removal was wrong. I needed to add
it to the following set of case labels.

Reviewed by darin

  • khtml/css/cssstyleselector.cpp:
1:42 PM Changeset in webkit [3972] by darin
  • 3 edits in trunk/WebKit

WebKit:

Reviewed by Chris.

  • improved default behaviors in window operations delegate
  • WebView.subproj/WebDefaultWindowOperationsDelegate.m: (-[WebDefaultWindowOperationsDelegate webViewShowWindowBehindFrontmost:]): Removed unused method. (-[WebDefaultWindowOperationsDelegate webViewCloseWindow:]): Added default implementation, calls close on window. (-[WebDefaultWindowOperationsDelegate webViewFocusWindow:]): Added default implementation, makeKeyAndOrderFront. (-[WebDefaultWindowOperationsDelegate webViewUnfocusWindow:]): Added default implementation, uses _cycleWindowsReversed as needed. (-[WebDefaultWindowOperationsDelegate webViewFirstResponderInWindow:]): Added default implementation, calls firstResponder. (-[WebDefaultWindowOperationsDelegate webView:makeFirstResponderInWindow:]): Added default implementation, calls makeFirstResponder. (-[WebDefaultWindowOperationsDelegate webViewIsResizable:]): Added default implementation, calls showsResizeIndicator. (-[WebDefaultWindowOperationsDelegate webView:setResizable:]): Added default implementation, calls setShowsResizeIndicator. (-[WebDefaultWindowOperationsDelegate webView:setFrame:]): Use display:YES, not display:NO. (-[WebDefaultWindowOperationsDelegate webViewFrame:]): Return NSZeroRect if window is nil instead of random garbage. (-[WebDefaultWindowOperationsDelegate webView:setContentRect:]): Use display:YES, not display:NO. (-[WebDefaultWindowOperationsDelegate webViewContentRect:]): Return NSZeroRect if window is nil instead of random garbage. (-[WebDefaultWindowOperationsDelegate webView: runJavaScriptAlertPanelWithMessage:]): Added a FIXME because we should have a default implementation here. (-[WebDefaultWindowOperationsDelegate webView:runJavaScriptConfirmPanelWithMessage:]): Ditto. (-[WebDefaultWindowOperationsDelegate webView:runJavaScriptTextInputPanelWithPrompt:defaultText:]): Put a default implementation here. (-[WebDefaultWindowOperationsDelegate webView:runOpenPanelForFileButtonWithResultListener:]): Added a FIXME because we should have a default implementation here.

WebBrowser:

Reviewed by Chris.

  • fixed 3213389 -- last tab can be left showing a close button (then you get assertion/badness if you close it)
  • BrowserWindowController.m: (-[BrowserWindowController closeTab:]): Be sure to turn off the close buttons even if the tab bar is invisible at the moment you close a tab (noticed by inspection, not the bug). (-[BrowserWindowController closeOtherTabs:]): Turn off the close buttons (this was the bug).
  • fixed 3213569 -- non-frontmost tabs can grab focus, causing crash later on
  • BrowserWebController.h: Remove "window" method.
  • BrowserWebController.m: (-[BrowserWebController initWithDocument:request:frameName:]): Use the window controller's window so this works even for the non-frontmost tab. (-[BrowserWebController webViewShowWindowBehindFrontmost:]): Removed. Was eliminated from WebKit API, so unused. (-[BrowserWebController webViewUnfocusWindow:]): Removed. The WebKit default implementation now handles this fine. (-[BrowserWebController webViewIsResizable:]): Removed. The WebKit default implementation now handles this fine. (-[BrowserWebController webView:setResizable:]): Removed. The WebKit default implementation now handles this fine. (-[BrowserWebController window]): Removed. We don't want to override -[NSView window]. This fixed the bug. Had to visit all the various places window was called to make sure it was OK not to return the host window in the case of an inactive tab. (-[BrowserWebController webView:setFrame:]): Don't do anything for the case of the non-frontmost tab. (-[BrowserWebController webViewFrame:]): Use the window controller's window so this works even for the non-frontmost tab. (-[BrowserWebController webView:setContentRect:]): Don't do anything for the case of the non-frontmost tab. (-[BrowserWebController webViewContentRect:]): Use the window controller's window so this works even for the non-frontmost tab. (-[BrowserWebController webView:runJavaScriptAlertPanelWithMessage:]): Select the tab before putting up the panel. (-[BrowserWebController webView:runJavaScriptConfirmPanelWithMessage:]): Ditto. (-[BrowserWebController webView:runJavaScriptTextInputPanelWithPrompt:defaultText:]): Ditto.
11:56 AM Changeset in webkit [3971] by hyatt
  • 4 edits in trunk/WebCore

First-letter can be floated. Make sure we mutate the display
to BLOCK so that we don't make an inline when we're floating.
Fixes bug 3186004.

Reviewed by darin

  • khtml/rendering/render_block.cpp:
11:35 AM Changeset in webkit [3970] by cblu
  • 16 edits in trunk/WebKit

Fixed: 3178058 - Plug-ins are stopped/reloaded when switching tabs
Made the "Enable plug-ins" preference toggle in real-time again.

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.

Reviewed by darin.

  • Plugins.subproj/WebBaseNetscapePluginView.h:
  • Plugins.subproj/WebBaseNetscapePluginView.m: (-[WebBaseNetscapePluginView saveAndSetPortStateForUpdate:]): use the current window, clip out the plug-in when not in an actual window (-[WebBaseNetscapePluginView restorePortState:]): use the current window (-[WebBaseNetscapePluginView sendEvent:]): added asserts (-[WebBaseNetscapePluginView sendActivateEvent:]): tweak (-[WebBaseNetscapePluginView sendNullEvent]): tweak (-[WebBaseNetscapePluginView restartNullEvents]): tweak (-[WebBaseNetscapePluginView isInResponderChain]): tweak (-[WebBaseNetscapePluginView performKeyEquivalent:]): tweak (-[WebBaseNetscapePluginView canStart]): new, implemented by subclasses (-[WebBaseNetscapePluginView didStart]): new, implemented by subclasses (-[WebBaseNetscapePluginView addWindowObservers]): new (-[WebBaseNetscapePluginView removeWindowObservers]): new (-[WebBaseNetscapePluginView start]): check pref, call canStart, addWindowObservers and didStart (-[WebBaseNetscapePluginView stop]): call removeWindowObservers (-[WebBaseNetscapePluginView currentWindow]): new, returns the actual window else the host window (-[WebBaseNetscapePluginView initWithFrame:]): observer pref change notifications (-[WebBaseNetscapePluginView dealloc]): call removeObserver (-[WebBaseNetscapePluginView viewWillMoveToWindow:]): stop if there is no host window (-[WebBaseNetscapePluginView viewDidMoveToWindow]): start if we moved to a window (-[WebBaseNetscapePluginView viewWillMoveToHostWindow:]): stop if there will be no windows (-[WebBaseNetscapePluginView viewDidMoveToHostWindow]): start if there is a window (-[WebBaseNetscapePluginView preferencesHaveChanged:]): renamed, start or stop (-[WebBaseNetscapePluginView destroyStream:reason:]): tweak (-[NSData _web_locationAfterFirstBlankLine]): tweak
  • Plugins.subproj/WebNetscapePluginDocumentView.m: (-[WebNetscapePluginDocumentView initWithFrame:]): call setAutoresizingMask here (-[WebNetscapePluginDocumentView canStart]): new, return YES if there is a data source (-[WebNetscapePluginDocumentView didStart]): redeliver the stream if there is any data (-[WebNetscapePluginDocumentView setDataSource:]): start if there is a current window (-[WebNetscapePluginDocumentView layout]): no need to call setWindow, this is done in the superclass (-[WebNetscapePluginDocumentView viewWillMoveToHostWindow:]): forward to super to make compiler happy (-[WebNetscapePluginDocumentView viewDidMoveToHostWindow]): forward to super to make compiler happy
  • Plugins.subproj/WebNetscapePluginEmbeddedView.m: (-[WebNetscapePluginEmbeddedView didStart]): start the load (-[WebNetscapePluginEmbeddedView dataSource]): tweak
  • WebView.subproj/WebDocument.h: added viewWillMoveToHostWindow: and viewDidMoveToHostWindow
  • WebView.subproj/WebFramePrivate.h:
  • WebView.subproj/WebFramePrivate.m: (-[WebFrame _viewWillMoveToHostWindow:]): forward to document view and subframes (-[WebFrame _viewDidMoveToHostWindow]): forward to document view and subframes
  • WebView.subproj/WebHTMLView.m: (-[WebHTMLView viewWillMoveToHostWindow:]): forward to plug-in views (-[WebHTMLView viewDidMoveToHostWindow]): forward to plug-in views (-[NSArray _web_makePluginViewsPerformSelector:withObject:]): new
  • WebView.subproj/WebHTMLViewPrivate.m: (-[WebHTMLView _reset]): don't stop plug-ins here. WebBaseNetscapePluginView can handle that
  • WebView.subproj/WebImageView.m: (-[WebImageView viewWillMoveToHostWindow:]): implement new WebDocumentView methods (-[WebImageView viewDidMoveToHostWindow]): implement new WebDocumentView methods
  • WebView.subproj/WebTextView.m: (-[WebTextView viewWillMoveToHostWindow:]): implement new WebDocumentView methods (-[WebTextView viewDidMoveToHostWindow]): implement new WebDocumentView methods
  • WebView.subproj/WebView.h:
  • WebView.subproj/WebView.m: (-[WebView setHostWindow:]): new (-[WebView hostWindow]): new
  • WebView.subproj/WebViewPrivate.h:
  • WebView.subproj/WebViewPrivate.m: (-[WebViewPrivate dealloc]): release the host window
10:44 AM Changeset in webkit [3969] by darin
  • 2 edits in trunk/WebKit

WebKit:

Reviewed by John.

  • WebCoreSupport.subproj/WebBridge.m: (-[WebBridge nextKeyViewOutsideWebFrameViews]): Get next key view from WebView, only using the top level WebFrameView if the WebView doesn't have one set (for compatibility in case some of our current WebKit clients are using this). (-[WebBridge previousKeyViewOutsideWebFrameViews]): Ditto.

WebBrowser:

Reviewed by John.

  • fixed 3213095 -- REGRESSION: can't clear History; selector removeAllEntries not recognized
  • GlobalHistory.m: (-[GlobalHistory appendClearHistoryItemToMenuWithEnabledState:]): Use the new name, removeAllItems, instead of the old name removeAllEntries.
  • use the WebView for the keyboard loop rather than going at the WebFrameView explicitly
  • BrowserWindowController.m: (-[BrowserWindowController updateKeyboardLoop]): Just use WebView instead of digging in for the WebFrameView.
10:29 AM Changeset in webkit [3968] by darin
  • 4 edits in trunk/WebKit

Reviewed by John.

  • fixed 3211730 -- REGRESSION: Flash spawns blank page then loads new page inside banner itself
  • Plugins.subproj/WebBaseNetscapePluginView.m: (-[WebBaseNetscapePluginView loadPluginRequest:]): Load the request in the frame we found or created, not always in our own frame (oops!).
  • other changes
  • History.subproj/WebHistory.h: Update comments to all say "Item" instead of "Entry". They didn't match the method names any more.
  • WebView.subproj/WebView.m: (-[WebView acceptsFirstResponder]): Return YES. (-[WebView becomeFirstResponder]): Pass first responder on to the WebFrameView in the same way the WebFrameView passes it on to the document view.
10:23 AM Changeset in webkit [3967] by darin
  • 5 edits in trunk/WebCore

Reviewed by John.

  • fixed 3213093 -- accessing menu items immediately after launch causes crash when about:blank is homepage
  • khtml/khtmlview.cpp: (isSubmitImage): Add check for node of 0.
  • fixed 3211461 -- crash in KWQListIteratorImpl tabbing through w3c test page
  • kwq/KWQKHTMLPart.h: Added childFrameForPart function, better than KHTMLPart::frame because it works for HTML frames inside objects as well as plain old HTML frames.
  • kwq/KWQKHTMLPart.mm: (KWQKHTMLPart::childFrameForPart): Like KHTMLPart::frame, but looks through m_objects too. (KWQKHTMLPart::nextKeyViewInFrameHierarchy): Use childFrameForPart instead of frame function.

Mar 30, 2003:

7:36 PM Changeset in webkit [3966] by mjs
  • 4 edits in trunk/WebKit

Reviewed by Darin.

  • fixed 3204257 - CNN's 'war on iraq' ticker stops on mouseover
  • WebView.subproj/WebHTMLViewPrivate.h:
  • WebView.subproj/WebHTMLViewPrivate.m: (-[WebHTMLView _updateMouseoverWithEvent:]): When leaving an HTML view, tell it that the mouse moved outside everything in the view, even accounting for scrolled off portions (otherwise khtml gets confused). This makes cross-frame mouse enter/leave work properly. (-[WebHTMLView _clearLastHitViewIfSelf]): Method to clear last hit view, so we don't need to retain it.
  • WebView.subproj/WebHTMLView.m: (-[WebHTMLView dealloc]): Call _clearLastHitViewIfSelf.
6:53 PM Changeset in webkit [3965] by mjs
  • 5 edits in trunk/WebCore

Reviewed by Darin.

  • fixed 3206524 - incyte.com "load properties" function does not work
  • khtml/html/html_documentimpl.cpp: (HTMLDocumentImpl::close): Make sure to clear the tokenizer before firing the onLoad handler, otherwise document.write from inside an onLoad handler will fail.
  • khtml/xml/dom_docimpl.h:
  • khtml/xml/dom_docimpl.cpp: (DocumentImpl::close): Call closeInternal. (DocumentImpl::closeInternal): New version of close that allows bypassing the tokenizer null check, in case we already deleted the tokenizer/
12:10 AM Changeset in webkit [3964] by mjs
  • 3 edits in trunk/WebCore

Reviewed by Trey.

  • fixed 3169064 - can't search at lonelyplanet.com; onSubmit handler fails due to problem addressing radio button
  • khtml/ecma/kjs_dom.cpp: (DOMNamedNodesCollection::tryGet): Allow lookup by id as well as by integer index.

Mar 29, 2003:

11:22 PM Changeset in webkit [3963] by mjs
  • 3 edits in trunk/WebCore

Reviewed by Trey.

  • fixed 3138427 - new window opened by javascript is too small for popcap.com game
  • khtml/ecma/kjs_window.cpp: (WindowFunc::tryCall): Be a bit more tolerant of misformatted attribute strings.
11:20 PM Changeset in webkit [3962] by mjs
  • 3 edits in trunk/WebCore

Reviewed by Trey.

  • fixed 3180786 - Can't log in to the LL Bean Web site

The problem on this site was misnested tags, leading to two FORM
elements that were nested. Both their onSubmit handlers fired, and
the outer one returned false. The fix was to avoid bubbling submit
events, since this can never be useful in a valid document and
because that is what other browsers seem to do, and what Win IE
documents.

  • khtml/html/html_formimpl.cpp: (HTMLFormElementImpl::prepareSubmit): Don't allow the submit event to bubble.
4:46 PM Changeset in webkit [3961] by mjs
  • 2 edits in trunk/WebCore

Corrected reviewer in ChangeLog.

4:46 PM Changeset in webkit [3960] by mjs
  • 3 edits in trunk/WebCore

Reviewed by Ken.

  • improved on Darin's fix for 3211289 - REGRESSION: nil-deref in bridgeForWidget
  • kwq/KWQKHTMLPart.mm: (KWQKHTMLPart::bridgeForWidget): Special-case KHTMLView - this is the only kind of widget in the program that's not a form control (so nodeForWidget would return nil for it).

Mar 28, 2003:

3:14 PM Changeset in webkit [3959] by rjw
  • 3 edits in trunk/WebKit

WebKit:

Fix typo in comments that broke headerdoc.

Reviewed by me.

  • WebView.subproj/WebWindowOperationsDelegate.h:

Tests:

Fixed Carbon compile problems in example app.

Reviewed by me.

  • Carbon/CarbonWeb/CarbonWeb.h:
  • Carbon/CarbonWeb/MyWebResourceLoadAdapter.m: (-[MyWebResourceLoadAdapter webView:pluginFailedWithError:dataSource:]):
  • Carbon/CarbonWeb/THistoryMenu.cp:
  • Carbon/CarbonWeb/TWebWindow.cp:
  • Carbon/CarbonWeb/main.c: (main):
2:05 PM Changeset in webkit [3958] by hyatt
  • 3 edits in trunk/WebCore

Fix a regression caused by my addition of nearestFloatBottom
to the code. I needed to make that a loop rather than just call
it once, since the nearestFloatBottom could be a bad position
for the next line.

This fixes the overlapping text problem at CNN: 3186593.

Reviewed by john

  • khtml/rendering/bidi.cpp:
12:09 PM Changeset in webkit [3957] by darin
  • 6 edits in trunk/WebCore

Reviewed by Ken.

  • fixed 3191163 -- hang in QPtrListIterator at www.phiffer.com
  • fixed 3183520 -- XML page has no vertical scrollbar

The hang was due to an exponential algorithm in lowest/rightmostPosition.
Fixed by making some simplifications to these functions, used only to determine the size
of the entire web page. While doing that I cleared some things up that made the XML
scroll bar problem go away too.

Note that www.phiffer.com still does not render right.

  • khtml/rendering/render_block.cpp: (RenderBlock::lowestPosition): Since this is always called on the whole tree, don't worry about which parent deals with which child. Just make sure that every object is visited exactly once. (RenderBlock::rightmostPosition): Ditto.
  • khtml/rendering/render_html.cpp: (RenderHtml::layout): Use the result from calling lowestPosition on the root, since some floating/positioned objects hang off there, rather than here. This seems consistent with the long term approach of doing more work in the root and less in RenderHtml, since XML documents don't have a RenderHtml.
  • khtml/rendering/render_root.cpp: (RenderRoot::docHeight): Call lowestPosition() on self rather than on children. Now that I understand the method, it's clear this is the correct way to do things. (RenderRoot::docWidth): Ditto, but rightmostPosition().
  • fixed 3211289 -- REGRESSION: nil-deref in bridgeForWidget

Maciej may have some ideas about how to fix this even better, but this
is better than just rolling his change out.

  • kwq/KWQKHTMLPart.mm: (KWQKHTMLPart::nextKeyViewForWidget): Added an assertion. (KWQKHTMLPart::bridgeForWidget): Handle case where node is 0 by returning 0. (KWQKHTMLPart::partForNode): Added an assertion. (KWQKHTMLPart::nodeForWidget): Handle case where eventFilterObject is 0 by returning 0. (KWQKHTMLPart::setDocumentFocus): Quietly do nothing if the node is 0. (KWQKHTMLPart::clearDocumentFocus): Quietly do nothing if the node is 0.
11:47 AM Changeset in webkit [3956] by kocienda
  • 5 edits in trunk/WebKit

WebFoundation:

Reviewed by John

Made SPI out of NSURLConnection code that did not make the API cut.

Removed timeout interval code from NSURLConnection. This is now
a per-request value.

SPI added to NSURLRequest to modify the default per-request
timeout interval.

  • CacheLoader.subproj/NSURLConnection.h:
  • CacheLoader.subproj/NSURLConnection.m: (+[NSURLConnection resourceLoaderRunLoop]): (-[NSURLConnection setDefersCallbacks:]): (-[NSURLConnection defersCallbacks]): (-[NSURLConnection _checkIfTimedOut]):
  • CacheLoader.subproj/NSURLConnectionPrivate.h:
  • CacheLoader.subproj/NSURLRequest.m: (-[NSURLRequest initWithURL:]): (-[NSURLRequest timeoutInterval]): (+[NSURLRequest setDefaultTimeoutInterval:]): (+[NSURLRequest defaultTimeoutInterval]):
  • CacheLoader.subproj/NSURLRequestPrivate.h:
  • CookieManager.subproj/WebCookieManager.m:
  • ProtocolHandlers.subproj/WebFTPProtocol.m:
  • ProtocolHandlers.subproj/WebSSLProxyWrapperStream.m:
  • ProtocolHandlers.subproj/WebSimpleHTTPProtocol.m:

WebKit:

Reviewed by John

Imports NSURLConnection private header to access NSURLConnection code
that did not make the API cut.

  • WebView.subproj/WebBaseResourceHandleDelegate.m:
  • WebView.subproj/WebMainResourceClient.m:

WebBrowser:

Reviewed by John

There is now a per-request timeout for NSURLRequest instead
of one default on the NSURLConnection class. Error string
code updated to account for this.

PageLoadTestRunner now uses SPI added to NSURLRequest to
modify the default timeout interval.

  • LocationChangeError.m: (-[LocationChangeHandler specializedMessageForError:]):
  • Test/PageLoadTestRunner.m: (-[PageLoadTestRunner startTest]): (-[PageLoadTestRunner stop]):
10:42 AM Changeset in webkit [3955] by kocienda
  • 5 edits in trunk/WebKit

WebFoundation:

Reviewed by Trey

NSURLConnection class method changed name:

canInitWithRequest: -> canHandleRequest:

Moved to API-approved model for synchronous loads.
Removed some files made obsolete by this change.

  • CacheLoader.subproj/NSURLConnection.h:
  • CacheLoader.subproj/NSURLConnection.m: (+[NSURLConnection canHandleRequest:]):
  • CacheLoader.subproj/WebSynchronousDelegate.h:
  • CacheLoader.subproj/WebSynchronousDelegate.m: (-[WebSynchronousDelegate run:]): (-[WebSynchronousDelegate resourceData]):
  • CacheLoader.subproj/WebSynchronousResult.h: Removed.
  • CacheLoader.subproj/WebSynchronousResult.m: Removed.
  • CacheLoader.subproj/WebSynchronousResultPrivate.h: Removed.
  • ChangeLog:
  • Misc.subproj/WebFoundation.h:
  • WebFoundation.exp:
  • WebFoundation.pbproj/project.pbxproj:

WebKit:

Reviewed by Trey

NSURLConnection class method changed name:

canInitWithRequest: -> canHandleRequest:

Moved to API-approved model for synchronous loads.
Removed fixme I put in yesterday having to do with
reposting form data. The feature is fully functional
again.

  • Plugins.subproj/WebNetscapePluginStream.m: (-[WebNetscapePluginStream initWithRequest:pluginPointer:notifyData:]):
  • WebView.subproj/WebDefaultContextMenuDelegate.m: (-[WebDefaultContextMenuDelegate webView:contextMenuItemsForElement:defaultMenuItems:]):
  • WebView.subproj/WebDefaultPolicyDelegate.m: (-[WebDefaultPolicyDelegate webView:decideNavigationPolicyForAction:andRequest:inFrame:decisionListener:]):
  • WebView.subproj/WebFramePrivate.m: (-[WebFrame _loadItem:fromItem:withLoadType:]): (-[WebFrame _continueAfterNavigationPolicy:]):

WebBrowser:

Reviewed by Trey

NSURLConnection class method changed name:

canInitWithRequest: -> canHandleRequest:

  • BrowserWebController.m: (-[BrowserWebController decidePolicyForAction:andRequest:inFrame:newFrameName:decisionListener:]):
  • ContextMenuHandler.m: (-[ContextMenuHandler webView:contextMenuItemsForElement:defaultMenuItems:]):
9:28 AM Changeset in webkit [3954] by kocienda
  • 12 edits in trunk/WebKit

WebFoundation:

Reviewed by Darin

Cosmetic change. Instances of 'resource' as a local variable
name have been changed to 'connection'. Some other changes
related to this cosmetic cleanup were done as well.

Also updated some comments.

  • CacheLoader.subproj/NSURLConnection.h:
  • CacheLoader.subproj/NSURLConnection.m: (-[NSURLConnection initWithRequest:]): (+[NSURLConnection sendSynchronousRequest:]): (+[NSURLConnection _forceSingleLoad]): (-[NSURLConnection _postCallback:]): (-[NSURLConnectionInternal redirectedToRequest:permanent:]): (-[NSURLConnectionInternal responseAvailable:]): (-[NSURLConnectionInternal didLoadBytes:length:]): (-[NSURLConnectionInternal invalidateCacheObject]): (-[NSURLConnectionInternal finishedLoading]): (-[NSURLConnectionInternal failedWithError:]):
  • CacheLoader.subproj/NSURLConnectionQueue.h:
  • CacheLoader.subproj/NSURLConnectionQueue.m: (-[NSURLConnectionQueue put:URL:]):
  • CacheLoader.subproj/WebSynchronousDelegate.h:
  • CacheLoader.subproj/WebSynchronousDelegate.m: (-[WebSynchronousDelegate dealloc]): (-[WebSynchronousDelegate run:]): (-[WebSynchronousDelegate connection]):

WebKit:

Reviewed by Darin

Cosmetic change. Instances of 'resource' as a local variable
name have been changed to 'connection'. Some other changes
related to this cosmetic cleanup were done as well.

As part of this change, I needed to change some 'connection'
method arguments to 'con' to avoid the name conflict now
that instance variables are named .connection'.

  • Downloads.subproj/WebDownload.m: (-[WebDownloadPrivate dealloc]): (-[WebDownload initWithRequest:]): (-[WebDownload _initWithLoadingResource:request:response:delegate:proxy:]): (+[WebDownload _downloadWithLoadingResource:request:response:delegate:proxy:]): (-[WebDownload loadWithDelegate:]): (-[WebDownload _downloadEnded]): (-[WebDownload _cancelWithError:]):
  • Downloads.subproj/WebDownloadPrivate.h:
  • Plugins.subproj/WebNetscapePluginStream.m: (-[WebNetscapePluginStream connection:didReceiveResponse:]): (-[WebNetscapePluginStream connection:didReceiveData:]): (-[WebNetscapePluginStream connectionDidFinishLoading:]): (-[WebNetscapePluginStream connection:didFailLoadingWithError:]):
  • WebCoreSupport.subproj/WebSubresourceClient.m: (-[WebSubresourceClient connection:willSendRequest:redirectResponse:]): (-[WebSubresourceClient connection:didReceiveResponse:]): (-[WebSubresourceClient connection:didReceiveData:]): (-[WebSubresourceClient connectionDidFinishLoading:]): (-[WebSubresourceClient connection:didFailLoadingWithError:]):
  • WebView.subproj/WebBaseResourceHandleDelegate.h:
  • WebView.subproj/WebBaseResourceHandleDelegate.m: (-[WebBaseResourceHandleDelegate _releaseResources]): (-[WebBaseResourceHandleDelegate startLoading:]): (-[WebBaseResourceHandleDelegate loadWithRequest:]): (-[WebBaseResourceHandleDelegate setDefersCallbacks:]): (-[WebBaseResourceHandleDelegate connection:willSendRequest:redirectResponse:]): (-[WebBaseResourceHandleDelegate connection:didReceiveResponse:]): (-[WebBaseResourceHandleDelegate connection:didReceiveData:]): (-[WebBaseResourceHandleDelegate connectionDidFinishLoading:]): (-[WebBaseResourceHandleDelegate connection:didFailLoadingWithError:]): (-[WebBaseResourceHandleDelegate cancelWithError:]):
  • WebView.subproj/WebMainResourceClient.m: (-[WebMainResourceClient receivedError:]): (-[WebMainResourceClient cancelWithError:]): (-[WebMainResourceClient connection:willSendRequest:redirectResponse:]): (-[WebMainResourceClient continueAfterContentPolicy:response:]): (-[WebMainResourceClient connection:didReceiveResponse:]): (-[WebMainResourceClient connection:didReceiveData:]): (-[WebMainResourceClient connectionDidFinishLoading:]): (-[WebMainResourceClient connection:didFailLoadingWithError:]): (-[WebMainResourceClient startLoading:]):
8:28 AM Changeset in webkit [3953] by kocienda
  • 14 edits in trunk/WebKit

Tests:

Reviewed by Darin

Changed names for URL connection callback methods to
use the API-approved names. No functional changes.

  • PDFBundle/PDFView.m: (-[PDFResourceDelegate connection:willSendRequest:redirectResponse:]): (-[PDFResourceDelegate connection:didReceiveResponse:]): (-[PDFResourceDelegate connection:didReceiveData:]): (-[PDFResourceDelegate connectionDidFinishLoading:]): (-[PDFResourceDelegate connection:didFailLoadingWithError:]):

WebFoundation:

Reviewed by Darin

Changed names for URL connection callback methods to
use the API-approved names. No functional changes.

  • CacheLoader.subproj/NSURLConnection.h:
  • CacheLoader.subproj/NSURLConnection.m: (-[NSURLConnection _sendWillSendRequestCallback]): (-[NSURLConnection _sendDidReceiveResponseCallback]): (-[NSURLConnection _sendDidReceiveDataCallback]): (-[NSURLConnection _sendDidFailLoadingCallback]): (-[NSURLConnection _sendDidFinishLoadingCallback]):
  • CacheLoader.subproj/WebSynchronousDelegate.m: (-[WebSynchronousDelegate connection:willSendRequest:redirectResponse:]): (-[WebSynchronousDelegate connectionDidFinishLoading:]): (-[WebSynchronousDelegate connection:didReceiveResponse:]): (-[WebSynchronousDelegate connection:didReceiveData:]):

WebKit:

Reviewed by Darin

Changed names for URL connection callback methods to
use the API-approved names. No functional changes.

  • Downloads.subproj/WebDownload.h:
  • Downloads.subproj/WebDownload.m: (-[WebDownload _initWithLoadingResource:request:response:delegate:proxy:]): (-[WebDownload connection:willSendRequest:redirectResponse:]): (-[WebDownload connection:didReceiveResponse:]): (-[WebDownload connection:didReceiveData:]): (-[WebDownload connectionDidFinishLoading:]): (-[WebDownload connection:didFailLoadingWithError:]):
  • Misc.subproj/WebIconLoader.m: (-[WebIconLoader connectionDidFinishLoading:]): (-[WebIconLoader connection:willSendRequest:redirectResponse:]): (-[WebIconLoader connection:didReceiveResponse:]): (-[WebIconLoader connection:didReceiveData:]): (-[WebIconLoader connection:didFailLoadingWithError:]):
  • Plugins.subproj/WebNetscapePluginStream.m: (-[WebNetscapePluginStream connection:didReceiveResponse:]): (-[WebNetscapePluginStream connection:didReceiveData:]): (-[WebNetscapePluginStream connectionDidFinishLoading:]): (-[WebNetscapePluginStream connection:didFailLoadingWithError:]):
  • WebCoreSupport.subproj/WebBridge.m: (-[WebBridge objectLoadedFromCacheWithURL:response:size:]):
  • WebCoreSupport.subproj/WebSubresourceClient.m: (-[WebSubresourceClient connection:willSendRequest:redirectResponse:]): (-[WebSubresourceClient connection:didReceiveResponse:]): (-[WebSubresourceClient connection:didReceiveData:]): (-[WebSubresourceClient connectionDidFinishLoading:]): (-[WebSubresourceClient connection:didFailLoadingWithError:]):
  • WebView.subproj/WebBaseResourceHandleDelegate.m: (-[WebBaseResourceHandleDelegate connection:willSendRequest:redirectResponse:]): (-[WebBaseResourceHandleDelegate connection:didReceiveResponse:]): (-[WebBaseResourceHandleDelegate connection:didReceiveData:]): (-[WebBaseResourceHandleDelegate connectionDidFinishLoading:]): (-[WebBaseResourceHandleDelegate connection:didFailLoadingWithError:]):
  • WebView.subproj/WebDefaultResourceLoadDelegate.m: (-[WebDefaultResourceLoadDelegate webView:resource:willSendRequest:redirectResponse:fromDataSource:]):
  • WebView.subproj/WebMainResourceClient.m: (-[WebMainResourceClient receivedError:]): (-[WebMainResourceClient connection:willSendRequest:redirectResponse:]): (-[WebMainResourceClient continueAfterContentPolicy:response:]): (-[WebMainResourceClient connection:didReceiveResponse:]): (-[WebMainResourceClient connection:didReceiveData:]): (-[WebMainResourceClient connectionDidFinishLoading:]): (-[WebMainResourceClient connection:didFailLoadingWithError:]): (-[WebMainResourceClient startLoading:]): (-[WebResourceDelegateProxy connection:willSendRequest:redirectResponse:]): (-[WebResourceDelegateProxy connection:didReceiveResponse:]): (-[WebResourceDelegateProxy connection:didReceiveData:]): (-[WebResourceDelegateProxy connectionDidFinishLoading:]): (-[WebResourceDelegateProxy connection:didFailLoadingWithError:]):
  • WebView.subproj/WebResourceLoadDelegate.h:

WebBrowser:

Reviewed by Darin

Changed names for URL connection callback methods to
use the API-approved names. No functional changes.

  • BugReportController.m: (-[BugReportController connection:willSendRequest:redirectResponse:]): (-[BugReportController connection:didReceiveResponse:]): (-[BugReportController connection:didReceiveData:]): (-[BugReportController connectionDidFinishLoading:]): (-[BugReportController connection:didFailLoadingWithError:]):

Mar 27, 2003:

6:17 PM Changeset in webkit [3952] by hyatt
  • 5 edits in trunk/WebCore

A collection of fixes for tables.

(1) Fixed table layout should only be used if an explicit width
is specified on a table.
(2) width="0" and height="0" should be ignored on table cells!
(3) Fixed table layout wasn't spreading extra space over
columns.

Reviewed by mjs

  • khtml/html/html_tableimpl.cpp: (HTMLTableCellElementImpl::parseAttribute):
  • khtml/rendering/render_table.cpp: (RenderTable::setStyle):
  • khtml/rendering/table_layout.cpp: (FixedTableLayout::layout):
3:43 PM Changeset in webkit [3951] by hyatt
  • 3 edits in trunk/WebCore

Fix for the top of directory.apple.com. Only use the fixed
width on the cell (with nowrap set) if it is *larger* than
our current minwidth.

Reviewed by darin

  • khtml/rendering/render_table.cpp: (RenderTableCell::calcMinMaxWidth):
3:38 PM Changeset in webkit [3950] by cblu
  • 2 edits in trunk/WebKit

Left out a "!" in my last check-in.

  • Plugins.subproj/WebNetscapePluginPackage.m: (-[WebNetscapePluginPackage load]):
3:05 PM Changeset in webkit [3949] by hyatt
  • 6 edits in trunk/WebCore

Fix for 3166374. When a float is removed, crawl up and down the
tree looking for blocks that contain the float and dirty them all.

Reviewed by darin

  • ChangeLog:
  • khtml/rendering/render_block.cpp:
  • khtml/rendering/render_block.h:
  • khtml/rendering/render_object.cpp: (RenderObject::markAllDescendantsWithFloatsForLayout): (RenderObject::removeFromObjectLists):
  • khtml/rendering/render_object.h:
2:57 PM Changeset in webkit [3948] by cblu
  • 2 edits in trunk/WebKit
  • Allow Netscape plug-ins that don't have resource files to load in Safari.
  • Added more error handling when loading plug-ins.

Reviewed by darin.

  • Plugins.subproj/WebNetscapePluginPackage.m: (-[WebNetscapePluginPackage load]):
2:49 PM Changeset in webkit [3947] by mjs
  • 11 edits in trunk

WebCore:

Reviewed by Darin.

  • fixed 3192344 - nil-deref in KWin::info scrolling amazon while other shopping tabs load
  • fixed 3098365 - Default window size changes as a result of popup windows
  • fixed 3189291 - javascript window.close() closes window, not just originating tab
  • kwq/KWQKHTMLPart.h:
  • kwq/KWQKHTMLPart.mm: (KWQKHTMLPart::scheduleClose): Close via the bridge, not the window directly. (KWQKHTMLPart::bridgeForWidget): Take const QWidget * instead of QWidget *. (KWQKHTMLPart::nodeForWidget): Likewise. (KWQKHTMLPart::khtmlMousePressEvent): Deal with responder issues via bridge, not window directly. (KWQKHTMLPart::passWidgetMouseDownEventToWidget): Likewise. (KWQKHTMLPart::mouseDown): Likewise.
  • kwq/KWQKHTMLPartBrowserExtension.mm: (KHTMLPartBrowserExtension::createNewWindow): Set resizability via bridge, not window directly.
  • kwq/KWQTextArea.mm: (-[KWQTextArea becomeFirstResponder]): Deal with bridge for first responder issues, not window directly. (-[KWQTextArea drawRect:]): Likewise. (-[KWQTextAreaTextView insertTab:]): Likewise. (-[KWQTextAreaTextView insertBacktab:]): Likewise. (-[KWQTextAreaTextView shouldDrawInsertionPoint]): Likewise. (-[KWQTextAreaTextView selectedTextAttributes]): Likewise.
  • kwq/KWQWidget.mm: (QWidget::setActiveWindow): Focus window via bridge. (QWidget::hasFocus): Handle first responder issues via bridge. (QWidget::setFocus): Likewise. (QWidget::isVisible): Get window from bridge. (QWidget::mapFromGlobal): Get window from bridge. (QWidget::disableFlushDrawing): Add comment noting why it's OK to get the window from the view instead of from the bridge here. (QWidget::enableFlushDrawing): Likewise.
  • kwq/KWQWindowWidget.mm: (KWQWindowWidget::frameGeometry): Work through bridge, not window directly. (KWQWindowWidget::mapToGlobal): Likewise. (KWQWindowWidget::setFrameGeometry): Likewise.
  • kwq/WebCoreBridge.h:

WebKit:

Reviewed by Darin.

  • fixed 3192344 - nil-deref in KWin::info scrolling amazon while other shopping tabs load
  • fixed 3098365 - Default window size changes as a result of popup windows
  • fixed 3189291 - javascript window.close() closes window, not just originating tab
  • WebCoreSupport.subproj/WebBridge.m: (-[WebBridge setWindowIsResizable:]): New bridge method, implemented by calling window operations delegate. (-[WebBridge windowIsResizable]): Likewise. (-[WebBridge firstResponder]): Likewise. (-[WebBridge makeFirstResponder:]): Likewise. (-[WebBridge closeWindow]): Likewise.

WebBrowser:

Reviewed by Darin.

  • fixed 3189291 - javascript window.close() closes window, not just originating tab
  • BrowserWebController.m: (-[BrowserWebController windowController]): Moved this method higher. (-[BrowserWebController webViewCloseWindow:]): Close the tab, not the window.
  • BrowserWindowController.h:
  • BrowserWindowController.m: (-[BrowserWindowController closeTabForWebController:]): New method, closes tab or window if there is only one tab.
2:24 PM Changeset in webkit [3946] by kocienda
  • 29 edits in trunk/WebKit

Tests:

Reviewed by Darin

Changed WebResource to NSURLConnection. Some other "supporting" names
changed as well. Note that there are no functional modifications,
only name changes.

  • HeaderView/DocumentController.m:
  • IBViewer/DocumentController.m:
  • PDFBundle/PDFView.h:
  • PDFBundle/PDFView.m: (-[PDFResourceDelegate resource:willSendRequest:]): (-[PDFResourceDelegate resource:didReceiveResponse:]): (-[PDFResourceDelegate resource:didReceiveData:]): (-[PDFResourceDelegate resourceDidFinishLoading:]): (-[PDFResourceDelegate resource:didFailLoadingWithError:]): (-[PDFView initWithFrame:pageURL:resourceURL:]):
  • SimpleViewer/DocumentController.m:

WebFoundation:

Reviewed by Darin

Changed WebResource to NSURLConnection. Some other "supporting" names
changed as well. Note that there are no functional modifications,
only name changes.

  • CacheLoader.subproj/NSURLResponse.h:
  • CacheLoader.subproj/WebCacheManager.m:
  • CacheLoader.subproj/WebProtocol.m: (-[WebProtocol initWithProtocolClient:request:]):
  • CacheLoader.subproj/WebResourceDelegate.h:
  • CacheLoader.subproj/WebSynchronousDelegate.h:
  • CacheLoader.subproj/WebSynchronousDelegate.m: (-[WebSynchronousDelegate run:]): (-[WebSynchronousDelegate resource]): (-[WebSynchronousDelegate resource:willSendRequest:]): (-[WebSynchronousDelegate resourceDidFinishLoading:]): (-[WebSynchronousDelegate resource:didReceiveResponse:]): (-[WebSynchronousDelegate resource:didReceiveData:]):
  • CacheLoader.subproj/WebSynchronousResult.h:
  • CookieManager.subproj/WebCookieManager.m: (runningOnLoadThread): (-[WebCookieManager _scheduleSetupOnLoadThread]):
  • English.lproj/StringsNotToBeLocalized.txt:
  • Misc.subproj/WebFoundation.h:
  • Misc.subproj/WebFoundationLogging.h:
  • Misc.subproj/WebFoundationLogging.m:
  • Misc.subproj/WebFoundationPrivate.h:
  • ProtocolHandlers.subproj/WebCFNetworkHTTPProtocol.h:
  • ProtocolHandlers.subproj/WebCFNetworkHTTPProtocol.m: (-[WebCFNetworkHTTPProtocol deallocateCFNetworkResources]): (-[WebCFNetworkHTTPProtocol continueBeginLoadInBackgroundAfterCreatingHTTPRequest]): (-[WebCFNetworkHTTPProtocol addConditionalFieldsToHeader]): (-[WebCFNetworkHTTPProtocol handleReadStreamEvent:event:]):
  • ProtocolHandlers.subproj/WebFTPProtocol.m: (-[WebFTPProtocol startLoadingWithCacheObject:]): (-[WebFTPProtocol stopLoading]):
  • ProtocolHandlers.subproj/WebFileProtocol.m:
  • ProtocolHandlers.subproj/WebSSLProxyWrapperStream.m: (-[WebSSLProxyWrapperStream cancel]):
  • ProtocolHandlers.subproj/WebSimpleHTTPProtocol.m: (WebSimpleHTTPProtocolInit):
  • WebFoundation.exp:
  • WebFoundation.pbproj/project.pbxproj:

WebKit:

Reviewed by Darin

Changed WebResource to NSURLConnection. Some other "supporting" names
changed as well. Note that there are no functional modifications,
only name changes.

  • Downloads.subproj/WebDownload.m: (-[WebDownload initWithRequest:]): (-[WebDownload _initWithLoadingResource:request:response:delegate:proxy:]): (+[WebDownload _downloadWithLoadingResource:request:response:delegate:proxy:]): (-[WebDownload loadWithDelegate:]): (-[WebDownload resource:willSendRequest:]): (-[WebDownload resource:didReceiveResponse:]): (-[WebDownload resource:didReceiveData:]): (-[WebDownload resourceDidFinishLoading:]): (-[WebDownload resource:didFailLoadingWithError:]):
  • Downloads.subproj/WebDownloadPrivate.h:
  • Misc.subproj/WebIconLoader.h:
  • Misc.subproj/WebIconLoader.m: (-[WebIconLoader startLoading]): (-[WebIconLoader resourceDidFinishLoading:]): (-[WebIconLoader resource:willSendRequest:]): (-[WebIconLoader resource:didReceiveResponse:]): (-[WebIconLoader resource:didReceiveData:]): (-[WebIconLoader resource:didFailLoadingWithError:]):
  • Plugins.subproj/WebNetscapePluginStream.h:
  • Plugins.subproj/WebNetscapePluginStream.m: (-[WebNetscapePluginStream initWithRequest:pluginPointer:notifyData:]): (-[WebNetscapePluginStream resource:didReceiveResponse:]): (-[WebNetscapePluginStream resource:didReceiveData:]): (-[WebNetscapePluginStream resourceDidFinishLoading:]): (-[WebNetscapePluginStream resource:didFailLoadingWithError:]):
  • WebCoreSupport.subproj/WebBridge.m:
  • WebCoreSupport.subproj/WebSubresourceClient.m: (-[WebSubresourceClient resource:willSendRequest:]): (-[WebSubresourceClient resource:didReceiveResponse:]): (-[WebSubresourceClient resource:didReceiveData:]): (-[WebSubresourceClient resourceDidFinishLoading:]): (-[WebSubresourceClient resource:didFailLoadingWithError:]):
  • WebView.subproj/WebBaseResourceHandleDelegate.h:
  • WebView.subproj/WebBaseResourceHandleDelegate.m: (-[WebBaseResourceHandleDelegate loadWithRequest:]): (-[WebBaseResourceHandleDelegate resource:willSendRequest:]): (-[WebBaseResourceHandleDelegate resource:didReceiveResponse:]): (-[WebBaseResourceHandleDelegate resource:didReceiveData:]): (-[WebBaseResourceHandleDelegate resourceDidFinishLoading:]): (-[WebBaseResourceHandleDelegate resource:didFailLoadingWithError:]):
  • WebView.subproj/WebDataSource.h:
  • WebView.subproj/WebDataSource.m:
  • WebView.subproj/WebDataSourcePrivate.m:
  • WebView.subproj/WebDefaultContextMenuDelegate.m: (-[WebDefaultContextMenuDelegate webView:contextMenuItemsForElement:defaultMenuItems:]):
  • WebView.subproj/WebDefaultPolicyDelegate.m: (-[WebDefaultPolicyDelegate webView:decideNavigationPolicyForAction:andRequest:inFrame:decisionListener:]):
  • WebView.subproj/WebDefaultResourceLoadDelegate.m:
  • WebView.subproj/WebFramePrivate.m: (-[WebFrame _continueAfterNavigationPolicy:]): (-[WebFrame _postWithURL:referrer:target:data:contentType:triggeringEvent:form:formValues:]):
  • WebView.subproj/WebMainResourceClient.h:
  • WebView.subproj/WebMainResourceClient.m: (-[WebMainResourceClient resource:willSendRequest:]): (-[WebMainResourceClient resource:didReceiveResponse:]): (-[WebMainResourceClient resource:didReceiveData:]): (-[WebMainResourceClient resourceDidFinishLoading:]): (-[WebMainResourceClient resource:didFailLoadingWithError:]): (-[WebResourceDelegateProxy setDelegate:]): (-[WebResourceDelegateProxy resource:willSendRequest:]): (-[WebResourceDelegateProxy resource:didReceiveResponse:]): (-[WebResourceDelegateProxy resource:didReceiveData:]): (-[WebResourceDelegateProxy resourceDidFinishLoading:]): (-[WebResourceDelegateProxy resource:didFailLoadingWithError:]):
  • WebView.subproj/WebPolicyDelegate.h:
  • WebView.subproj/WebView.h:
  • WebView.subproj/WebView.m:
  • WebView.subproj/WebViewPrivate.m:

WebBrowser:

Reviewed by Darin

Changed WebResource to NSURLConnection. Some other "supporting" names
changed as well. Note that there are no functional modifications,
only name changes.

  • BrowserWebController.m: (-[BrowserWebController decidePolicyForAction:andRequest:inFrame:newFrameName:decisionListener:]):
  • BugReportController.h:
  • BugReportController.m: (-[BugReportController sendBugReportToAppleWithScreenShot:source:]): (-[BugReportController resource:willSendRequest:]): (-[BugReportController resource:didReceiveResponse:]): (-[BugReportController resource:didReceiveData:]): (-[BugReportController resourceDidFinishLoading:]): (-[BugReportController resource:didFailLoadingWithError:]):
  • ContextMenuHandler.m: (-[ContextMenuHandler webView:contextMenuItemsForElement:defaultMenuItems:]):
  • DownloadMonitor.m:
  • LoadProgressMonitor.h:
  • LoadProgressMonitor.m:
  • LocationChangeError.m: (-[LocationChangeHandler specializedMessageForError:]):
  • Test/PageLoadTestRunner.m: (-[PageLoadTestRunner startTest]): (-[PageLoadTestRunner stop]):
1:45 PM Changeset in webkit [3945] by rjw
  • 5 edits in trunk/WebKit

WebKit:

API change: WebHistory initWithFile: -> initWithContentsOfURL:

Reviewed by Ken.

  • History.subproj/WebHistory.h:
  • History.subproj/WebHistory.m: (-[WebHistory initWithContentsOfURL:]): (-[WebHistory URL]):
  • History.subproj/WebHistoryPrivate.h:
  • History.subproj/WebHistoryPrivate.m: (-[WebHistoryPrivate initWithContentsOfURL:]): (-[WebHistoryPrivate dealloc]): (-[WebHistoryPrivate _loadHistoryGuts:]): (-[WebHistoryPrivate loadHistory]): (-[WebHistoryPrivate _saveHistoryGuts:]): (-[WebHistoryPrivate URL]): (-[WebHistoryPrivate saveHistory]):

WebBrowser:

API change: WebHistory initWithFile: -> initWithContentsOfURL:

Reviewed by Ken.

  • Debug/DebugUtilities.m: (-[WebHistory populateHistoryWithTestData:]):
  • GlobalHistory.m: (-[GlobalHistory init]):
12:24 PM Changeset in webkit [3944] by darin
  • 3 edits in trunk/WebKit

Reviewed by Shelley.

  • fixed 3157067 -- Pier1.com doesn't load; Microsoft VBScript runtime error in user-agent checking code

Besides this fix, I also filed an evangelism bug, bug 3210612.

  • WebView.subproj/WebUserAgentSpoofTable.gperf: Added pier1.com.
  • WebView.subproj/WebUserAgentSpoofTable.c: Regenerated.
11:59 AM Changeset in webkit [3943] by kocienda
  • 12 edits in trunk/WebKit

Tools:

Reviewed by Trey

Moved to final NSURLResponse and NSHTTPURLResponse API.

  • WebDiskCacheInspector/Controller.m: (-[Controller tableView:objectValueForTableColumn:row:]): (-[Controller setCacheObject:]):

Tests:

Reviewed by Trey

Moved to final NSURLResponse and NSHTTPURLResponse API.

  • SnippetEditor/DataResourceRequest.m: (-[DataProtocolHandler startLoadingWithCacheObject:]):

WebFoundation:

Reviewed by Trey

Moved to final NSURLResponse and NSHTTPURLResponse API.
Includes these method name changes:

replacemethod "resultCode" with "statusCode"
replacemethod "setResultCode:" with "setStatusCode:"
replacemethod "localizedStringForResultCode:" with "localizedStringForStatusCode:"
replacemethod "isErrorResultCode:" with "isErrorStatusCode:"
replacemethod "contentType" with "MIMEType" /* for NSURLResponse */
replacemethod "contentLength" with "expectedContentLength"
replacemethod "setContentType:" with "setMIMEType:"
replacemethod "setContentLength:" with "setExpectedContentLength:"

Other changes:

Bumped NSURLResponseVersion.
Removed WebError from NSURLResponse. Error object now tracked in WebResource.
Moved NSHTTPURLResponse into NSURLResponse header.
Bumped WebCacheObjectVersion.

  • CacheLoader.subproj/NSURLResponse.h:
  • CacheLoader.subproj/NSURLResponse.m: (-[NSURLResponseInternal init]): (-[NSURLResponseInternal dealloc]): (-[NSURLResponse initWithCoder:]): (-[NSURLResponse encodeWithCoder:]): (-[NSURLResponse MIMEType]): (-[NSURLResponse expectedContentLength]): (-[NSURLResponse setExpectedContentLength:]): (-[NSURLResponse setMIMEType:]): (-[NSURLResponse createdDate]): (-[NSURLResponse lastModifiedDate]): (-[NSHTTPURLResponseInternal initWithCoder:]): (-[NSHTTPURLResponseInternal encodeWithCoder:]): (-[NSHTTPURLResponseInternal dealloc]): (-[NSHTTPURLResponse init]): (-[NSHTTPURLResponse initWithCoder:]): (-[NSHTTPURLResponse encodeWithCoder:]): (-[NSHTTPURLResponse allHeaderFields]): (-[NSHTTPURLResponse statusCode]): (-[NSHTTPURLResponse setStatusCode:]): (-[NSHTTPURLResponse setHeader:]): (-[NSHTTPURLResponse dealloc]): (+[NSHTTPURLResponse localizedStringForStatusCode:]): (+[NSHTTPURLResponse isErrorStatusCode:]):
  • CacheLoader.subproj/NSURLResponsePrivate.h:
  • CacheLoader.subproj/WebCacheObject.m:
  • CacheLoader.subproj/WebMutableResponse.h:
  • CacheLoader.subproj/WebResource.m: (-[WebResource _sendWillSendRequestCallback]): (-[WebResource _sendDidFailLoadingCallback]): (-[WebResource _redirectedToRequest:permanent:]): (-[WebResource _responseAvailable:]): (-[WebResource _didLoadBytes:length:]): (-[WebResource _finishedLoading]): (-[WebResource _failedWithError:]): (-[WebResource _setError:]): (-[WebResourceInternal dealloc]): (-[WebResourceInternal failedWithError:]):
  • CacheLoader.subproj/WebSynchronousDelegate.m: (-[WebSynchronousDelegate result]):
  • Misc.subproj/WebFoundation.h:
  • ProtocolHandlers.subproj/NSHTTPURLResponse.h:
  • ProtocolHandlers.subproj/NSHTTPURLResponse.m: (-[NSHTTPURLResponse statusCode]): (-[NSHTTPURLResponse setStatusCode:]): (+[NSHTTPURLResponse localizedStringForStatusCode:]): (+[NSHTTPURLResponse isErrorStatusCode:]):
  • ProtocolHandlers.subproj/NSHTTPURLResponsePrivate.h:
  • ProtocolHandlers.subproj/WebAboutProtocol.m: (-[WebAboutProtocol startLoadingWithCacheObject:]):
  • ProtocolHandlers.subproj/WebCFNetworkHTTPProtocol.m: (-[WebCFNetworkHTTPProtocol performHTTPHeaderRead:andCall:]):
  • ProtocolHandlers.subproj/WebFTPProtocol.m: (-[WebFTPProtocol sendResponseAvailableCallback]):
  • ProtocolHandlers.subproj/WebFileProtocol.m: (-[WebFileProtocol didLoadData:]):
  • ProtocolHandlers.subproj/WebHTTPProtocol.h:
  • ProtocolHandlers.subproj/WebHTTPProtocol.m: (-[WebHTTPProtocol sendResponseAvailableCallback]): (-[WebHTTPProtocol canStoreCacheObject:]):
  • ProtocolHandlers.subproj/WebSimpleHTTPProtocol.m: (-[WebSimpleHTTPProtocol _processHTTPResultCode]):
  • WebFoundation.pbproj/project.pbxproj:

WebKit:

Reviewed by Trey

Moved to final NSURLResponse and NSHTTPURLResponse API.

  • Downloads.subproj/WebDownload.m:
  • Misc.subproj/WebNSURLResponseExtras.m: (-[NSURLResponse suggestedFilenameForSaving]): (-[NSHTTPURLResponse suggestedFilenameForSaving]):
  • Plugins.subproj/WebBaseNetscapePluginStream.m: (-[WebBaseNetscapePluginStream setResponse:]):
  • Plugins.subproj/WebNetscapePluginDocumentView.m: (-[WebNetscapePluginDocumentView setDataSource:]):
  • WebView.subproj/WebDataSourcePrivate.m: (-[WebDataSource _representationClass]): (-[WebDataSource _commitIfReady:]):
  • WebView.subproj/WebFramePrivate.m: (-[WebFrame _opened]): (-[WebFrame _loadItem:fromItem:withLoadType:]):
  • WebView.subproj/WebFrameViewPrivate.m: (-[WebFrameView _makeDocumentViewForDataSource:]):
  • WebView.subproj/WebMainResourceClient.m: (-[WebMainResourceClient continueAfterContentPolicy:response:]): (-[WebMainResourceClient checkContentPolicyForResponse:]): (-[WebMainResourceClient resource:didReceiveResponse:]): (-[WebMainResourceClient startLoading:]):
  • WebView.subproj/WebTextRepresentation.m: (-[WebTextRepresentation setDataSource:]):
  • WebView.subproj/WebTextView.m: (-[WebTextView dataSourceUpdated:]):

WebBrowser:

Reviewed by Trey

Moved to final NSURLResponse and NSHTTPURLResponse API.

  • BrowserDocument.m: (-[BrowserDocument fileType]):
  • DownloadMonitor.m: (-[DownloadMonitor download:didReceiveResponse:]):
  • DownloadProgressEntry.m: (-[DownloadProgressEntry setResponse:]):
  • LoadProgressMonitor.m: (-[LoadProgressMonitor webView:resource:didReceiveResponse:fromDataSource:]):
  • ResourceProgressEntry.h:
  • ResourceProgressEntry.m: (-[ResourceProgressEntry statusCode]): (-[ResourceProgressEntry setStatusCode:]): (-[ResourceProgressEntry statusString]):
11:26 AM Changeset in webkit [3942] by hyatt
  • 3 edits in trunk/WebCore

This is just a long-standing screwup where I didn't port an old
table fix I made to Lars' new table code properly. The original
fix had this check in it.

The bug is 3171963 (cvs.com).

Reviewed by darin

  • khtml/rendering/render_table.cpp: (RenderTableSection::layoutRows):
10:52 AM Changeset in webkit [3941] by darin
  • 4 edits in trunk/WebCore

Reviewed by Trey.

  • fixed 3156509 -- Safari fills src="" frame with current contents of frameset instead of leaving it empty

The trick here is to always use "about:blank" when the frame URL is empty string.
If we pass the empty string elsewhere, it's going to get passed to completeURL and
turned into a reference to the current document, and we have to avoid doing that
ourselves explicitly too.

  • khtml/html/html_baseimpl.cpp: (HTMLFrameElementImpl::HTMLFrameElementImpl): Let the URL default to null rather than "about:blank". We do want to treat the frame as "about:blank", but that's not something people should see when inspecting the frame via the DOM. (HTMLFrameElementImpl::isURLAllowed): Allow empty URLs explicitly, so we don't call completeURL on them. (HTMLFrameElementImpl::updateForNewURL): Map empty URLs to "about:blank" at this level. (HTMLFrameElementImpl::attach): Do the same thing here. At some point we can share more code between these two. (HTMLFrameElementImpl::setLocation): Change this to call updateForNewURL. Not only does this make us handle the empty URL case properly, it also gets the benefit of other things we do in updateForNewURL, like handling the "isURLAllowed" rule, and properly handling the case where we already have a suitable frame.
  • other changes
  • kwq/KWQKHTMLView.mm: Improved a comment.
10:39 AM Changeset in webkit [3940] by sheridan
  • 3 edits in trunk

Safari-70u ... tree's open again

10:24 AM Changeset in webkit [3939]
  • 3 copies in branches/Safari-70-branch

This commit was manufactured by cvs2svn to create branch
'Safari-70-branch'.

10:24 AM Changeset in webkit [3938]
  • 3 copies in tags/Safari-70-anchor

This commit was manufactured by cvs2svn to create tag
'Safari-70-anchor'.

10:24 AM Changeset in webkit [3937]
  • 3 copies in branches/Safari-69~1-branch

This commit was manufactured by cvs2svn to create branch
'Safari-69~1-branch'.

10:24 AM Changeset in webkit [3936]
  • 3 copies in tags/Safari-69~1-anchor

This commit was manufactured by cvs2svn to create tag
'Safari-69~1-anchor'.

10:24 AM Changeset in webkit [3935]
  • 3 copies in tags/Safari-69

This commit was manufactured by cvs2svn to create tag 'Safari-69'.

10:24 AM Changeset in webkit [3934] by sheridan
  • 8 edits in trunk

Safari-69 stamp

Note: See TracTimeline for information about the timeline view.