Timeline
Jun 20, 2005:
- 5:08 PM Changeset in webkit [9444] by
-
- 3 edits in trunk/WebKit
Reviewed by Chris Blumenberg.
- fixed <rdar://problem/4155182> icon database retain counts can be incorrect after removing all icons
Replaced the concept of "future retain count per page URL" with a simpler concept of "retain count per
page URL", which is maintained even after the icon is actually loaded (unlike the future retain count).
The total retain count for an icon is now the sum of the retain counts per page URL along with any retain
count not associated with a page URL -- this is still needed for some internal housekeeping purposes.
- Misc.subproj/WebIconDatabasePrivate.h: renamed iconURLToURLs -> iconURLToPageURLs for clarity renamed URLToIconURL -> pageURLToIconURL for clarity renamed futureURLToRetainCount -> pageURLToRetainCount (there's no more "future" aspect) renamed iconURLToRetainCount -> iconURLToExtraRetainCount (it now maintains only some of the retain count)
- Misc.subproj/WebIconDatabase.m: (+[WebIconDatabase sharedIconDatabase]): updated for name changes only (-[WebIconDatabase init]): ditto (-[WebIconDatabase iconForURL:withSize:cache:]): ditto (-[WebIconDatabase iconURLForURL:]): ditto (-[WebIconDatabase retainIconForURL:]): just bump the retain count in pageURLToRetainCount, instead of behaving differently based on whether an icon had been loaded for this URL; this let me delete the internal method _retainFutureIconForURL: (-[WebIconDatabase releaseIconForURL:]): decrement the retain count in pageURLToRetainCount, then handle the case where the retain count for this page has gone to zero. I deleted the internal method _releaseFutureIconForURL: formerly called here. (-[WebIconDatabase removeAllIcons]): remove all the code that dealt with retain counts; this operation no longer affects retain counts (-[WebIconDatabase _setIconURL:forURL:]): remove the code that consolidated multiple retain counts for different page URLs into a single retain count; the multiple retain counts are now maintained even after the icon is loaded (-[WebIconDatabase _clearDictionaries]): updated for name changes only (-[WebIconDatabase _loadIconDictionaries]): ditto (-[WebIconDatabase _updateFileDatabase]): ditto (-[WebIconDatabase _totalRetainCountForIconURLString:]): new method, sums the retain counts associated with specific page URLs and the extra retain count not associated with specific page URLs (-[WebIconDatabase _retainIconForIconURLString:]): updated for name changes (-[WebIconDatabase _forgetIconForIconURLString:]): no longer affects retain counts at all; this is up to callers (-[WebIconDatabase _releaseIconForIconURLString:]): this now distinguishes the case where the retain count not associated with any page URLs hits zero from the case where the total retain count hits zero, and handles both
- 3:40 PM Changeset in webkit [9443] by
-
- 2 edits in trunk/WebKitTools
Reviewed by Justin Garcia.
- Scripts/run-webkit-tests: Report number of tests when they succeed.
- 3:00 PM Changeset in webkit [9442] by
-
- 5 edits in trunk/WebKit
Reviewed by Chris Blumenberg.
- added support for emptying the icon database
- Misc.subproj/WebIconDatabase.h: just fixed a typo
- Misc.subproj/WebIconDatabasePrivate.h: added WebPendingPublic category with method removeAllIcons, and declared WebIconDatabaseDidRemoveAllIconsNotification string.
- Misc.subproj/WebIconDatabase.m: (-[WebIconDatabase removeAllIcons]): new method, removes all known icons from memory and disk. There's one loose end, covered by radar bug 4155182, where it's possible for the icon database's retain counts to get off after this operation. I plan to fix this next. (-[WebIconDatabase _setIconURL:forURL:]): just fixed some extra whitespace (-[WebIconDatabase _forgetIconForIconURLString:]): new method, extracted from _releaseIconForIconURLString (-[WebIconDatabase _releaseIconForIconURLString:]): now calls extracted method
- WebKit.exp: added _WebIconDatabaseDidRemoveAllIconsNotification
- 2:59 PM Changeset in webkit [9441] by
-
- 28 edits2 adds in trunk
Patch from Mark Rowe <opendarwin.org@bdash.net.nz>, reviewed by me.
Test cases added:
- tests/mozilla/expected.html: Updated for two fixed tests.
- also added a layout test
- bindings/objc/objc_runtime.h:
- bindings/objc/objc_runtime.mm: (ObjcFallbackObjectImp::hasOwnProperty):
- bindings/runtime_array.cpp: (RuntimeArrayImp::hasOwnProperty):
- bindings/runtime_array.h:
- bindings/runtime_object.cpp: (RuntimeObjectImp::hasOwnProperty):
- bindings/runtime_object.h:
- kjs/array_instance.h:
- kjs/array_object.cpp: (ArrayInstanceImp::hasOwnProperty):
- kjs/function.cpp: (KJS::FunctionImp::hasOwnProperty): (KJS::ActivationImp::hasOwnProperty):
- kjs/function.h:
- kjs/object.cpp: (KJS::ObjectImp::hasProperty): (KJS::ObjectImp::hasOwnProperty):
- kjs/object.h: (KJS::Object::hasOwnProperty):
- kjs/object_object.cpp: (ObjectPrototypeImp::ObjectPrototypeImp): (ObjectProtoFuncImp::call):
- kjs/object_object.h: (KJS::ObjectProtoFuncImp::):
- kjs/string_object.cpp: (StringInstanceImp::hasOwnProperty):
- kjs/string_object.h:
WebCore:
Patch from Mark Rowe <opendarwin.org@bdash.net.nz>, reviewed by me.
Test cases added:
- layout-tests/fast/js/hasOwnProperty-expected.txt: Added.
- layout-tests/fast/js/hasOwnProperty.html: Added.
- also fixed two mozilla JS tests
- khtml/ecma/kjs_binding.h:
- khtml/ecma/kjs_css.cpp: (KJS::DOMCSSStyleDeclaration::hasOwnProperty):
- khtml/ecma/kjs_css.h:
- khtml/ecma/kjs_dom.cpp: (KJS::DOMNodeList::hasOwnProperty): (KJS::DOMNamedNodeMap::hasOwnProperty):
- khtml/ecma/kjs_dom.h:
- khtml/ecma/kjs_html.cpp: (KJS::HTMLDocument::hasOwnProperty): (KJS::KJS::HTMLElement::hasOwnProperty): (KJS::KJS::HTMLCollection::hasOwnProperty):
- khtml/ecma/kjs_html.h:
- khtml/ecma/kjs_window.cpp: (KJS::Window::hasOwnProperty): (KJS::Konqueror::hasOwnProperty):
- khtml/ecma/kjs_window.h:
- 11:20 AM Changeset in webkit [9440] by
-
- 2 edits2 adds in trunk
Changes by Darin. Layout tests by me. Reviewed by me.
Fixed <rdar://problem/4152454> crash in KJS::ExprStatementNode::execute(KJS::ExecState*) in World Clock widget with TOT.
Test cases added:
- layout-tests/fast/dom/gc-4-expected.txt: Added.
- layout-tests/fast/dom/gc-4.html: Added.
- khtml/ecma/kjs_html.cpp: (KJS::Context2D::mark): mark now (1) checks for NULL pointers and (2) calls mark on its parent class (DOMObject::mark).
Jun 19, 2005:
- 10:52 PM Changeset in webkit [9439] by
-
- 3 edits2 adds in trunk
Changes by both Anders Carlsson and me.
Reviewed by Maciej and me.
Test cases added:
- layout-tests/fast/forms/element-order-expected.txt: Added.
- layout-tests/fast/forms/element-order.html: Added.
- fixed <http://bugzilla.opendarwin.org/show_bug.cgi?id=3503> form.elements[] not order-preserving when elements added via DOM
- khtml/html/html_formimpl.h: Added formElementIndex.
- khtml/html/html_formimpl.cpp: (DOM::insertIntoVector): Added. (DOM::HTMLFormElementImpl::formElementIndex): Added. Computes an appropriate index for a form element, given the document position relative to the other elements. (DOM::HTMLFormElementImpl::registerFormElement): Use formElementIndex to determine where to insert the element in the formElements array.
- 10:24 PM Changeset in webkit [9438] by
-
- 13 edits in trunk/WebCore
Changes by Anders Carlsson and me.
Reviewed by Maciej and me.
Test cases added: None. Could not figure out how to automate a test without
making enhancements to DumpRenderTree.
- fixed <rdar://problem/4141141> Onselect event is ignored with TEXTAREA and INPUT also <http://bugzilla.opendarwin.org/show_bug.cgi?id=3256>
- khtml/html/html_formimpl.cpp: (DOM::HTMLTextAreaElementImpl::select): Remove unneeded explicit call to onSelect() here -- now handled by the renderer.
- khtml/rendering/render_form.h: Added declarations as needed below.
- khtml/rendering/render_form.cpp: (RenderFormElement::slotSelectionChanged): Add base class implementation that does nothing. (RenderLineEdit::RenderLineEdit): Connect the selection changed signal to our slot. (RenderLineEdit::slotSelectionChanged): Call onSelect when selection changes to something that's a selection (not a caret). (RenderTextArea::RenderTextArea): Connect as above. (RenderTextArea::slotSelectionChanged): Call as above.
- kwq/KWQLineEdit.h: Added declarations as needed below.
- kwq/KWQLineEdit.mm: (QLineEdit::QLineEdit): Added selectionChanged signal. (QLineEdit::hasSelectedText): Added.
- kwq/KWQSlot.mm: (KWQSlot::KWQSlot): Make selectionChanged work on any form element. (KWQSlot::call): ditto.
- kwq/KWQTextArea.h: Added hasSelection method.
- kwq/KWQTextArea.mm: (-[KWQTextArea textViewDidChangeSelection:]): Added. Sends selectionChanged signal, except if we're in the middle of gaining or losing first responder. (-[KWQTextArea hasSelection]): Added. (-[KWQTextAreaTextView becomeFirstResponder]): Added. Sets flag to tell us we're in a responder change (using a count to avoid trouble if we reenter). (-[KWQTextAreaTextView resignFirstResponder]): Ditto. (-[KWQTextAreaTextView inResponderChange]): Added.
- kwq/KWQTextEdit.h: Added declarations as needed below.
- kwq/KWQTextEdit.mm: (QTextEdit::QTextEdit): Added selectionChanged signal. (QTextEdit::hasSelectedText): Added.
- kwq/KWQTextField.h: Added declarations as needed below.
- kwq/KWQTextField.mm: (-[KWQTextFieldController initWithTextField:QLineEdit:]): Fixed up to do the right thing with the result of the init function we call. (-[KWQTextFieldController controlTextDidEndEditing:]): Removed call to setHasFocus:NO since it's a little too late by the time the control is called; now handled by the text view delegate methods below. (-[KWQTextFieldController hasSelection]): Added. (-[KWQTextFieldController setHasFocus:]): Sets the new hasFocusAndSelectionSet after new focus and selection are both set up. (-[KWQTextFieldController textViewDidChangeSelection:]): Added. Sends the selection changed signal. (-[KWQTextField initWithQLineEdit:]): Fixed up to do the right thing with the result of the init function we call. (-[KWQTextField textViewDidChangeSelection:]): Added. Calls super and then calls the controller. (-[KWQTextField textDidEndEditing:]): Added. Calls setHasFocus:NO and then calls super. (-[KWQSecureTextField initWithQLineEdit:]): Same as above, but for secure text fields. (-[KWQSecureTextField textViewDidChangeSelection:]): Ditto. (-[KWQSecureTextField textDidEndEditing:]): Ditto. (-[KWQSearchField initWithQLineEdit:]): Same as above, but for search fields. (-[KWQSearchField textViewDidChangeSelection:]): Ditto. (-[KWQSearchField textDidEndEditing:]): Ditto. (-[KWQTextFieldFormatter init]): Fixed up to do the right thing with the result of the init function we call.
- 6:20 PM Changeset in webkit [9437] by
-
- 2 edits in trunk/WebKit
Changes by Mitz Pettel
Reviewed by me.
- fixed <http://bugzilla.opendarwin.org/show_bug.cgi?id=3466> ATSUI text doesn't render at coordinates greater than 32K
- WebCoreSupport.subproj/WebTextRenderer.m: (-[WebTextRenderer _ATSU_drawRun:style:geometry:]): Translate the matrix of the CGContext instead of passing the appropriate coordinates to ATSU.