1. 15 Nov, 2002 8 commits
    • darin's avatar
      - fixed 3079214 -- text/plain page shows up slowly, a few pages at a time · 922ba374
      darin authored
              * WebView.subproj/WebTextView.m:
              (-[WebTextView initWithFrame:]): Remove unneeded setWidthTracksTextView:, because
      	that's the default.
              (-[WebTextView dataSourceUpdated:]): Replace the thing each time in the RTF case.
              (-[WebTextView viewDidMoveToSuperview]): Here's where we resize, but only the width.
      	Resizing the height was causing the bug.
              (-[WebTextView layout]): Do nothing.
              (-[WebTextView setAcceptsDrags:]): Update to new name. Since we weren't
      	importing WebDocument.h, we never noticed that this file got out of sync.
              (-[WebTextView acceptsDrags]): Ditto.
              (-[WebTextView setAcceptsDrops:]): Ditto.
              (-[WebTextView acceptsDrops]): Ditto.
      
              * WebView.subproj/WebDocument.h: Fix typo. It said setAcceptsDrags: twice.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@2702 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      922ba374
    • darin's avatar
      61200eb4
    • mjs's avatar
      - fixed 3102016 - REGRESSION: Command-clicking on a link can open _two_ windows. · b8cae6d0
      mjs authored
              * WebView.subproj/WebDataSourcePrivate.h:
              * WebView.subproj/WebDataSourcePrivate.m:
              (-[WebDataSource _setJustOpenedForTargetedLink:]):
              (-[WebDataSource _justOpenedForTargetedLink]):
              * WebView.subproj/WebFrame.m:
              (-[WebFrame findOrCreateFramedNamed:]):
              * WebView.subproj/WebFramePrivate.h:
              * WebView.subproj/WebFramePrivate.m:
              (-[WebFrame _continueAfterNavigationPolicy:]):
              (-[WebFrame _loadDataSource:withLoadType:]):
              (-[WebFrame _downloadRequest:toPath:]):
              (-[WebFrame _setJustOpenedForTargetedLink:]):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@2694 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      b8cae6d0
    • darin's avatar
      * WebView.subproj/WebFramePrivate.m: · 960f8f20
      darin authored
              (-[WebFrame _checkNavigationPolicyForRequest:dataSource:andCall:withSelector:]):
      	Give the listener a slightly longer lifetime, to make this API a bit more foolproof.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@2692 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      960f8f20
    • mjs's avatar
      Fix world leak I introduced, and also add an early return when needed. · 4e042174
      mjs authored
              * WebView.subproj/WebFramePrivate.m:
              (-[WebFrame _invalidatePendingPolicyDecisionCallingDefaultAction:]):
              (-[WebFrame _checkNavigationPolicyForRequest:dataSource:andCall:withSelector:]):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@2690 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      4e042174
    • mjs's avatar
      WebKit: · 62074c91
      mjs authored
      	Make navigation policy asynchronous for real.
      
              * WebKit.pbproj/project.pbxproj:
              * WebView.subproj/WebControllerPolicyDelegate.h:
              * WebView.subproj/WebControllerPolicyDelegate.m:
              (-[WebPolicyDecisionListenerPrivate initWithTarget:action:]):
              (-[WebPolicyDecisionListenerPrivate dealloc]):
              (-[WebPolicyDecisionListener usePolicy:]):
              (-[WebPolicyDecisionListener _initWithTarget:action:]):
              (-[WebPolicyDecisionListener dealloc]):
              (-[WebPolicyDecisionListener _invalidate]):
              * WebView.subproj/WebControllerPolicyDelegatePrivate.h: Added.
              * WebView.subproj/WebDefaultPolicyDelegate.m:
              (-[WebDefaultPolicyDelegate decideNavigationPolicyForAction:andRequest:inFrame:decisionListener:]):
              * WebView.subproj/WebFrame.m:
              (-[WebFrame stopLoading]):
              * WebView.subproj/WebFramePrivate.h:
              * WebView.subproj/WebFramePrivate.m:
              (-[WebFramePrivate dealloc]):
              (-[WebFrame _invalidatePendingPolicyDecisionCallingDefaultAction:]):
              (-[WebFrame _checkNavigationPolicyForRequest:dataSource:andCall:withSelector:]):
              (-[WebFrame _continueAfterNavigationPolicy:]):
              (-[WebFrame _loadURL:loadType:triggeringEvent:isFormSubmission:]):
              (-[WebFrame _loadDataSource:withLoadType:]):
      
      WebBrowser:
      
      	Make navigation policy asynchronous.
      
              * BrowserWebController.m:
              (-[BrowserWebController decideNavigationPolicyForAction:andRequest:inFrame:decisionListener:]):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@2688 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      62074c91
    • mjs's avatar
      Wrap content policy invocation to look asynchronous. · 252d3fe7
      mjs authored
              * WebView.subproj/WebBaseResourceHandleDelegate.h:
              * WebView.subproj/WebMainResourceClient.m:
              (-[WebMainResourceClient continueAfterContentPolicy:response:]):
              (-[WebMainResourceClient checkContentPolicyForResponse:andCallSelector:]):
              (-[WebMainResourceClient handle:didReceiveResponse:]):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@2687 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      252d3fe7
    • mjs's avatar
      Refactor so that all invocations of navigation policy are set up · 604b1965
      mjs authored
      	to be asynchronous. However, the actually delegate method is not
      	async yet.
      
              * WebView.subproj/WebFramePrivate.h:
              * WebView.subproj/WebFramePrivate.m:
              (-[WebFrame _checkNavigationPolicyForRequest:dataSource:andCall:withSelector:]):
              (-[WebFrame _continueFragmentScrollAfterNavigationPolicy:request:]):
              (-[WebFrame _loadURL:loadType:triggeringEvent:isFormSubmission:]):
              (-[WebFrame _continueLoadRequestAfterNavigationPolicy:request:]):
              (-[WebFrame _loadDataSource:withLoadType:]):
              * WebView.subproj/WebMainResourceClient.h:
              * WebView.subproj/WebMainResourceClient.m:
              (-[WebMainResourceClient stopLoadingForPolicyChange]):
              (-[WebMainResourceClient continueAfterNavigationPolicy:request:]):
              (-[WebMainResourceClient handle:willSendRequest:]):
              (-[WebMainResourceClient handle:didReceiveResponse:]):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@2686 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      604b1965
  2. 14 Nov, 2002 10 commits
    • mjs's avatar
      Refactor things a bit so all loads bottleneck through a single · 7a17f0c4
      mjs authored
      	method (_loadDataSource:withLoadType:).
      
              * WebView.subproj/WebFrame.m:
              (-[WebFrame loadRequest:]):
              (-[WebFrame reload]):
              * WebView.subproj/WebFramePrivate.h:
              * WebView.subproj/WebFramePrivate.m:
              (-[WebFrame _loadItem:fromItem:withLoadType:]):
              (-[WebFrame _loadRequest:triggeringAction:loadType:]):
              (-[WebFrame _loadURL:loadType:triggeringEvent:isFormSubmission:]):
              (-[WebFrame _postWithURL:data:contentType:triggeringEvent:]):
              (-[WebFrame _reloadAllowingStaleDataWithOverrideEncoding:]):
              (-[WebFrame _loadDataSource:withLoadType:]):
              (-[WebFrame _downloadRequest:toPath:]):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@2684 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      7a17f0c4
    • mjs's avatar
      WebKit: · 6a96e2b0
      mjs authored
      	Change things so the public interface to loading is loadRequest:
      	and everything else is private.
      
              * Plugins.subproj/WebBaseNetscapePluginView.m:
              (-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:]):
              * Plugins.subproj/WebPluginController.m:
              (-[WebPluginController showURL:inFrame:]):
              * WebView.subproj/WebController.h:
              * WebView.subproj/WebController.m:
              (-[WebController init]):
              * WebView.subproj/WebControllerPrivate.m:
              (-[WebController _createFrameNamed:inParent:allowsScrolling:]):
              (-[WebController _downloadURL:toPath:]):
              * WebView.subproj/WebFrame.h:
              * WebView.subproj/WebFrame.m:
              (-[WebFrame init]):
              (-[WebFrame initWithName:webView:controller:]):
              (-[WebFrame loadRequest:]):
              (-[WebFrame reload]):
              * WebView.subproj/WebFramePrivate.h:
              * WebView.subproj/WebFramePrivate.m:
              (-[WebFrame _timedLayout:]):
              (-[WebFrame _clearProvisionalDataSource]):
              (-[WebFrame _loadItem:fromItem:withLoadType:]):
              (-[WebFrame _loadRequest:triggeringAction:]):
              (-[WebFrame _reloadAllowingStaleDataWithOverrideEncoding:]):
              (-[WebFrame _itemForRestoringDocState]):
              (-[WebFrame _setProvisionalDataSource:]):
              (-[WebFrame _startLoading]):
              (-[WebFrame _downloadRequest:toPath:]):
              * WebView.subproj/WebMainResourceClient.m:
              (-[WebMainResourceClient handle:willSendRequest:]):
              (-[WebMainResourceClient stopLoadingAfterContentPolicy]):
              (-[WebMainResourceClient handle:didReceiveResponse:]):
              * WebView.subproj/WebView.m:
              (-[WebView concludeDragOperation:]):
      
      WebBrowser:
      
      	Change things so the public interface to loading is loadRequest:
      	and everything else is private.
      
              * BrowserDocument.m:
              (-[BrowserDocument goToRequest:]):
              * BrowserWebController.m:
              (-[BrowserWebController initWithBrowserDocument:]):
              * Debug/SnippetController.h:
              * Debug/SnippetController.m:
              (-[SnippetController dealloc]):
              (-[SnippetController windowWillClose:]):
              (-[SnippetController load]):
              (-[SnippetController loadComplete]):
              (-[SnippetController mainDataSource]):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@2683 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      6a96e2b0
    • hyatt's avatar
      Move text measurement and layout beyond onload. This · d4a14ac7
      hyatt authored
      	shoudl speed up i-bench substantially and morrison's
      	PLT test slightly.  Note that the adjustFrames layout
      	stuff has been removed from isLoadComplete.
      
              * WebView.subproj/WebFramePrivate.m:
              (-[WebFrame _timedLayout:]):
              (-[WebFrame _isLoadComplete]):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@2681 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      d4a14ac7
    • darin's avatar
      WebFoundation: · 726fa2c5
      darin authored
              * English.lproj/StringsNotToBeLocalized.txt: Updated for recent changes.
      
      WebKit:
      
              * English.lproj/Localizable.strings: Updated to include the new
      	error messages that Maciej just added. I wonder what effect this
      	will have if we see those errors in Alex-32?
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@2677 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      726fa2c5
    • sheridan's avatar
      Alex-32 stamp · 98191978
      sheridan authored
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@2675 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      98191978
    • gramps's avatar
      * WebView.subproj/WebControllerPolicyDelegate.h: · 76387d3c
      gramps authored
      Added missing semi-colon in definition of WebPolicyDecisionListener to
      fix build error.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@2672 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      76387d3c
    • mjs's avatar
      WebKit: · 61d1c337
      mjs authored
      	Combined file URL policy with content policy. We don't actually
      	bother to ask earlier for file URLs yet, since that will make
      	things more complicated.
      
              * Misc.subproj/WebKitErrors.h:
              * WebView.subproj/WebControllerPolicyDelegate.h:
              * WebView.subproj/WebDefaultPolicyDelegate.m:
              * WebView.subproj/WebFramePrivate.h:
              * WebView.subproj/WebFramePrivate.m:
              (-[WebFrame _handleUnimplementablePolicy:errorCode:forURL:]):
              (-[WebFrame _continueAfterNavigationPolicyForRequest:dataSource:]):
              * WebView.subproj/WebMainResourceClient.h:
              * WebView.subproj/WebMainResourceClient.m:
              (-[WebMainResourceClient stopLoadingAfterContentPolicy]):
              (-[WebMainResourceClient handle:didReceiveResponse:]):
              * WebView.subproj/WebView.m:
              (+[WebView initialize]):
      
      WebBrowser:
      
      	Combined file URL policy with content policy. Also adjusted error
      	handling to continue to handle file errors well.
      
              * BrowserWebController.m:
              (-[BrowserWebController unableToImplementPolicy:error:forURL:inFrame:]):
              (-[BrowserWebController contentPolicyForMIMEType:andRequest:inFrame:]):
              * LocationChangeError.m:
              (-[LocationChangeHandler specializedTitleForError:]):
              (-[LocationChangeHandler specializedMessageForError:]):
              * LocationChangeHandler.m:
              (-[LocationChangeHandler locationChangeDone:forDataSource:]):
              * WebBrowser.pbproj/project.pbxproj:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@2671 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      61d1c337
    • darin's avatar
      WebCore: · 043758d8
      darin authored
      	- fixed 3099240 -- REGRESSION: repro assert d->m_doc->parsing
      
      	Don't force all redirects to be reloads, because the ones from JavaScript must
      	not be. Maybe a better solution post-Alex-32 will be to pass a flag that distinguishes
      	redirects from other location changes.
      
              * khtml/khtml_part.cpp: (KHTMLPart::slotRedirect): Don't ignore the anchor when
      	comparing URLs to see if they should be a reload. We'll still do a reload if the URLs
      	are actually equal, but if they differ in anchor we will just go to the anchor.
      	This is the bug fix.
      
              * kwq/WebCoreBridge.h: Add reload parameter.
              * kwq/WebCoreBridge.mm: (-[WebCoreBridge openURL:reload:headers:]): Stuff the reload
      	parameter into the URLArgs.
      
      WebKit:
      
      	- fixed 3099240 -- REGRESSION: repro assert d->m_doc->parsing
      
      	Make the reload flag pass across the bridge.
      
              * WebView.subproj/WebDataSourcePrivate.m: (-[WebDataSource _commitIfReady]):
      	Pass a reload flag, based on the load type, to the bridge.
              * WebView.subproj/WebFramePrivate.m:
              (-[WebFrame _loadURL:loadType:triggeringEvent:isFormSubmission:]): Pass a
      	reload flag of NO in the anchor case. Preserve reload load types even when
      	doing client redirects (have to talk with Trey about this tomorrow).
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@2670 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      043758d8
    • darin's avatar
      WebCore: · 3866e312
      darin authored
      	- fixed 3100235 -- nil-deference in khtml::RenderTable at money.cnn.com
      
              * kwq/WebCoreBridge.h: Add needsLayout.
              * kwq/WebCoreBridge.mm: (-[WebCoreBridge needsLayout]): Return true if the render
      	tree root says "layouted" is false. It would be more elegant to use more of this
      	WebCore layout logic and have less of our own on the WebKit side.
      
              * WebCore.pbproj/project.pbxproj: Oh, that Project Builder.
      
      WebKit:
      
      	- fixed 3100235 -- nil-deference in khtml::RenderTable at money.cnn.com
      
              * WebView.subproj/WebHTMLView.m: (-[WebHTMLView drawRect:]):
      	If the WebCore side needs layout, then do layout before trying to draw.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@2669 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      3866e312
    • trey's avatar
      Fixed client redirects, some more. The upshot is that they do not · 3a55cfde
      trey authored
      	generate two items in the back-forward list.  iBench still works.
      
              * WebCoreSupport.subproj/WebBridge.m:
              (-[WebBridge reportClientRedirectTo:delay:fireDate:]):  Call straight to the frame for all impl.
              (-[WebBridge reportClientRedirectCancelled]):  Call straight to the frame for all impl.
              (-[WebBridge loadURL:reload:triggeringEvent:isFormSubmission:]):
      	clientRedirect param removed when sending _loadURL: to frame.
              * WebView.subproj/WebFramePrivate.h:
              * WebView.subproj/WebFramePrivate.m:
              (-[WebFrame _loadURL:loadType:triggeringEvent:isFormSubmission:]):
      	clientRedirect param  removed. Check our own ivar to know if we are in client redirect case.
              (-[WebFrame _loadURL:intoChild:]):
      	clientRedirect param removed when sending _loadURL: .
              (-[WebFrame _clientRedirectedTo:delay:fireDate:]):
      	Note that we are doing a redirect if time=0 and we're not completed.  Also includes
      	previous impl moved from Bridge.
              (-[WebFrame _clientRedirectCancelled]):  Previous impl moved from Bridge.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@2668 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      3a55cfde
  3. 13 Nov, 2002 6 commits
    • mjs's avatar
      WebKit: · 065a97f9
      mjs authored
      	Pass mime type instead of full response to content policy delegate
      	method, in preparation for merging it with the file URL policy.
      
              * WebView.subproj/WebControllerPolicyDelegate.h:
              * WebView.subproj/WebDefaultPolicyDelegate.m:
              * WebView.subproj/WebMainResourceClient.m:
              (-[WebMainResourceClient handle:didReceiveResponse:]):
      
      WebBrowser:
      
      	Pass mime type instead of full response to content policy delegate
      	method, in preparation for merging it with the file URL policy.
      
              * BrowserWebController.m:
              (-[BrowserWebController contentPolicyForMIMEType:andRequest:inFrame:]):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@2662 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      065a97f9
    • darin's avatar
      WebCore: · aa70db1b
      darin authored
      	- fixed 3083982 -- Logging into AOL gives null view
      
      	Turns out AOL was using a refresh header, which we were not supporting.
      
              * khtml/khtml_part.h: Declare receivedFirstData, a private member function.
              * khtml/khtml_part.cpp:
              (KHTMLPart::receivedFirstData): Separate out the part of slotData we
      	want to share, which really seems kinda separate anyway.
              (KHTMLPart::slotData): More of the same.
      
              * kwq/KWQKHTMLPart.h: Declare addMetaData.
              * kwq/KWQKHTMLPart.mm:
              (KWQKHTMLPart::slotData): Call receivedFirstData instead of doing the same
      	thing ourselves.
              (KWQKHTMLPart::addMetaData): Added. Puts metadata into the job.
      
              * kwq/KWQKHTMLPartBrowserExtension.mm:
              (KHTMLPartBrowserExtension::createNewWindow): Fix bug where this was calling
      	openURL: but meant to call loadURL:.
      
              * kwq/WebCoreBridge.h: Add headers to openURL method. Remove setContentType.
              * kwq/WebCoreBridge.mm:
              (-[WebCoreBridge openURL:withHeaders:]): Handle Content-Type and Refresh.
      	This method is big enough that I should probably move the guts to KWQKHTMLPart.
      
      	- other things
      
              * kwq/KWQListImpl.mm: (KWQListImpl::~KWQListImpl): I overlooked something
      	while doing my "bug fix" in here a while back. Change an assignment statement
      	to an assert.
      
      WebKit:
      
      	- fixed 3083982 -- Logging into AOL gives null view
      
      	Turns out AOL was using a refresh header, which we were not supporting.
      
              * WebView.subproj/WebDataSourcePrivate.m: (-[WebDataSource _commitIfReady]):
      	Call openURL: and pass headers in.
      
              * WebView.subproj/WebFramePrivate.m:
              (-[WebFrame _loadURL:loadType:clientRedirect:triggeringEvent:isFormSubmission:]):
      	Pass nil for headers in this case, since we know it's just an anchor change.
      
      	- other things
      
              * WebCoreSupport.subproj/WebBridge.h: Remove dataSourceChanged and dataSource
      	methods. We try to keep the bridge methods down to actual bridging.
              * WebCoreSupport.subproj/WebBridge.m: Remove dataSourceChanged altogether,
      	and move dataSource up in the file.
      
              * WebView.subproj/WebHTMLRepresentation.m:
              (-[WebHTMLRepresentation setDataSource:]): Keep the data source around, so we
      	don't need to ask the bridge for it.
              (-[WebHTMLRepresentation documentSource]): Use it here.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@2660 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      aa70db1b
    • trey's avatar
      Fixed 3100084 - REGRESSION: web page is not first responder after visiting web page · 3795ae7e
      trey authored
              * WebView.subproj/WebDataSourcePrivate.m:
              (-[WebDataSource _commitIfReady]):  Make the rep before _transitionToCommitted.  This is the way it used to be.
              (-[WebDataSource _makeRepresentation]):  Don't make the docView here.
      
              * WebView.subproj/WebFramePrivate.m:
              (-[WebFrame _transitionToCommitted]):  Make the docView here, after we save the scroll state but before notifying the delegate.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@2658 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      3795ae7e
    • darin's avatar
      - fixed 3100013 -- REGRESSION: Can't get results from i-Bench anymore · 6208ff60
      darin authored
              * WebView.subproj/WebFramePrivate.m: (-[WebFrame _isLoadComplete]):
      	Don't set the state to WebFrameStateComplete if it has already been set
      	to WebFrameStateProvisional. If it has, that means we already began a new
      	load; that one is not yet complete.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@2654 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      6208ff60
    • sullivan's avatar
      2002-11-13 John Sullivan <sullivan@apple.com> · ce6f6df4
      sullivan authored
      	- fixed 3099922 -- REGRESSION: Back button always pops up menu
      
              * Misc.subproj/WebNSViewExtras.h:
              * Misc.subproj/WebNSViewExtras.m:
              (-[NSView _web_dragShouldBeginFromMouseDown:withExpiration:xHysteresis:yHysteresis:]:
      	Fixed a copy/paste error I made yesterday -- this method was never
      	noticing the mouse-up events because it was checking the event type
      	against the wrong number. Also changed the hysteresis values from
      	unsigneds to floats (unsigned was just wrong).
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@2653 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      ce6f6df4
    • mjs's avatar
      WebCore: · 368154da
      mjs authored
      	- fixed 3050447 - Policy handlers have no way of telling client
      	that the proposed navigation is a form post
      
              * khtml/khtml_part.cpp:
              (KHTMLPart::submitForm): Call kwq->submitForm
              * kwq/KWQKHTMLPart.h:
              * kwq/KWQKHTMLPart.mm:
              (KWQKHTMLPart::openURL): Adjusted for bridge API change.
              (KWQKHTMLPart::openURLRequest): Removed POST handling.
      	(KWQKHTMLPart::submitForm): Added this back, because we need to
      	know what URL navigations are caused by form submission, even if
      	they are not POSTs.
              (KWQKHTMLPart::urlSelected): Adjusted for bridge API change.
              * kwq/WebCoreBridge.h: Add triggeringEvent: parameter to postURL:
      	and isFormSubmission: parameter to loadURL:.
      
      WebKit:
      
      	- fixed 3050447 - Policy handlers have no way of telling client
      	that the proposed navigation is a form post
      
      	Now we pass form submissions through all the normal policy steps.
      
              * WebCoreSupport.subproj/WebBridge.m:
              (-[WebBridge loadURL:reload:triggeringEvent:isFormSubmission:]):
              (-[WebBridge postWithURL:data:contentType:triggeringEvent:]):
              (-[WebBridge createChildFrameNamed:withURL:renderPart:allowsScrolling:marginWidth:marginHeight:]):
              * WebView.subproj/WebDataSourcePrivate.h:
              * WebView.subproj/WebDataSourcePrivate.m:
              (-[WebDataSourcePrivate dealloc]):
              (-[WebDataSource _setTriggeringAction:]):
              (-[WebDataSource _triggeringAction]):
              (-[WebDataSource _lastCheckedRequest]):
              (-[WebDataSource _setLastCheckedRequest:]):
              * WebView.subproj/WebFrame.m:
              (-[WebFrame setProvisionalDataSource:]):
              * WebView.subproj/WebFramePrivate.h:
              * WebView.subproj/WebFramePrivate.m:
              (-[WebFrame _shouldShowRequest:]):
              (-[WebFrame _loadRequest:triggeringAction:]):
              (-[WebFrame _actionInformationForNavigationType:event:]):
              (-[WebFrame _continueAfterNavigationPolicyForRequest:dataSource:]):
              (-[WebFrame _loadURL:loadType:clientRedirect:triggeringEvent:isFormSubmission:]):
              (-[WebFrame _loadURL:intoChild:]):
              (-[WebFrame _postWithURL:data:contentType:triggeringEvent:]):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@2652 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      368154da
  4. 12 Nov, 2002 10 commits
    • mjs's avatar
      WebKit: · 8e4ec943
      mjs authored
      	Combine click policy and URL policy into navigation policy.
      
              * WebView.subproj/WebControllerPolicyDelegate.h:
              * WebView.subproj/WebDefaultPolicyDelegate.h:
              * WebView.subproj/WebDefaultPolicyDelegate.m:
              (-[WebDefaultPolicyDelegate navigationPolicyForAction:andRequest:inFrame:]):
              * WebView.subproj/WebFramePrivate.h:
              * WebView.subproj/WebFramePrivate.m:
              (-[WebFrame _shouldShowRequest:]):
              (-[WebFrame _actionInformationForNavigationType:event:]):
              (-[WebFrame _continueAfterFileURLPolicyForRequest:]):
              (-[WebFrame _continueAfterNavigationPolicyForRequest:event:]):
              (-[WebFrame _loadURL:loadType:clientRedirect:triggeringEvent:]):
      
      WebBrowser:
      
      	Combined click policy and URL policy into navigation policy.
      
              * BrowserDocument.m:
              (-[BrowserDocument goToRequest:]):
              * BrowserWebController.m:
              (-[BrowserWebController navigationPolicyForAction:andRequest:inFrame:]):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@2651 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      8e4ec943
    • trey's avatar
      fixed 3096030 - Crash in -[WebBackForwardList goToEntry:] when playing with... · b613789e
      trey authored
      	fixed 3096030 - Crash in -[WebBackForwardList goToEntry:] when playing with SnapBack and dictionary.com
      
              * WebView.subproj/WebFramePrivate.m:
              (-[WebFrame _isLoadComplete]):  Set state=completed only after we tell the bridge to
      	end the load.  This allows client redirects to be processed before we think we're complete.
              (-[WebFrame _loadURL:loadType:clientRedirect:triggeringEvent:]):
      	Only process client redirects as such if we are not already complete.  This makes JS driven
      	navigations after load-time work like the user would expect, as normal navigations.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@2649 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      b613789e
    • mjs's avatar
      - fixed 3099487 - REGRESSION: dragging an image always puts it in · f07e9c04
      mjs authored
      	the download directory
      
              * WebView.subproj/WebControllerPrivate.h:
              * WebView.subproj/WebControllerPrivate.m:
              (-[WebController _downloadURL:]): Call _downloadURL:toPath: with nil path.
      	(-[WebController _downloadURL:toPath:]): New method that
      	predetermines the path to download to (needed for DnD).
              * WebView.subproj/WebHTMLView.m:
      	(-[WebHTMLView namesOfPromisedFilesDroppedAtDestination:]): Use
      	_downloadURL:toPath:
              * WebView.subproj/WebImageView.m:
      	(-[WebImageView namesOfPromisedFilesDroppedAtDestination:]): Use
      	_downloadURL:toPath:
              * WebView.subproj/WebMainResourceClient.m:
      	(-[WebMainResourceClient handle:didReceiveResponse:]): Don't ask
      	delegate for download path if we already have one.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@2646 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      f07e9c04
    • rjw's avatar
      Fixed likely cause of 3099047 (and others). Width buffer could underrun in · b4635089
      rjw authored
              some situations.
      
              * WebCoreSupport.subproj/WebTextRenderer.m:
              (-[WebTextRenderer _floatWidthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:withPadding:applyRounding:attemptFontSubstitution:widths:fonts:glyphs:numGlyphs:letterSpacing:wordSpacing:]):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@2645 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      b4635089
    • sullivan's avatar
      WebKit: · 8518f7bc
      sullivan authored
              * Misc.subproj/WebNSViewExtras.h:
              * Misc.subproj/WebNSViewExtras.m:
              (-[NSView _web_dragShouldBeginFromMouseDown:withExpiration:xHysteresis:yHysteresis:]):
      	new method
              (-[NSView _web_dragShouldBeginFromMouseDown:withExpiration:]):
      	now calls the new method, passing the default hysteresis values
      
      WebBrowser:
      
      	- fixed 3096528 -- don't let initially-horizontal drags of
      	toolbar bookmarks escape from toolbar
      
      	Unfortunately I left behind a drawing glitch, recorded as
      	bug 3099488. Ideas to fix this are hereby solicited.
      
              * FavoritesBar.m:
              (-[FavoritesBar slideButtonsIntoPlace]):
      	renamed from repositionButtons for clarity
              (-[FavoritesBar maxButtonX]):
      	new method, extracted from _layOutButtons
              (-[FavoritesBar _layOutButtons]):
      	now calls maxButtonX
              (-[FavoritesBar setDropIndex:]):
      	updated for name change
              (-[FavoritesBar specialBookmarkSourcesCount]):
      	new method, extracted from duplicated code
              (-[FavoritesBar lastNonFavoriteIndex]):
      	new method, extracted from dropIndexFromDraggingInfo:
              (-[FavoritesBar dropIndexFromLocalPoint:]):
      	new method, extracted from dropIndexFromDraggingInfo:
              (-[FavoritesBar dropIndexFromDraggingInfo:]):
      	now calls dropIndexFromLocalPoint:
              (-[FavoritesBar addDroppedBookmarks:atIndex:]):
      	new method, extracted from performDragOperation:
              (-[FavoritesBar performDragOperation:]):
      	now calls addDroppedBookmarks:atIndex:
              (-[FavoritesBar _lastDraggedEventFollowing:]),
              (-[FavoritesBar _lastDraggedOrUpEventFollowing:]):
      	new methods, cribbed from AppKit
              (-[FavoritesBar constrainProposedButtonFrame:]):
      	new method
              (-[FavoritesBar reorderFavoriteButton:fromMouseDownEvent:]):
      	new method, drags (but not using CoreDragging stuff) button
      	horizontally within bar only
      
              * FavoritesBarView.h:
      	added definition of FavoritesBarReorderingDelegate informal protocol
              * FavoritesBarView.m:
              (-[FavoritesBarView reorderFavoriteButton:fromMouseDownEvent:]):
      	pass call through to delegate (FavoritesBar)
      
              * FavoriteButton.m:
              (-[FavoriteButton currentEventOffsetFromEvent:]):
      	new method, extracted from performDragFromEvent:
              (-[FavoriteButton performDragFromEvent:]):
      	now calls extracted method
              (-[FavoriteButton canDrag]):
      	renamed from canDragButton; now checks whether superview is a
      	FavoritesBarView
              (-[FavoriteButton mouseDown:]):
      	checks whether initial dragging movement was primarily vertical or
      	horizontal; if horizontal, calls new reordering code; if vertical,
      	uses larger hysteresis to minimize accidental poofing
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@2642 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      8518f7bc
    • rjw's avatar
      Implemented letter-spacing and word-spacing CSS properties. · 16de6614
      rjw authored
              * khtml/rendering/font.cpp:
              (Font::drawText):
              (Font::floatWidth):
              (Font::floatCharacterWidths):
              * kwq/KWQFontMetrics.h:
              * kwq/KWQFontMetrics.mm:
              (QFontMetrics::width):
              (QFontMetrics::floatWidth):
              (QFontMetrics::floatCharacterWidths):
              * kwq/KWQPainter.h:
              * kwq/KWQPainter.mm:
              (QPainter::drawText):
              * kwq/WebCoreTextRenderer.h:
      
              Implemented letter-spacing and word-spacing CSS properties.
      
              * Misc.subproj/WebStringTruncator.m:
              (+[WebStringTruncator rightTruncateString:toWidth:withFont:]):
              (+[WebStringTruncator centerTruncateString:toWidth:withFont:]):
              * WebCoreSupport.subproj/WebTextRenderer.h:
              * WebCoreSupport.subproj/WebTextRenderer.m:
              (-[WebTextRenderer widthForCharacters:length:]):
              (-[WebTextRenderer drawCharacters:stringLength:fromCharacterPosition:toCharacterPosition:atPoint:withPadding:withTextColor:backgroundColor:rightToLeft:letterSpacing:wordSpacing:]):
              (-[WebTextRenderer floatWidthForCharacters:stringLength:characterPosition:]):
              (-[WebTextRenderer floatWidthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:]):
              (-[WebTextRenderer floatWidthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:withPadding:applyRounding:attemptFontSubstitution:widths:letterSpacing:wordSpacing:]):
              (-[WebTextRenderer _floatWidthForCharacters:stringLength:fromCharacterPosition:numberOfCharacters:withPadding:applyRounding:attemptFontSubstitution:widths:fonts:glyphs:numGlyphs:letterSpacing:wordSpacing:]):
      
              Changed to reflect method name change.
      
              * EtchedStringView.m:
              (-[EtchedStringView drawRect:]):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@2640 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      16de6614
    • mjs's avatar
      WebKit: · ee9af3e5
      mjs authored
      	Removed policy classes and instead use the policy enums directly,
      	since we no longer hold the path in the enum.
      
              * Downloads.subproj/WebDownloadHandler.m:
              * WebKit.exp:
              * WebKit.pbproj/project.pbxproj:
              * WebView.subproj/WebControllerPolicyDelegate.h:
              * WebView.subproj/WebControllerPolicyDelegate.m:
              * WebView.subproj/WebControllerPolicyDelegatePrivate.h: Removed.
              * WebView.subproj/WebControllerPrivate.m:
              * WebView.subproj/WebDefaultPolicyDelegate.h:
              * WebView.subproj/WebDefaultPolicyDelegate.m:
              (+[WebDefaultPolicyDelegate defaultURLPolicyForRequest:]):
              (-[WebDefaultPolicyDelegate URLPolicyForRequest:inFrame:]):
              (-[WebDefaultPolicyDelegate fileURLPolicyForMIMEType:andRequest:inFrame:]):
              (-[WebDefaultPolicyDelegate unableToImplementPolicy:error:forURL:inFrame:]):
              (-[WebDefaultPolicyDelegate clickPolicyForAction:andRequest:inFrame:]):
              * WebView.subproj/WebFramePrivate.m:
              (-[WebFrame handleUnimplementablePolicy:errorCode:forURL:]):
              (-[WebFrame _shouldShowRequest:]):
              (-[WebFrame _continueAfterClickPolicyForEvent:request:]):
              * WebView.subproj/WebMainResourceClient.m:
              (-[WebMainResourceClient handle:didReceiveResponse:]):
      
      WebBrowser:
      
      	Adjusted for WebKit API changes.
      
              * BrowserDocument.m:
              (-[BrowserDocument goToRequest:]):
              * BrowserWebController.m:
              (-[BrowserWebController URLPolicyForRequest:inFrame:]):
              (-[BrowserWebController unableToImplementPolicy:error:forURL:inFrame:]):
              (-[BrowserWebController fileURLPolicyForMIMEType:andRequest:inFrame:]):
              (-[BrowserWebController contentPolicyForResponse:andRequest:inFrame:]):
              (-[BrowserWebController clickPolicyForAction:andRequest:inFrame:]):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@2638 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      ee9af3e5
    • mjs's avatar
      Keep the triggering event around on the data source, so it can be · 8f95bacf
      mjs authored
      	used with redirects.
      
              * WebView.subproj/WebFramePrivate.m:
              (-[WebFrame _loadRequest:triggeringEvent:]):
              (-[WebFrame _loadURL:loadType:clientRedirect:triggeringEvent:]):
              (-[WebFrame _postWithURL:data:contentType:]):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@2634 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      8f95bacf
    • darin's avatar
      WebCore: · c26ab578
      darin authored
      	- fixed 3083043 -- Alex doesn't decode % sequences in javascript: URLs
      
      	Some places here did KURL::decode_string, but others didn't.
      
              * khtml/khtml_part.cpp:
              (KHTMLPart::slotShowDocument): Added call to KURL::decode_string.
              (KHTMLPart::overURL): Ditto.
              (KHTMLPart::urlSelected): Ditto.
              (KHTMLPart::requestFrame): Ditto.
              (KHTMLPart::slotChildURLRequest): Ditto.
      
      WebKit:
      
      	- improved the code that manages observing the window and superview
      
              * WebView.subproj/WebHTMLView.m:
              (-[WebHTMLView addSuperviewObservers]): Added.
              (-[WebHTMLView removeSuperviewObservers]): Added.
              (-[WebHTMLView addWindowObservers]): Added.
              (-[WebHTMLView removeWindowObservers]): Added.
              (-[WebHTMLView viewWillMoveToSuperview:]): Call removeSuperviewObservers.
              (-[WebHTMLView viewDidMoveToSuperview]): Call addSuperviewObservers.
              (-[WebHTMLView viewWillMoveToWindow:]): Call removeWindowObservers and
      	removeSuperviewObservers.
              (-[WebHTMLView viewDidMoveToWindow]): Call addWindowObservers and
      	addSuperviewObservers.
      
      WebBrowser:
      
      	- fixed 3083043 -- Alex doesn't decode % sequences in javascript: URLs
      
              * BrowserWebBookmarkExtras.m: (-[WebBookmark _goToWithWindowPolicy:]):
      	Call CFURLCreateStringByReplacingPercentEscapes on the URL fragment before
      	passing it to stringByEvaluatingJavaScriptFromString:.
              * BrowserWindowController.m: (-[BrowserWindowController goToToolbarLocation:]):
      	Ditto.
      
      	- fixed world leaks seen when playing with the snippet window
      
              * Debug/SnippetController.m:
              (-[SnippetController dealloc]): Release the location change delegate to avoid a leak.
      	Also release the data source now that we retain it.
              (-[SnippetController windowWillClose:]): Release everything here. If we don't we get
      	a world leak. Also remove the WebView from the superview. If we don't, it leaks.
      	At some point we should look into this because it may indicate a WebKit problem, so
      	I marked it with a FIXME.
              (-[SnippetController load]): Retain the data source.
              (-[SnippetController loadComplete]): Release the old text storage.
      
              * Debug/SnippetController.h: Tweaks.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@2631 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c26ab578
    • mjs's avatar
      WebKit: · f774070a
      mjs authored
      	Remove contentPolicy parameter from _downloadURL, and remove
      	remaining traces of path from policy object.
      
              * WebView.subproj/WebControllerPolicyDelegate.h:
              * WebView.subproj/WebControllerPolicyDelegate.m:
              (-[WebPolicyPrivate dealloc]):
              (+[WebURLPolicy webPolicyWithURLAction:]):
              (+[WebFileURLPolicy webPolicyWithFileAction:]):
              (+[WebContentPolicy webPolicyWithContentAction:]):
              (+[WebClickPolicy webPolicyWithClickAction:]):
              * WebView.subproj/WebControllerPolicyDelegatePrivate.h:
              * WebView.subproj/WebControllerPrivate.h:
              * WebView.subproj/WebControllerPrivate.m:
              (-[WebController _downloadURL:]):
              * WebView.subproj/WebDefaultContextMenuDelegate.m:
              (-[WebDefaultContextMenuDelegate downloadURL:]):
              * WebView.subproj/WebDefaultPolicyDelegate.m:
              (-[WebDefaultPolicyDelegate clickPolicyForAction:andRequest:inFrame:]):
              * WebView.subproj/WebFramePrivate.m:
              (-[WebFrame _continueAfterClickPolicyForEvent:request:]):
              * WebView.subproj/WebHTMLView.m:
              (-[WebHTMLView namesOfPromisedFilesDroppedAtDestination:]):
              * WebView.subproj/WebImageView.m:
              (-[WebImageView namesOfPromisedFilesDroppedAtDestination:]):
              * WebView.subproj/WebMainResourceClient.m:
              (-[WebMainResourceClient handle:didReceiveResponse:]):
      
      WebBrowser:
      
      	Don't pass path when making policy objects.
      
              * BrowserWebController.m:
              (-[BrowserWebController contentPolicyForResponse:andRequest:inFrame:]):
              (-[BrowserWebController clickPolicyForAction:andRequest:inFrame:]):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@2630 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      f774070a
  5. 11 Nov, 2002 6 commits
    • darin's avatar
      WebFoundation: · 6172da0a
      darin authored
              * English.lproj/StringsNotToBeLocalized.txt: Update.
      
      WebCore:
      
              * kwq/KWQWidget.mm: (QWidget::setCursor): Remove printf I left
      	in by accident.
      
      WebKit:
      
              * Plugins.subproj/WebNetscapePluginPackage.m: (-[WebNetscapePluginPackage load]):
              Use fileSystemRepresentationWithPath, not cString, to turn a path into something
              to pass to FSPathMakeRef.
      
              * English.lproj/StringsNotToBeLocalized.txt: Update.
      
      WebBrowser:
      
              * BrowserNSStringExtras.m: (-[NSString compareVersionString:]):
      	Use lossyCString so we don't get an exception if a string is bad.
      
              * English.lproj/StringsNotToBeLocalized.txt: Update.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@2629 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      6172da0a
    • darin's avatar
      WebCore: · 3d0b472f
      darin authored
      	- tighten up cursor handling a bit more
      
              * kwq/KWQWidget.mm:
              (QWidget::setCursor): Use setDocumentCursor: instead of our own protocol.
              (QWidget::cursor): Use documentCursor instead of storing our own cursor.
      
              * kwq/WebCoreFrameView.h: Remove setCursor: method.
      
      WebKit:
      
      	- tighten up cursor handling a bit more
      
              * WebView.subproj/WebDynamicScrollBarsView.m:
              * WebView.subproj/WebHTMLView.m:
              (-[WebHTMLView addMouseMovedObserver]): Call _frameOrBoundsChanged
      	so we emit a mouse moved event right away.
              (-[WebHTMLView viewWillMoveToSuperview:]): Remove the colon since I
      	removed the parameter from _frameOrBoundsChanged.
      
              * WebView.subproj/WebHTMLViewPrivate.h: Declare _frameOrBoundsChanged.
              * WebView.subproj/WebHTMLViewPrivate.m:
              (-[WebHTMLView _frameOrBoundsChanged]): Remove parameter.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@2628 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      3d0b472f
    • trey's avatar
      Fixed 3015884 - Reloading a page should remember the scroll position · c854feb0
      trey authored
              * WebView.subproj/WebFramePrivate.m:
              (-[WebFrame _transitionToCommitted]):  Save scroll position on reload
              (-[WebFrame _isLoadComplete]):  Restore position on reload
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@2626 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c854feb0
    • trey's avatar
      First checkin of making frames work with the back forward list, restoring... · 9ca0d00f
      trey authored
      First checkin of making frames work with the back forward list, restoring scroll position and form state.  Fixing:
      
      3014555 Lose frameset context going back/forward
      3078151 History inconsistency after loading frame content
      3089551 REGRESSION: www.bmwusa.com frames don't load in alex-30
      3095878 refresh doesn't preserve frame state
      
      WebCore:
      
              * khtml/khtml_part.cpp:
              (KHTMLPart::requestFrameName):  Call through bridge to get generated frame name.
              * kwq/KWQKHTMLPart.h:
              * kwq/KWQKHTMLPart.mm:
              (KWQKHTMLPart::generateFrameName):  New call that just forwards through the bridge.
              * kwq/WebCoreBridge.h:
      
      WebKit:
      
              * History.subproj/WebBackForwardList.m:
              (-[WebBackForwardList addEntry:]):  Yank code to avoid adding a duplicate entry, to catch the
      	refresh case.  That's dealt with in WebFramePrivate now.
              (-[WebBackForwardList description]):  Enhanced to print more info.
      
              * History.subproj/WebHistoryItem.h:
      	History items now hold an array of subitems to mirror the frame tree.  One item in the tree
      	is designated the target of the navigation.
              * History.subproj/WebHistoryItem.m:
              (-[WebHistoryItem dealloc]):  Release new ivars.
              (-[WebHistoryItem isTargetItem]):
              (-[WebHistoryItem setIsTargetItem:]):
      	New setter and setter.
              (-[WebHistoryItem _recurseToFindTargetItem]):
              (-[WebHistoryItem targetItem]):
      	Search the tree to find the target item.
              (-[WebHistoryItem children]):
              (-[WebHistoryItem addChildItem:]):
              (-[WebHistoryItem childItemWithName:]):
      	Maintain and search new child item list.
              (-[WebHistoryItem description]):
      	Enhanced to print out the tree of items.
              (-[WebHistoryItem dictionaryRepresentation]):
              (-[WebHistoryItem initFromDictionaryRepresentation:]):
      	Save and load the new state.
      
              * WebCoreSupport.subproj/WebBridge.m:
              (-[WebBridge generateFrameName]):  New call from KWQ, just forwards to Frame.
              (-[WebBridge createChildFrameNamed:withURL:renderPart:allowsScrolling:marginWidth:marginHeight:]):
      	Call new frame method dedicated to this case.
              (-[WebBridge saveDocumentState:]):
              (-[WebBridge documentState]):
      	Call frame methods to get the right item to save/restore to/from.
      
              * WebView.subproj/WebController.m:
              (-[WebController _goToItem:withLoadType:]):  Stop any current loading before going to a new item.
              (-[WebController goBack]):
              (-[WebController goForward]):
              (-[WebController goBackOrForwardToItem:]):  Name change of private method (for consistency)
      
              * WebView.subproj/WebDataSourcePrivate.h:
      	ProvisionalItem and PreviousItem are moved back up to WebFrame, where we know more about the
      	state transitions that happen during loading.
              * WebView.subproj/WebDataSourcePrivate.m:
              (-[WebDataSourcePrivate dealloc]): Don't release removed ivars.
              (-[WebDataSource _commitIfReady]): Make the view representations -after- the transition to committed.
      	This allows us to save away the scroll location successfully, since making the view was resetting it.
              * WebView.subproj/WebFrame.h:
              * WebView.subproj/WebFrame.m:
              (-[WebFrame setProvisionalDataSource:]):  Saving the scroll location has moved elsewhere to handle frames.
              (-[WebFrame stopLoading]):  Skip all the work if we're already state=complete.
      
              * WebView.subproj/WebFramePrivate.h:
      	The frame now holds a ref to the current, previous and provisional back-forward items.
              * WebView.subproj/WebFramePrivate.m:
              (-[WebFramePrivate dealloc]):  Release new state.
              (-[WebFramePrivate setProvisionalItem:]):
              (-[WebFramePrivate setPreviousItem:]):
              (-[WebFramePrivate setCurrentItem:]):	New setters (1 line getters were missed by script)
              (-[WebFrame _addBackForwardItemClippedAtTarget:]):  Adds a BF item to the top of the BF list.
              (-[WebFrame _createItem]):  Create a single BF item.
              (-[WebFrame _createItemTreeWithTargetFrame:clippedAtTarget:]):  Create a tree of BF items, which
      	mirror the frame tree.
              (-[WebFrame _immediateChildFrameNamed:]):  New frame search utility (doesn't recurse)
              (-[WebFrame _detachFromParent]):  Save the scroll position when detaching a frame.
              (-[WebFrame _transitionToCommitted]):  Maintain new item ivars.  Save scroll position when
      	appropriate.  Hook up items for child frames to their parent, as they are created.
              (-[WebFrame _setState:]):  Clear previousItem whenever we reach committed.
              (-[WebFrame _isLoadComplete]):  Clear previousItem if we are committed.
              (-[WebFrame _childFramesMatchItem:]):  Does the frame's frame tree match the one held by the item?
              (-[WebFrame _loadItem:fromItem:withLoadType:]):  Only do simple anchor navigation if the frame
      	has no children (fixes oddball corner case with a frame reloading itself).  Set provisional item.
              (-[WebFrame _recursiveGoToItem:fromItem:withLoadType:]):  Heart of returning to an item that had
      	frames.  We either find that the existing content is good, or initiate a load.
              (-[WebFrame _goToItem:withLoadType:]):  Adjust the BF list cursor, and recurse to do the work.
              (-[WebFrame _loadURL:loadType:clientRedirect:triggeringEvent:]):  Only do anchor-style nav if
      	the destination URL has a fragment.  Save scroll position.
              (-[WebFrame _loadURL:intoChild:]):  If returning to an item with frames, possibly replace the
      	new content with the stuff that was there at the time, substituting the URL.
              (-[WebFrame _saveScrollPositionToItem:]):  Don't croak on nil item or view.
              (-[WebFrame _restoreScrollPosition]):  Do croak (ASSERT) on nil item.
              (-[WebFrame _scrollToTop]):  Nit cleanup.
              (-[WebFrame _addFramePathToString:]):  Add a component for our frame to the frame name we're generating.
              (-[WebFrame _generateFrameName]):  Generate a frame name that is repeatable.
              (-[WebFrame _itemForSavingDocState]):  Returns correct item to use for formstate save.
              (-[WebFrame _itemForRestoringDocState]):  Returns correct item to use for formstate restore
      
      WebBrowser:
      
              * BrowserDocument.m:
              (-[BrowserDocument _addItem:toMenu:]):
      	For a back-forward item that's a tree because its for a frameset, use the
      	right item of the tree to generate the menu contents.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@2624 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      9ca0d00f
    • mjs's avatar
      WebKit: · 6bf718ab
      mjs authored
      	Store path and the fact that we're downloading in the data source,
      	instead of storing the content policy.
      
              * Downloads.subproj/WebDownloadHandler.m:
              (-[WebDownloadHandler cleanUpAfterFailure]):
              (-[WebDownloadHandler createFileIfNecessary]):
              (-[WebDownloadHandler finishedLoading]):
              * WebView.subproj/WebControllerPrivate.m:
              (-[WebController _downloadURL:withContentPolicy:]):
              * WebView.subproj/WebDataSource.h:
              * WebView.subproj/WebDataSource.m:
              (+[WebDataSource registerRepresentationClass:forMIMEType:]):
              (-[WebDataSource isDownloading]):
              (-[WebDataSource downloadPath]):
              * WebView.subproj/WebDataSourcePrivate.h:
              * WebView.subproj/WebDataSourcePrivate.m:
              (-[WebDataSourcePrivate dealloc]):
              (-[WebDataSource _commitIfReady]):
              (-[WebDataSource _setIsDownloading:]):
              (-[WebDataSource _setDownloadPath:]):
              * WebView.subproj/WebMainResourceClient.m:
              (-[WebMainResourceClient receivedError:]):
              (-[WebMainResourceClient handle:didReceiveResponse:]):
              (-[WebMainResourceClient handleDidFinishLoading:]):
      
      WebBrowser:
      
      	Adjusted for WebKit API changes.
      
              * DownloadProgressEntry.m:
              (+[DownloadProgressEntry entryWithDataSource:]):
              (-[DownloadProgressEntry path]):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@2623 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      6bf718ab
    • mjs's avatar
      WebKit: · 5fa22083
      mjs authored
      	Don't ask for the content policy any more if the previous policies
      	said to save - in effect this means to ask only if the previous
      	policies said to use the content policy. Also, remove now-useless
      	previous content policy parameter from content policy delegate.
      
              * WebView.subproj/WebControllerPolicyDelegate.h:
              * WebView.subproj/WebDataSourcePrivate.m:
      	(-[WebDataSource _setContentPolicy:]): Retain new policy before
      	releasing the old one.
              * WebView.subproj/WebDefaultPolicyDelegate.m:
              * WebView.subproj/WebMainResourceClient.m:
      	(-[WebMainResourceClient handle:didReceiveResponse:]): Don't ask
      	for content policy if the delegate already decided to save.
      
      WebBrowser:
      
      	Adjusted for WebKit API change.
      
              * BrowserWebController.m:
              (-[BrowserWebController contentPolicyForResponse:andRequest:inFrame:]):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@2622 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      5fa22083