Timeline
Nov 14, 2004:
- 9:18 PM Changeset in webkit [8002] by
-
- 2 edits in trunk/WebCore
Reviewed by mjs.
fixed: <rdar://problem/3823038> LEAK: huge leak in DOM::HTMLElementImpl::createContextualFragment(DOM::DOMString const&, bool)
- khtml/html/html_elementimpl.cpp: (HTMLElementImpl::setInnerHTML): uses the ref counting system to deallocate fragments instead of explicitly invoking a destructor. (HTMLElementImpl::setOuterHTML): function is responsible for derefing the fragment prior to returning. Now it does.
Nov 13, 2004:
- 6:07 PM Changeset in webkit [8001] by
-
- 6 edits in trunk/WebCore
Reviewed by Kevin.
<rdar://problem/3878766> VIP: Program listings pages at directv.com takes 75% of time traversing NodeLists
- khtml/dom/dom_node.cpp: (NodeList::itemById): New method, just forward to impl.
- khtml/dom/dom_node.h: Prototype it.
- khtml/ecma/kjs_dom.cpp: (DOMNodeList::tryGet): Instead of looping over the whole list to do by-id access, let the NodeList do it. The NodeList might be able to do it more efficiently.
- khtml/xml/dom_nodeimpl.cpp: (NodeListImpl::itemById): Optimize for the case where the NodeList covers the whole document. In this case, just use getElementById, then check that the element satisfies the list criteria. (ChildNodeListImpl::nodeMatches): Return true only if the node is our child. (TagNodeListImpl::TagNodeListImpl): Irrelevant change to reformat initializers.
- khtml/xml/dom_nodeimpl.h:
Nov 12, 2004:
- 6:54 PM Changeset in webkit [8000] by
-
- 2 edits in trunk/WebCore
Reviewed by Gramps.
- fixed another bug in the last checkin, isCacheValid was unitialized, resulting in sometimes using a huge bogus length value.
- khtml/xml/dom_nodeimpl.cpp: (NodeListImpl::NodeListImpl): Initialize isCacheValid.
- 6:53 PM Changeset in webkit [7999] by
-
- 1 edit in trunk/WebCore/ChangeLog-2005-08-23
Reviewed by NOBODY (OOPS!).
- fixed another bug in the last checkin, isCacheValid was unitialized, resulting in sometimes using a huge bogus length value.
- khtml/xml/dom_nodeimpl.cpp: (NodeListImpl::NodeListImpl): Initialize isCacheValid.
- 6:12 PM Changeset in webkit [7998] by
-
- 2 edits in trunk/WebCore
Reviewed by Maciej.
- fixed an infinite loop in that last check-in
- khtml/xml/dom_nodeimpl.cpp: (NodeImpl::notifyLocalNodeListsSubtreeModified): Added a ++i to the loop so it won't get stuck on the first element in the list.
- 5:12 PM Changeset in webkit [7997] by
-
- 3 edits in trunk/WebCore
Reviewed by Kevin.
- fixed <rdar://problem/3878183> Safari is 77% slower than it should be on a page on an IBM website due to NodeListImpl length
I fixed this by changing NodeLists to cache their length, but
invalidate it whenever there is a change in the DOM subtree at
which they are rooted. This makes NodeListImpl::recursiveLength()
drop completely off the profile, since we were repeatedly getting
a length for the same NodeList over and over.
- khtml/xml/dom_nodeimpl.cpp: (NodeImpl::NodeImpl): (NodeImpl::~NodeImpl): (NodeImpl::registerNodeList): (NodeImpl::unregisterNodeList): (NodeImpl::notifyLocalNodeListsSubtreeModified): (NodeImpl::notifyNodeListsSubtreeModified): (NodeImpl::dispatchSubtreeModifiedEvent): (NodeListImpl::NodeListImpl): (NodeListImpl::~NodeListImpl): (NodeListImpl::recursiveLength): (NodeListImpl::recursiveItem): (NodeListImpl::rootNodeSubtreeModified): (ChildNodeListImpl::ChildNodeListImpl): (ChildNodeListImpl::length): (ChildNodeListImpl::item): (TagNodeListImpl::TagNodeListImpl): (TagNodeListImpl::length): (TagNodeListImpl::item): (NameNodeListImpl::NameNodeListImpl): (NameNodeListImpl::length): (NameNodeListImpl::item):
- khtml/xml/dom_nodeimpl.h:
- 2:04 PM Changeset in webkit [7996] by
-
- 12 edits in trunk/WebCore
Reviewed by Maciej.
- various small cleanups
- khtml/xml/dom_docimpl.h: Added policyBaseURL and setPolicyBaseURL.
- khtml/html/html_documentimpl.h: Removed policyBaseURL and setPolicyBaseURL.
- khtml/xml/xml_tokenizer.h: Marked isWaitingForScripts const.
- khtml/xml/xml_tokenizer.cpp: (khtml::XMLTokenizer::isWaitingForScripts): Marked const.
- khtml/html/htmltokenizer.h: Marked isWaitingForScripts const.
- khtml/html/htmltokenizer.cpp: (khtml::HTMLTokenizer::isWaitingForScripts): Marked const. (khtml::HTMLTokenizer::setOnHold): Took out extraneous line of code.
- khtml/khtml_part.h: Removed docImpl function.
- khtml/khtml_part.cpp: Ditto.
- khtml/xml/dom_docimpl.cpp: (DocumentImpl::close): Simplified code that implements the "redirect during onload" optimization. Now uses isScheduledLocationChangePending.
- kwq/KWQKHTMLPart.h: Removed now-unused _firstResponderAtMouseDownTime.
- kwq/KWQKHTMLPart.mm: Removed _firstResponderAtMouseDownTime (forgot to land this part of the change last time, which is why the build broke). (KWQKHTMLPart::updatePolicyBaseURL): Use xmlDocImpl instead of docImpl. (KWQKHTMLPart::setPolicyBaseURL): Ditto. (KWQKHTMLPart::keyEvent): Ditto. (KWQKHTMLPart::dispatchCPPEvent): Ditto. (KWQKHTMLPart::bodyBackgroundColor): Ditto.
- 12:49 PM Changeset in webkit [7995] by
-
- 2 edits in trunk/WebKit
WebKit:
Fixed: <rdar://problem/3874577> Opening restricted (parental) content in new window/tab reveals Safari's "Resources" folder
Reviewed by john.
- WebView.subproj/WebDefaultContextMenuDelegate.m: (-[WebDefaultUIDelegate openFrameInNewWindow:]): use the unreachable URL if there is one
WebBrowser:
Fixed: <rdar://problem/3874577> Opening restricted (parental) content in new window/tab reveals Safari's "Resources" folder
Reviewed by john.
- ContextMenuHandler.m: (-[BrowserWebView openFrameInNewTab:]): use the unreachable URL if there is one
- 12:19 PM Changeset in webkit [7994] by
-
- 2 edits in trunk/WebCore
<rdar://problem/3843312> REGRESSION: Tabbing into content area puts insertion point at start, should go to where it last was
Reviewed by rjw.
- kwq/KWQKHTMLPart.mm: (KWQKHTMLPart::nextKeyViewInFrameHierarchy): only blow away selection when another view is focused
- 12:06 PM Changeset in webkit [7993] by
-
- 3 edits in trunk
versioning for TOT, Safari 2.0 (171+)
- 12:00 PM Changeset in webkit [7992]
-
- 2 copies in tags/Safari-171
This commit was manufactured by cvs2svn to create tag 'Safari-171'.
- 12:00 PM Changeset in webkit [7991] by
-
- 6 edits in trunk
Safari-171 stamp
- 10:35 AM Changeset in webkit [7990] by
-
- 2 edits in trunk/WebCore
Reviewed by Kevin.
- fixed a couple places that would not work for XML documents
- khtml/ecma/kjs_window.cpp: (Window::isSafeScript): Use xmlDocImpl instead of docImpl, since the function we're using is present on the base class. (WindowFunc::tryCall): More of the same.
- 9:58 AM Changeset in webkit [7989] by
-
- 8 edits in trunk/WebCore
- land versions of these files generated by the newer gperf
People building on Panther will continue to see these files modified.
A workaround would be to install the newer gperf on our Tiger build machines.
- khtml/css/cssproperties.c: Regenerated.
- khtml/css/cssvalues.c: Regenerated.
- khtml/html/doctypes.cpp: Regenerated.
- khtml/html/kentities.c: Regenerated.
- khtml/misc/htmlattrs.c: Regenerated.
- khtml/misc/htmltags.c: Regenerated.
- kwq/KWQColorData.c: Regenerated.
Nov 11, 2004:
- 6:55 PM Changeset in webkit [7988] by
-
- 2 edits in trunk/WebKit
Report actual size (not partial size) but use partial size
when drawing.
Reviewed by Maciej.
- WebCoreSupport.subproj/WebImageData.h:
- WebCoreSupport.subproj/WebImageData.m: (-[WebImageData size]):
- 6:22 PM Changeset in webkit [7987] by
-
- 2 edits in trunk/WebCore
Fix build horkage from previous checkin.
- kwq/KWQKHTMLPart.h:
- 5:49 PM Changeset in webkit [7986] by
-
- 4 edits in trunk/WebCore
Reviewed by John.
- fixed <rdar://problem/3846152> REGRESSION (125-166): can't drag text out of <input type=text> fields
- kwq/WebCoreBridge.h: Added wasFirstResponderAtMouseDownTime: method.
- kwq/KWQKHTMLPart.h: Removed _firstResponderAtMouseDownTime.
- kwq/KWQKHTMLPart.mm: (KWQKHTMLPart::passWidgetMouseDownEventToWidget): Use the new wasFirstResponderAtMouseDownTime: method on the bridge instead of _firstResponderAtMouseDownTime. This will return YES for the case where we started with the NSTextField as first responder, and then took focus away and gave it back, which makes dragging text work again. (KWQKHTMLPart::mouseDown): Removed code to set _firstResponderAtMouseDownTime.
- 5:29 PM Changeset in webkit [7985] by
-
- 5 edits in trunk/WebKit
Reviewed by John.
- added _wasFirstResponderAtMouseDownTime method to bridge so we can fix <rdar://problem/3846152> REGRESSION (125-166): can't drag text out of <input type=text> fields with a subsequent change to WebCore.
- WebCoreSupport.subproj/WebBridge.m: (wasFirstResponderAtMouseDownTime:): Added. Calls _wasFirstResponderAtMouseDownTime on the WebHTMLView. (_getPreSmartSet): Move global inside the function, add (void) for cleanliness. (_getPostSmartSet): Ditto.
- WebView.subproj/WebHTMLView.m: (-[WebHTMLViewPrivate dealloc]): Release firstResponderAtMouseDownTime. (-[WebHTMLView _setMouseDownEvent:]): Early exit if event is not changing. Set firstResponderAtMouseDownTime to the first responder. (-[WebHTMLView mouseDown:]): Release firstResponderAtMouseDownTime after handling the mouseDown event. (-[WebHTMLView _wasFirstResponderAtMouseDownTime:]): Added. Uses the firstResponderAtMouseDownTime field.
- WebView.subproj/WebHTMLViewInternal.h: Added firstResponderAtMouseDownTime field and _wasFirstResponderAtMouseDownTime method.
- English.lproj/StringsNotToBeLocalized.txt: Update for recent changes.
- 5:11 PM Changeset in webkit [7984] by
-
- 3 edits in trunk/WebKit
Reviewed by Chris.
Work-around to minimize impact of 3876764. Cache frame durations
after first call. So we'll still leak 1K for each animated
image, but that's better than 1K each time the frame is drawn!
- WebCoreSupport.subproj/WebImageData.h:
- WebCoreSupport.subproj/WebImageData.m: (-[WebImageData _frameDuration]):
Simplified animation cleanup code. Fixed leak due to
incorrect key passed to CFDictionaryRemoveValue.
(+[WebImageData stopAnimationsInView:]):
(-[WebImageData addAnimatingRenderer:inView:]):
(-[WebImageData removeAnimatingRenderer:]):
(-[WebImageData _stopAnimation]):
- 3:55 PM Changeset in webkit [7983] by
-
- 2 edits in trunk/WebCore
Disable the tokenizer deferral, since it hurts the PLT by 3% or so.
Reviewed by vicki
- khtml/html/htmltokenizer.cpp: (khtml::HTMLTokenizer::continueProcessing):
- 3:49 PM Changeset in webkit [7982] by
-
- 5 edits in trunk/WebCore
Reviewed by Maciej
- khtml/editing/htmlediting.cpp: (khtml::InsertLineBreakCommand::doApply): Use new isLastVisiblePositionInBlock() helper instead of old isLastInBlock() member function on VisiblePosition. This is a cosmetic change in keeping with the prevailing style for the VisiblePosition class.
- khtml/editing/htmlediting.h: Move isLastVisiblePositionInNode() function to visible_position.[cpp|h] files.
- khtml/editing/visible_position.cpp: Removed isLastInBlock() helper. Renamed to isLastVisiblePositionInBlock(). (khtml::visiblePositionsInDifferentBlocks): New helper method. (khtml::isLastVisiblePositionInBlock): Ditto. (khtml::isLastVisiblePositionInNode): Ditto.
- khtml/editing/visible_position.h: Add declarations for new functions.
- 3:15 PM Changeset in webkit [7981] by
-
- 4 edits in trunk/WebCore
Reviewed by Hyatt
- khtml/editing/htmlediting.cpp: (khtml::CompositeEditCommand::deleteInsignificantText): Call new compareBoundaryPoints convenience. (khtml::ApplyStyleCommand::removeBlockStyle): Ditto. (khtml::ApplyStyleCommand::removeInlineStyle): Ditto. (khtml::ApplyStyleCommand::nodeFullySelected): Ditto. (khtml::DeleteSelectionCommand::initializePositionData): Ditto.
- khtml/xml/dom2_rangeimpl.cpp: (DOM::RangeImpl::compareBoundaryPoints): New convenience variant of this function which takes two Position objects.
- khtml/xml/dom2_rangeimpl.h: Ditto.
- 2:59 PM Changeset in webkit [7980] by
-
- 2 edits in trunk/WebKit
Reviewed by Maciej.
- fixed <rdar://problem/3605906> Flash scrolled off the top and bottom cause CPU spin when combined with something dirty on the visible part of the page
- WebView.subproj/WebHTMLView.m: (-[WebHTMLView drawRect:]): Work around AppKit bug by using rectangles from getRectsBeingDrawn:count: instead of using the passed-in rectangle.
- 2:23 PM Changeset in webkit [7979] by
-
- 4 edits24 adds in trunk
Reviewed by Harrison
Some improvements to deleting when complete lines are selected.
- khtml/editing/htmlediting.cpp: (khtml::DeleteSelectionCommand::initializePositionData): Detect when the line containing the end of a selection is fully selected. Turn off block merging in this case. (khtml::DeleteSelectionCommand::handleSpecialCaseBRDelete): Fix a bug in the check for whether a BR immediately followed a block. The old code could erroneously skip nodes. (khtml::DeleteSelectionCommand::handleGeneralDelete): Add a case for when the entire start block is selected. This new code will now delete this block in one call, rather than iterating over each child.
- khtml/editing/visible_position.cpp: (khtml::visiblePositionsOnDifferentLines): New helper called in initializePositionData() to do the work mentioned above in the comment for that function. (khtml::isFirstVisiblePositionOnLine): Ditto. (khtml::isLastVisiblePositionOnLine): Ditto.
- khtml/editing/visible_position.h: Add new functions.
- layout-tests/editing/deleting/delete-line-001-expected.txt: Added.
- layout-tests/editing/deleting/delete-line-001.html: Added.
- layout-tests/editing/deleting/delete-line-002-expected.txt: Added.
- layout-tests/editing/deleting/delete-line-002.html: Added.
- layout-tests/editing/deleting/delete-line-003-expected.txt: Added.
- layout-tests/editing/deleting/delete-line-003.html: Added.
- layout-tests/editing/deleting/delete-line-004-expected.txt: Added.
- layout-tests/editing/deleting/delete-line-004.html: Added.
- layout-tests/editing/deleting/delete-line-005-expected.txt: Added.
- layout-tests/editing/deleting/delete-line-005.html: Added.
- layout-tests/editing/deleting/delete-line-006-expected.txt: Added.
- layout-tests/editing/deleting/delete-line-006.html: Added.
- layout-tests/editing/deleting/delete-line-007-expected.txt: Added.
- layout-tests/editing/deleting/delete-line-007.html: Added.
- layout-tests/editing/deleting/delete-line-008-expected.txt: Added.
- layout-tests/editing/deleting/delete-line-008.html: Added.
- layout-tests/editing/deleting/delete-line-009-expected.txt: Added.
- layout-tests/editing/deleting/delete-line-009.html: Added.
- layout-tests/editing/deleting/delete-line-010-expected.txt: Added.
- layout-tests/editing/deleting/delete-line-010.html: Added.
- layout-tests/editing/deleting/delete-line-011-expected.txt: Added.
- layout-tests/editing/deleting/delete-line-011.html: Added.
- layout-tests/editing/deleting/delete-line-012-expected.txt: Added.
- layout-tests/editing/deleting/delete-line-012.html: Added.
- 1:35 PM Changeset in webkit [7978] by
-
- 1 edit in trunk/WebKit/ChangeLog
Replaced NOBODY with John.
- 1:35 PM Changeset in webkit [7977] by
-
- 2 edits in trunk/WebKit
Work-arounds to make new ImageIO code work correctly. Still
disabled for now. Requires at least Tiger 300. Testing does
show a 3% improvement in PLT tests! That's huge!
Reviewed by NOBODY (OOPS!).
- WebCoreSupport.subproj/WebImageData.m: (-[WebImageData imageAtIndex:]): (-[WebImageData incrementalLoadWithBytes:length:complete:]): (-[WebImageData isNull]):
- 10:09 AM Changeset in webkit [7976] by
-
- 2 edits in trunk/WebCore
Reviewed by Adele
- khtml/editing/htmlediting.cpp: (khtml::DeleteSelectionCommand::initializePositionData): Add some comments and a new piece of debugging output.
- 9:49 AM Changeset in webkit [7975] by
-
- 3 edits4 adds in trunk
Reviewed by John
Fix for these bugs:
<rdar://problem/3875618> REGRESSION (Mail): Hitting down arrow with full line selected skips line (br case)
<rdar://problem/3875641> REGRESSION (Mail): Hitting down arrow with full line selected skips line (div case)
- khtml/editing/selection.cpp: (khtml::Selection::modifyMovingRightForward): Fixed by juggling the position as the starting point for the next line position when necessary.
- layout-tests/editing/selection/move-3875618-fix-expected.txt: Added.
- layout-tests/editing/selection/move-3875618-fix.html: Added.
- layout-tests/editing/selection/move-3875641-fix-expected.txt: Added.
- layout-tests/editing/selection/move-3875641-fix.html: Added.
- 7:35 AM Changeset in webkit [7974] by
-
- 3 edits in trunk/WebCore
Reviewed by John
Improved some function names, at John's urging. No changes to the
functions themselves.
canPerformSpecialCaseAllContentDelete() --> handleSpecialCaseAllContentDelete()
canPerformSpecialCaseBRDelete() --> handleSpecialCaseBRDelete()
performGeneralDelete() --> handleGeneralDelete()
- khtml/editing/htmlediting.cpp: (khtml::DeleteSelectionCommand::handleSpecialCaseAllContentDelete) (khtml::DeleteSelectionCommand::handleSpecialCaseBRDelete) (khtml::DeleteSelectionCommand::handleGeneralDelete) (khtml::DeleteSelectionCommand::doApply)
- khtml/editing/htmlediting.h
- 7:28 AM Changeset in webkit [7973] by
-
- 3 edits2 adds in trunk
Reviewed by John
Updated some layout test results that changed as a result of my last checking.
Added a new test that has been in my tree for a few days.
- layout-tests/editing/deleting/delete-3775172-fix-expected.txt:
- layout-tests/editing/deleting/delete-3800834-fix-expected.txt:
- layout-tests/editing/inserting/insert-3851164-fix-expected.txt: Added.
- layout-tests/editing/inserting/insert-3851164-fix.html: Added.
- 7:26 AM Changeset in webkit [7972] by
-
- 3 edits in trunk/WebCore
Reviewed by John
- khtml/editing/htmlediting.cpp: (khtml::debugNode): New debugging helper. (khtml::DeleteSelectionCommand::initializePositionData): No longer call obsoleted startPositionForDelete() and endPositionForDelete() functions. Just use the m_selectionToDelete object to determine start and end positions for the delete. (khtml::DeleteSelectionCommand::canPerformSpecialCaseAllContentDelete): New function that creates a special case for deleting all the content in a root editable element. (khtml::DeleteSelectionCommand::doApply): Call canPerformSpecialCaseAllContentDelete() function before BR special case and the general case delete functions.
- khtml/editing/htmlediting.h: Updated for changed functions.
Nov 10, 2004:
- 6:08 PM Changeset in webkit [7971] by
-
- 2 edits in trunk/WebCore
Reviewed by mjs.
Fixed <rdar://problem/3875011> DOMNodeList::tryGet() performs unnecessary (and expensive) dom tree traversals. Improved a loop from 2-n-squared to just n-squared.
- khtml/ecma/kjs_dom.cpp: (DOMNodeList::tryGet): Got rid of an unnecessary node traversal.
- 2:39 PM Changeset in webkit [7970] by
-
- 3 edits in trunk/WebKit
Fixed: <rdar://problem/3396872> ICONS: icon DB inconsistencies can cause slowness during startup, idle and quit
Reviewed by john.
- Misc.subproj/WebFileDatabase.m: (-[WebFileDatabase objectForKey:]): added logging code
- Misc.subproj/WebIconDatabase.m: (-[WebIconDatabase init]): use alloc, init rather than autorelease, retain (-[WebIconDatabase _loadIconDictionaries]): use 1 object for mapping icon URLs to site URLs and vice versa rather than 3. This avoids inconsistencies and is faster. (-[WebIconDatabase _updateFileDatabase]): write 1 object out
- 2:03 PM Changeset in webkit [7969] by
-
- 2 edits in trunk/WebCore
Reviewed by Chris
- khtml/editing/htmlediting.cpp: (khtml::DeleteSelectionCommand::initializePositionData): Move position adjustments for smart delete from the two functions below to here. There was an unnecessary double calculation of the leading and trailing whitespace positions. Also refined the trailing case so it only acts when the leading position is null (which seems to match TextEdit in my tests). Also removed some unnecessary copying of Position objects. (khtml::DeleteSelectionCommand::startPositionForDelete): Move out smart delete adjustment from here. (khtml::DeleteSelectionCommand::endPositionForDelete): Ditto.
- 11:04 AM Changeset in webkit [7968] by
-
- 4 edits in trunk/WebCore
Reviewed by Harrison
(khtml::DeleteSelectionCommand::performGeneralDelete): Add some more comments to
make things more clear.
- khtml/editing/selection.cpp: (khtml::Selection::toRange): Fixed the upstream and downstream calls so that the resulting positions do not cross block boundaries. This was a bug and caused some delete problems when whole blocks were selected. I will be addressing that issue more fully in upcoming changes.
- 8:58 AM Changeset in webkit [7967] by
-
- 2 edits in trunk/WebCore
Reviewed by Harrison
Some cleanups and fixes in upstream and downstream functions.
Removed redundant checks for isBlockFlow() when calling enclosingBlockFlowElement().
Blocks do not need to skip the call to enclosingBlockFlowElement() for fear that the
block's enclosing block will be returned.
Remove code from upstream that confined the serach to block boundaries outside of
the code which runs in the StayInBlock case. This code was redundant, and caused
incorrect results to be returned in the DoNotStayInBlock case.
In downstream, the check for crossing into a new block should use the equivalentDeepPosition()
node, not the the this pointer's node.
- khtml/xml/dom_position.cpp: (DOM::Position::upstream) (DOM::Position::downstream)