1. 14 Nov, 2002 1 commit
    • 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
  2. 13 Nov, 2002 16 commits
    • darin's avatar
      - fixed 3100895 -- REGRESSION: Crash (was assertion) on http://www.w3.org/Style/CSS/ · 53a8ad15
      darin authored
              * khtml/rendering/render_text.h: Add an optional arena parameter to deleteSlaves.
              * khtml/rendering/render_text.cpp:
              (RenderText::detach): Pass the render arena in to deleteSlaves.
              (RenderText::deleteSlaves): Use the passed-in arena.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@2667 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      53a8ad15
    • darin's avatar
      WebFoundation: · 82240090
      darin authored
              * Misc.subproj/WebAssertions.m: (vprintf_stderr_objc):
      	Don't use displayableString. Makes us able to build on Panther.
      
              * WebFoundation.pbproj/project.pbxproj: Project Builder wanted to touch this.
      
      WebCore:
      
      	- fixed another crash on http://www.w3.org/Style/CSS/, but still not done
      
              * khtml/rendering/render_box.cpp: (RenderBox::setStyle): Call renderArena()
      	from RenderObject rather than going at the document directly. Safer because
      	it works even when we don't have a node yet.
              * khtml/rendering/render_flow.cpp: (RenderFlow::addChild): Ditto.
              * khtml/rendering/render_layer.cpp:
              (RenderLayer::paint): Ditto.
              (RenderLayer::nodeAtPoint): Ditto.
              (RenderLayer::constructZTree): Ditto.
              * khtml/rendering/render_list.cpp:
              (RenderListItem::setStyle): Ditto.
              * khtml/rendering/render_text.cpp:
              (RenderText::deleteSlaves): Ditto.
              (RenderText::position): Ditto. This is the one that actually crashed.
      
              * khtml/misc/makeattrs: Fixed handling of failure case.
              * khtml/misc/maketags: Ditto.
      
              * WebCore.pbproj/project.pbxproj: Project Builder wanted to touch this.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@2666 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      82240090
    • darin's avatar
      - fixed 3100895 -- REGRESSION: Assertion on http://www.w3.org/Style/CSS/ · aed62356
      darin authored
      	A few arena-related fixes.
      
              * khtml/rendering/bidi.h: Don't define the operator new without the arena parameter.
      	That way, we get a link failure if we use it by accident, rather than an assert at runtime.
      	It would be even better to get a compile-time error, but I don't know how to make that happen.
              * khtml/rendering/render_layer.h: Ditto.
              * khtml/rendering/render_object.h: Ditto.
              * khtml/rendering/render_text.h: Ditto.
      
              * khtml/rendering/render_container.cpp:
              (RenderContainer::addChild): Create the RenderTable with the appropriate arena.
              (RenderContainer::insertPseudoChild): Create the RenderFlow objects with the appropriate arena.
      
              * khtml/rendering/render_text.cpp: (RenderText::deleteSlaves): Don't try to get the arena
      	when there are no slaves. This can happen after the element is nil, and in that case we will
      	do a nil-dereference.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@2665 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      aed62356
    • darin's avatar
      WebCore: · 9aa61f37
      darin authored
              * kwq/KWQLineEdit.mm: (QLineEdit::sizeForCharacterWidth):
      	Use the "0" instead of the "x" as the canonical character for width.
      	This is slightly wider and is better for credit card numbers, for example.
      
              * WebCore.pbproj/project.pbxproj: Tweak.
      
      WebBrowser:
      
              * English.lproj/StringsNotToBeLocalized.txt: Let the script sort this file.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@2664 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      9aa61f37
    • darin's avatar
      - fixed 3099930 -- dates/times without time zones are parsed as UTC by kjs, · 65d708f3
      darin authored
      	local time by other browsers
      
              * kjs/date_object.cpp:
              (DateProtoFuncImp::call): Handle the NaN case better, like Mozilla and OmniWeb.
              (DateObjectFuncImp::call): Return NaN rather than Undefined() for bad dates.
              (KJS::parseDate): Return NaN rather than Undefined() or 0 for bad dates.
              (KJS::KRFCDate_parseDate): Return -1 rather than 0 for bad dates.
      	Assume local time if no time zone is passed. Don't return 1 if we parse 0.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@2663 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      65d708f3
    • 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
    • vicki's avatar
      tiny change made by rjw to fix build breakage · f44c6e70
      vicki authored
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@2661 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      f44c6e70
    • 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
    • hyatt's avatar
      Fix for floats. Force relayout if collapsing margins · c6ead7fe
      hyatt authored
      	have to adjust the position of an object.
      
              * khtml/rendering/render_flow.cpp:
              (RenderFlow::layoutBlockChildren):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@2659 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c6ead7fe
    • 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
    • hyatt's avatar
      Rewrite cellpadding to not use the style system at all and · 80844874
      hyatt authored
      	to make table cells just get the padding from the table
      	itself (overriding style).
      
              * khtml/html/html_tableimpl.cpp:
              (HTMLTableElementImpl::HTMLTableElementImpl):
              (HTMLTableElementImpl::attach):
              (HTMLTableElementImpl::parseAttribute):
              (HTMLTableCellElementImpl::init):
              * khtml/html/html_tableimpl.h:
              * khtml/rendering/bidi.cpp:
              (RenderFlow::layoutInlineChildren):
              * khtml/rendering/render_box.cpp:
              (RenderBox::contentWidth):
              (RenderBox::contentHeight):
              * khtml/rendering/render_flow.cpp:
              (RenderFlow::layoutBlockChildren):
              (RenderFlow::leftOffset):
              (RenderFlow::rightOffset):
              (RenderFlow::calcMinMaxWidth):
              * khtml/rendering/render_object.h:
              * khtml/rendering/render_table.cpp:
              (RenderTable::RenderTable):
              (RenderTableCell::paddingTop):
              (RenderTableCell::paddingBottom):
              (RenderTableCell::paddingLeft):
              (RenderTableCell::paddingRight):
              * khtml/rendering/render_table.h:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@2657 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      80844874
    • kocienda's avatar
      Bump WebCore cache to 4 MB (was 1 MB). · 28b09116
      kocienda authored
              * khtml/misc/loader.cpp
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@2656 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      28b09116
    • darin's avatar
      - fixed 3073230 -- JavaScript time calls do I/O by lstat()ing /etc/localtime · 8b276747
      darin authored
              * kjs/date_object.cpp:
              (formatDate): Added.
              (formatTime): Added.
              (formatLocaleDate): Added.
              (formatLocaleTime): Added.
              (DateProtoFuncImp::call): Changed to use the above functions instead of
      	using strftime.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@2655 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      8b276747
    • 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
  3. 12 Nov, 2002 22 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
    • hyatt's avatar
      Fix for 3032869, the background image for the body was being · de8798e2
      hyatt authored
      	propagated up to the root properly but was not being tiled over
      	the whole canvas.
      
              * khtml/rendering/render_box.cpp:
              (RenderBox::printBackground):
              * khtml/rendering/render_html.cpp:
              (RenderHtml::printBoxDecorations):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@2650 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      de8798e2
    • 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
    • hyatt's avatar
      Fix the top of moveabletype.org. The maxwidth/minwidth · 76b81603
      hyatt authored
      	calculation for blocks with inline content did not properly
      	deal with margins and padding on inline elements like <a>.
      
              * khtml/rendering/render_flow.cpp:
              (RenderFlow::calcInlineMinMaxWidth):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@2648 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      76b81603
    • hyatt's avatar
      Fix for 2953367, padding is incorrectly inherited into table cells · 1e39e214
      hyatt authored
      	and also incorrectly overrides cellpadding on the table itself.
      	Fixes dailyf1.com.
      
              * khtml/css/html4.css:
              * khtml/html/html_tableimpl.cpp:
              (HTMLTableElementImpl::parseAttribute):
              (HTMLTableCellElementImpl::init):
              * khtml/html/html_tableimpl.h:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@2647 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      1e39e214
    • 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
    • hyatt's avatar
      For now make text/xml files use HTML parsing/documents. · 5b288376
      hyatt authored
      	This avoids the infinite loop we get into when loading
      	text/xml.  If/when we finally support XML, we can undo
      	this change.
      
              * khtml/khtml_part.cpp:
              (KHTMLPart::begin):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@2644 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      5b288376
    • hyatt's avatar
      Fix for 3086321, stylesheets not loading if titles are · a40eb069
      hyatt authored
      	specified.  Note that 4 of the pages on the PLT were
      	affected by this, so I fully expect a slight performance
      	degradation (the boost from the regression was artificial).
      
              * khtml/xml/dom_docimpl.cpp:
              (DocumentImpl::recalcStyleSelector):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@2643 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      a40eb069
    • 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
      Oops, removed debugging. · 80eba2b5
      rjw authored
              * khtml/rendering/font.cpp:
              (Font::drawText):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@2641 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      80eba2b5
    • 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
    • hyatt's avatar
      Revert floats so that they don't use layers any more. · 90f427a7
      hyatt authored
      	Floats have to be able to paint in between the background
      	and foreground of inlines, so they can't have layers.
      
              * khtml/rendering/render_box.cpp:
              (RenderBox::setStyle):
              * khtml/rendering/render_flow.cpp:
              (RenderFlow::printObject):
              (RenderFlow::paintFloats):
              (RenderFlow::addOverHangingFloats):
              (RenderFlow::nodeAtPoint):
              * khtml/rendering/render_flow.h:
              * khtml/rendering/render_layer.cpp:
              (RenderLayer::constructZTree):
              * khtml/rendering/render_list.cpp:
              (RenderListItem::printObject):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@2639 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      90f427a7
    • 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
    • darin's avatar
      * kwq/KWQCursor.mm: (QCursor::QCursor): Use nil instead of [NSCursor arrowCursor]. · 0f12f1aa
      darin authored
      	This will probably fix the performance regression.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@2637 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      0f12f1aa
    • darin's avatar
      - fixed 3080250 -- Hands-free crash at wired.com in · 42eff377
      darin authored
      	KHTMLPart::slotChildStarted
      
              * kwq/KWQListImpl.mm:
              (KWQListImpl::~KWQListImpl): Set the node of each iterator to NULL too,
      	not just the list. This is the bug fix for the bug above.
              (KWQListIteratorImpl::toFirst): Check for list of NULL.
              (KWQListIteratorImpl::toLast): ditto.
      
              * kwq/KWQSlot.mm: Tweaks.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@2636 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      42eff377
    • hyatt's avatar
      This patch lands a rewrite of whitespace-handling in the · 33f8d493
      hyatt authored
      	layout engine and adds support for the CSS2 white-space
      	property.
      
      	It also includes a rewrite of inlines' min/max width
      	calculations (for both flow inlines and raw text).
      
      	A problem with <form> margins has been fixed (this is a
      	regression I caused with my collapsing margin checkin).
      
              * WebCore.pbproj/project.pbxproj:
              * khtml/css/html4.css:
              * khtml/html/dtd.cpp:
              (DOM::checkChild):
              * khtml/html/html_baseimpl.cpp:
              (HTMLBodyElementImpl::attach):
              (HTMLFrameElementImpl::attach):
              (HTMLFrameSetElementImpl::attach):
              (HTMLHtmlElementImpl::attach):
              (HTMLIFrameElementImpl::attach):
              * khtml/html/html_formimpl.cpp:
              (HTMLFormElementImpl::HTMLFormElementImpl):
              (HTMLInputElementImpl::attach):
              (HTMLSelectElementImpl::attach):
              (HTMLTextAreaElementImpl::attach):
              * khtml/html/html_formimpl.h:
              * khtml/html/html_imageimpl.cpp:
              (HTMLImageElementImpl::attach):
              * khtml/html/html_inlineimpl.cpp:
              (HTMLBRElementImpl::attach):
              * khtml/html/html_objectimpl.cpp:
              (HTMLAppletElementImpl::attach):
              (HTMLEmbedElementImpl::attach):
              (HTMLObjectElementImpl::attach):
              * khtml/html/htmlparser.cpp:
              (KHTMLParser::reset):
              (KHTMLParser::parseToken):
              (KHTMLParser::insertNode):
              (KHTMLParser::popBlock):
              (KHTMLParser::popOneBlock):
              * khtml/html/htmlparser.h:
              * khtml/html/htmltokenizer.cpp:
              (HTMLTokenizer::addPending):
              (HTMLTokenizer::write):
              * khtml/misc/arena.cpp: Added.
              (CeilingLog2):
              (InitArenaPool):
              (ArenaAllocate):
              (ArenaGrow):
              (FreeArenaList):
              (ArenaRelease):
              (FreeArenaPool):
              (FinishArenaPool):
              (ArenaFinish):
              * khtml/misc/arena.h: Added.
              * khtml/rendering/bidi.cpp:
              (BidiIterator::detach):
              (throw):
              (BidiIterator::operator delete):
              (appendRunsForObject):
              (appendRun):
              (RenderFlow::bidiReorderLine):
              (deleteMidpoints):
              (RenderFlow::layoutInlineChildren):
              (RenderFlow::findNextLineBreak):
              * khtml/rendering/bidi.h:
              * khtml/rendering/render_arena.cpp: Added.
              (RenderArena::RenderArena):
              (RenderArena::~RenderArena):
              (RenderArena::allocate):
              (RenderArena::free):
              * khtml/rendering/render_arena.h: Added.
              * khtml/rendering/render_box.cpp:
              (RenderBox::setStyle):
              (RenderBox::~RenderBox):
              (RenderBox::detach):
              * khtml/rendering/render_box.h:
              * khtml/rendering/render_br.cpp:
              (RenderBR::RenderBR):
              * khtml/rendering/render_container.cpp:
              (RenderContainer::~RenderContainer):
              (RenderContainer::detach):
              * khtml/rendering/render_container.h:
              * khtml/rendering/render_flow.cpp:
              (RenderFlow::setStyle):
              (RenderFlow::layout):
              (RenderFlow::calcInlineMinMaxWidth):
              (RenderFlow::calcBlockMinMaxWidth):
              (RenderFlow::calcMinMaxWidth):
              (RenderFlow::addChild):
              (RenderFlow::makeChildrenNonInline):
              * khtml/rendering/render_flow.h:
              * khtml/rendering/render_html.cpp:
              (RenderHtml::RenderHtml):
              * khtml/rendering/render_layer.cpp:
              (RenderLayer::~RenderLayer):
              (throw):
              (RenderLayer::operator delete):
              (RenderLayer::detach):
              (RenderLayer::paint):
              (RenderLayer::nodeAtPoint):
              (RenderLayer::constructZTree):
              (RenderLayer::RenderLayerElement::operator delete):
              (RenderLayer::RenderLayerElement::detach):
              (RenderLayer::RenderZTreeNode::operator delete):
              (RenderLayer::RenderZTreeNode::detach):
              * khtml/rendering/render_layer.h:
              * khtml/rendering/render_list.cpp:
              (RenderListItem::setStyle):
              * khtml/rendering/render_object.cpp:
              (throw):
              (RenderObject::operator delete):
              (RenderObject::createObject):
              (RenderObject::renderArena):
              (RenderObject::detach):
              * khtml/rendering/render_object.h:
              * khtml/rendering/render_replaced.cpp:
              (RenderWidget::detach):
              * khtml/rendering/render_replaced.h:
              * khtml/rendering/render_root.cpp:
              (RenderRoot::RenderRoot):
              * khtml/rendering/render_table.cpp:
              (RenderTable::addChild):
              (RenderTable::calcWidth):
              (RenderTable::setCellWidths):
              (RenderTableSection::addChild):
              (RenderTableRow::addChild):
              * khtml/rendering/render_text.cpp:
              (TextSlave::detach):
              (throw):
              (TextSlave::operator delete):
              (TextSlaveArray::TextSlaveArray):
              (RenderText::RenderText):
              (RenderText::~RenderText):
              (RenderText::detach):
              (RenderText::deleteSlaves):
              (RenderText::trimmedMinMaxWidth):
              (RenderText::calcMinMaxWidth):
              (RenderText::position):
              * khtml/rendering/render_text.h:
              * khtml/xml/dom_docimpl.cpp:
              (DocumentImpl::DocumentImpl):
              (DocumentImpl::~DocumentImpl):
              (DocumentImpl::attach):
              (DocumentImpl::detach):
              * khtml/xml/dom_docimpl.h:
              * khtml/xml/dom_nodeimpl.cpp:
              (NodeImpl::detach):
              (NodeImpl::isReadOnly):
              (NodeImpl::previousRenderer):
              * khtml/xml/dom_nodeimpl.h:
              * khtml/xml/dom_stringimpl.cpp:
              * khtml/xml/dom_stringimpl.h:
              * khtml/xml/dom_textimpl.cpp:
              (CharacterDataImpl::containsOnlyWhitespace):
              (TextImpl::attach):
              * khtml/xml/dom_textimpl.h:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@2635 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      33f8d493
    • 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
      - fixed 3094819 -- Crash in -[KWQObjectTimerTarget timerFired] · 57335807
      darin authored
              * kwq/KWQObject.mm: (QObject::~QObject): Call the _destroyed signal.
              (QObject::killTimers): Simplify the code a bit using makeObjectsPerformSelector:.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@2633 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      57335807
    • darin's avatar
      - fixed 3079499 -- blank page at http://www.sonyericsson.com/T68i/ · 0fe57232
      darin authored
              * khtml/misc/loader.cpp:
              (CachedCSSStyleSheet::checkNotify): Copy the clients list before iterating
      	over it, since clients can move around in the list or be removed.
              (CachedScript::checkNotify): Ditto.
              (CachedImage::do_notify): Ditto.
              (CachedImage::movieStatus): Ditto.
      
      	- fixed double calls to openURL I noticed
      
              * khtml/khtml_part.cpp: (KHTMLPart::processObjectRequest):
      	Don't call openURL here at all. That happens indirectly as a result
      	of the load we kick off.
      
              * kwq/KWQKHTMLPart.mm: Tweaks.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@2632 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      0fe57232
    • 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
  4. 11 Nov, 2002 1 commit
    • 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