Timeline
Nov 15, 2004:
- 5:34 PM Changeset in webkit [8020] by
-
- 2 edits in trunk/WebCore
Reviewed by Chris and Darin.
<rdar://problem/3880304> Non-linear performance hit for style changes
- khtml/xml/dom_nodeimpl.cpp: (NodeImpl::traverseNextNode): (NodeImpl::traverseNextSibling): (NodeImpl::traversePreviousNodePostOrder): Return 0 rather than traversing beyond stayWithin when this == stayWithin. Add asserts that stayWithin is an ancestor of the returned node.
- 5:24 PM Changeset in webkit [8019] by
-
- 4 edits in trunk/JavaScriptCore
Fixed <rdar://problem/3880561> Default string value of ObjC object in JS should be [obj description].
Reviewed by Hyatt.
- bindings/objc/objc_instance.mm: (ObjcInstance::stringValue):
- bindings/objc/objc_utility.h:
- bindings/objc/objc_utility.mm: (KJS::Bindings::convertNSStringToString): (KJS::Bindings::convertObjcValueToValue):
- 5:04 PM Changeset in webkit [8018] by
-
- 6 edits in trunk/WebCore
Reviewed by Ken.
- fixed <rdar://problem/3880036> Many leaks from CSSComputedStyleDeclarationImpl::getPropertyCSSValue, seen in Mail and Blot
- khtml/css/css_computedstyle.cpp: (DOM::CSSComputedStyleDeclarationImpl::getPropertyValue): Ref and deref the value returned from getPropertyCSSValue, since there's no guarantee it's already ref'd.
- khtml/css/css_valueimpl.cpp: (CSSStyleDeclarationImpl::getPropertyValue): Wrap result in a CSSValue to ref/deref. (CSSStyleDeclarationImpl::get4Values): Ref/deref explicitly. (CSSStyleDeclarationImpl::getShortHandValue): Ditto. (CSSStyleDeclarationImpl::merge): Ditto. (CSSStyleDeclarationImpl::diff): Ditto.
- khtml/editing/htmlediting.cpp: (khtml::StyleChange::currentlyHasStyle): Ditto. (khtml::ApplyStyleCommand::removeCSSStyle): Ditto.
- khtml/html/html_baseimpl.cpp: (HTMLBodyElementImpl::parseHTMLAttribute): Ditto.
- khtml/html/html_tableimpl.cpp: (HTMLTableElementImpl::parseHTMLAttribute): Ditto.
- 4:47 PM Changeset in webkit [8017] by
-
- 24 edits in trunk/WebCore
Reviewed by Ken.
Use separate mutable style and computed style types as appropriate.
For now this should have no effect, but it prepares us for refactoring later.
Also remove some unnecessary "DOM::" prefixes and in one case factor out
some shared code.
- khtml/khtml_part.cpp: (KHTMLPart::typingStyle): (KHTMLPart::setTypingStyle): (updateState): (KHTMLPart::selectionHasStyle): (KHTMLPart::selectionStartHasStyle): (KHTMLPart::selectionComputedStyle):
- khtml/khtml_part.h:
- khtml/khtmlpart_p.h:
- khtml/css/css_base.h:
- khtml/css/css_ruleimpl.cpp: (CSSStyleRuleImpl::setDeclaration):
- khtml/css/css_ruleimpl.h: (DOM::CSSFontFaceRuleImpl::style): (DOM::CSSPageRuleImpl::style): (DOM::CSSStyleRuleImpl::style): (DOM::CSSStyleRuleImpl::declaration):
- khtml/css/css_valueimpl.h: (DOM::CSSPrimitiveValueImpl::):
- khtml/css/cssparser.cpp: (CSSParser::parseValue): (CSSParser::parseColor): (CSSParser::parseDeclaration): (CSSParser::createStyleDeclaration):
- khtml/css/cssparser.h:
- khtml/css/cssstyleselector.cpp: (khtml::CSSStyleSelector::addMatchedDeclaration): (khtml::CSSStyleSelector::matchRulesForList): (khtml::CSSStyleSelector::styleForElement): (khtml::CSSStyleSelector::applyDeclarations):
- khtml/css/cssstyleselector.h:
- khtml/css/parser.cpp:
- khtml/css/parser.y:
- khtml/dom/css_rule.h:
- khtml/dom/css_stylesheet.h:
- khtml/dom/css_value.h:
- khtml/dom/dom2_views.cpp:
- khtml/xml/dom2_viewsimpl.cpp: (DOM::AbstractViewImpl::getComputedStyle):
- khtml/xml/dom_docimpl.cpp: (DocumentImpl::importNode): (DocumentImpl::setStyleSheet):
- khtml/xml/dom_docimpl.h:
- khtml/xml/dom_xmlimpl.cpp: (DOM::ProcessingInstructionImpl::setStyleSheet):
- khtml/xml/dom_xmlimpl.h:
- khtml/dom/css_value.cpp: (DOM::throwException): Added. (DOM::CSSStyleDeclaration::setCssText): Call throwException, but always on 0 for now. The real thing is coming with the next change to refactor. (DOM::CSSPrimitiveValue::setFloatValue): Call throwException. (DOM::CSSPrimitiveValue::setStringValue): Ditto.
- 4:29 PM Changeset in webkit [8016] by
-
- 4 edits in trunk/WebCore
Reviewed by Ken.
- fixed <rdar://problem/3878489> REGRESSION: modifying attribute of <textarea> blows away edited text (breaks simplemachines.org forum)
- khtml/xml/dom_nodeimpl.h: Added boolean "children changed" parameter to dispatchSubtreeModifiedEvent, so it can be called in cases where only the node's attributes changed without sending a misleading childrenChanged call, but the childrenChanged call can happen at the exact right moment.
- khtml/xml/dom_nodeimpl.cpp: Removed some uneeded "DOM::". (NodeImpl::dispatchSubtreeModifiedEvent): Only call "children changed" if the boolean true is passed in.
- khtml/xml/dom_elementimpl.cpp: (NamedAttrMapImpl::addAttribute): Pass false for "children changed". (NamedAttrMapImpl::removeAttribute): Ditto.
- 4:25 PM Changeset in webkit [8015] by
-
- 6 edits in trunk/WebKit
Fixed: <rdar://problem/3880410> save 5 dirty pages by soft-linking against PDFKit framework
Reviewed by john.
- WebKit.pbproj/project.pbxproj:
- WebView.subproj/WebPDFRepresentation.m: (+[WebPDFRepresentation PDFDocumentClass]): new (-[WebPDFRepresentation finishedLoadingWithDataSource:]): use PDFDocumentClass
- WebView.subproj/WebPDFView.h:
- WebView.subproj/WebPDFView.m: (+[WebPDFView PDFKitBundle]): new (+[WebPDFView PDFViewClass]): new (-[WebPDFView initWithFrame:]): create a PDFView subview (-[WebPDFView dealloc]): release the PDFView subview (-[WebPDFView PDFSubview]): new
- 3:36 PM Changeset in webkit [8014] by
-
- 2 edits in trunk/WebKit
Fixed: <rdar://problem/3879891> WebKit should link against PDFKit instead of Quartz
Reviewed by darin.
- WebKit.pbproj/project.pbxproj: link against PDFKit if it is present instead of Quartz.framework
- 2:52 PM Changeset in webkit [8013]
-
- 71 copies2 deletes in tags/WebCore-125~8~11
This commit was manufactured by cvs2svn to create tag
'WebCore-125~8~11'.
- 2:52 PM Changeset in webkit [8012] by
-
- 2 edits in branches/Safari-1-2-branch/WebCore
versioning for December Security Update, WebCore-125.8.11
- 2:08 PM Changeset in webkit [8011] by
-
- 2 edits in trunk/WebCore
Reviewed by Ken.
- fixed <rdar://problem/3880075> leak in CSSStyleDeclarationImpl::copyPropertiesInSet, seen often in Mail and Blot
- khtml/css/css_valueimpl.cpp: (CSSStyleDeclarationImpl::copyPropertiesInSet): delete temporary list after we're done using it
- 12:33 PM Changeset in webkit [8010] by
-
- 2 edits in trunk/WebCore
Fixed leak (3879883) that John found. Early return leaked
allocated instance.
Reviewed by John.
- khtml/css/css_computedstyle.cpp: (DOM::CSSComputedStyleDeclarationImpl::getPropertyCSSValue):
- 12:29 PM Changeset in webkit [8009] by
-
- 3 edits in trunk/WebKit
Fixed missing retain of image property data.
Reviewed by John.
- WebCoreSupport.subproj/WebImageData.h:
- WebCoreSupport.subproj/WebImageData.m: (-[WebImageData dealloc]): (-[WebImageData _invalidateImages]): (-[WebImageData imageAtIndex:]): (-[WebImageData propertiesAtIndex:]): (-[WebImageData _frameDuration]):
- 11:53 AM Changeset in webkit [8008] by
-
- 4 edits in trunk/WebCore
Reviewed by John
Fix for this bug:
<rdar://problem/3879569> Many leaks in EditCommand mechanism, seen in Mail
Fixed a couple of object lifetime issues. The EditCommand class used to hold an
EditCommandPtr to its parent, but this caused a a reference cycle in composite
commands as the children held a ref to their parent. Now, the parent variable
is a non-retained reference to an EditCommand *. It would be nice to have a
weak reference to the parent or even override deref in composite commands (but I
can't since deref() is not virtual). However, this should be OK since any
dangling parent pointer is a sign of a bigger object lifetime problem that
would need to be addressed anyway.
- khtml/css/css_valueimpl.cpp: (CSSStyleDeclarationImpl::CSSStyleDeclarationImpl): Fix bug in constructor that takes a QPtrList<CSSProperty> *. List values must be copied into newly-allocated list, rather than just assigning the list variable passed in to the local list variable, or the list will be double-deleted.
- khtml/editing/htmlediting.cpp: (khtml::EditCommand::setStartingSelection): No longer call get(). m_parent is no longer a smart pointer. (khtml::EditCommand::setEndingSelection): Ditto. (khtml::EditCommand::assignTypingStyle): Short-circuit if passed in style is identical to current style. Unrelated to the change, but saves some ref's and deref's. (khtml::EditCommand::setTypingStyle): No longer call get(). m_parent is no longer a smart pointer.
- khtml/editing/htmlediting.h: Change m_parent to a EditCommand *. Was an EditCommandPtr. Using an EditCommandPtr caused a reference cycle in composite commands as the children held a ref to their parent. (khtml::EditCommand::parent): No longer call get(). m_parent is no longer a smart pointer.
- 11:50 AM Changeset in webkit [8007] by
-
- 3 edits in trunk/WebCore
Reviewed by Kevin.
<rdar://problem/3807080> Safari so slow it seems like a hang accessing a page on an IBM website
- khtml/xml/dom_nodeimpl.cpp: (NodeListImpl::NodeListImpl): Initialize isItemCacheValid, renamed isCacheValid to isLengthCacheValid. (NodeListImpl::recursiveLength): Adjusted for rename. (NodeListImpl::recursiveItem): Cache the last item accessed and its offset. If the same offset is looked up again, just return it, otherwise, if looking up a later offset, start at the last item and proceed from there. (NodeListImpl::itemById): Apply the special document optimization to all nodes that are either a document or in a document - just walk up to make sure the node found by ID has the root node as an ancestor. (NodeListImpl::rootNodeSubtreeModified): Adjust both cache bits.
- khtml/xml/dom_nodeimpl.h: Prototype new stuff.
- 11:16 AM Changeset in webkit [8006] by
-
- 5 edits in trunk/WebKit
Cache image properties and frame durations.
Create NSImage and TIFF representations from CGImage, lazily, as needed for
dragging and element info dictionary.
Reviewed by John.
- WebCoreSupport.subproj/WebImageData.h:
- WebCoreSupport.subproj/WebImageData.m: (-[WebImageData dealloc]): (-[WebImageData size]): (-[WebImageData propertiesAtIndex:]): (-[WebImageData _frameDurationAt:]): (-[WebImageData _frameDuration]):
- WebCoreSupport.subproj/WebImageRenderer.h:
- WebCoreSupport.subproj/WebImageRenderer.m: (-[WebImageRenderer dealloc]): (-[WebImageRenderer TIFFRepresentation]): (-[WebImageRenderer image]):
- 10:53 AM Changeset in webkit [8005] by
-
- 3 edits in trunk/WebKit
Reviewed by John.
<rdar://problem/3879226> WebKit needlessly uses extra memory to store icon refcounts as NSNumbers
- Misc.subproj/WebIconDatabase.m: (-[WebIconDatabase init]): (-[WebIconDatabase _setIconURL:forURL:]): (-[WebIconDatabase _retainIconForIconURLString:]): (-[WebIconDatabase _releaseIconForIconURLString:]): (-[WebIconDatabase _retainFutureIconForURL:]): (-[WebIconDatabase _releaseFutureIconForURL:]):
- Misc.subproj/WebIconDatabasePrivate.h:
- 9:20 AM Changeset in webkit [8004] by
-
- 2 edits in trunk/WebCore
Reviewed by Ken.
- fixed <rdar://problem/3879539> leak of NSString after pasting into editable HTML (e.g. Mail)
- kwq/KWQKHTMLPart.mm: (KWQKHTMLPart::documentFragmentWithText): release mutable copy of string after we're done using it
- 8:54 AM Changeset in webkit [8003] by
-
- 2 edits in trunk/WebKit
Reviewed by Ken.
- fixed <rdar://problem/3879513> leak in [WebArchive _propertyListRepresentation] copying HTML to pasteboard
- WebView.subproj/WebArchive.m: (-[WebArchive _propertyListRepresentation]): the array holding the subresources was not released after use, oops!
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.