Fix for 3478435, <hr> tags should be centered by default. Ditched the 1px margin...
[WebKit-https.git] / WebCore / ChangeLog-2005-08-23
index cc72853..f74397f 100644 (file)
@@ -1,3 +1,611 @@
+2003-11-10  David Hyatt  <hyatt@apple.com>
+
+       Fix for 3478435, <hr> tags should be centered by default.  Ditched the 1px margin as well.
+
+       Fix for 3479441, <h1>-<h6> tags should *not* be centered by default.  They should also use bold instead of
+       bolder.
+       
+        Reviewed by darin
+
+        * khtml/css/html4.css:
+        * khtml/html/html_blockimpl.cpp:
+        (HTMLHRElementImpl::parseAttribute):
+        * layout-tests/apple-only/base/bugzilla.mozilla.org/index-expected.txt:
+        * layout-tests/apple-only/base/home.netscape.com/index-expected.txt:
+        * layout-tests/apple-only/base/www.altavista.com/index-expected.txt:
+        * layout-tests/apple-only/base/www.cnn.com/index-expected.txt:
+        * layout-tests/apple-only/base/www.digitalcity.com/index-expected.txt:
+        * layout-tests/apple-only/base/www.ebay.com/index-expected.txt:
+        * layout-tests/apple-only/base/www.excite.com/index-expected.txt:
+        * layout-tests/apple-only/base/www.mapquest.com/index-expected.txt:
+        * layout-tests/apple-only/base/www.microsoft.com/index-expected.txt:
+        * layout-tests/apple-only/base/www.msnbc.com/index-expected.txt:
+        * layout-tests/apple-only/base/www.nytimes.com/index-expected.txt:
+        * layout-tests/apple-only/base/www.nytimes.com_Table/index-expected.txt:
+        * layout-tests/apple-only/base/www.quicken.com/index-expected.txt:
+        * layout-tests/apple-only/base/www.w3.org_DOML2Core/index-expected.txt:
+        * layout-tests/css1/basic/class_as_selector-expected.txt:
+        * layout-tests/css1/basic/comments-expected.txt:
+        * layout-tests/css1/basic/containment-expected.txt:
+        * layout-tests/css1/basic/contextual_selectors-expected.txt:
+        * layout-tests/css1/basic/grouping-expected.txt:
+        * layout-tests/css1/basic/id_as_selector-expected.txt:
+        * layout-tests/css1/basic/inheritance-expected.txt:
+        * layout-tests/css1/box_properties/border-expected.txt:
+        * layout-tests/css1/box_properties/border_bottom-expected.txt:
+        * layout-tests/css1/box_properties/border_bottom_inline-expected.txt:
+        * layout-tests/css1/box_properties/border_bottom_width-expected.txt:
+        * layout-tests/css1/box_properties/border_bottom_width_inline-expected.txt:
+        * layout-tests/css1/box_properties/border_color-expected.txt:
+        * layout-tests/css1/box_properties/border_color_inline-expected.txt:
+        * layout-tests/css1/box_properties/border_inline-expected.txt:
+        * layout-tests/css1/box_properties/border_left-expected.txt:
+        * layout-tests/css1/box_properties/border_left_inline-expected.txt:
+        * layout-tests/css1/box_properties/border_left_width-expected.txt:
+        * layout-tests/css1/box_properties/border_left_width_inline-expected.txt:
+        * layout-tests/css1/box_properties/border_right-expected.txt:
+        * layout-tests/css1/box_properties/border_right_inline-expected.txt:
+        * layout-tests/css1/box_properties/border_right_width-expected.txt:
+        * layout-tests/css1/box_properties/border_right_width_inline-expected.txt:
+        * layout-tests/css1/box_properties/border_style-expected.txt:
+        * layout-tests/css1/box_properties/border_style_inline-expected.txt:
+        * layout-tests/css1/box_properties/border_top-expected.txt:
+        * layout-tests/css1/box_properties/border_top_inline-expected.txt:
+        * layout-tests/css1/box_properties/border_top_width-expected.txt:
+        * layout-tests/css1/box_properties/border_top_width_inline-expected.txt:
+        * layout-tests/css1/box_properties/border_width-expected.txt:
+        * layout-tests/css1/box_properties/border_width_inline-expected.txt:
+        * layout-tests/css1/box_properties/clear-expected.txt:
+        * layout-tests/css1/box_properties/clear_float-expected.txt:
+        * layout-tests/css1/box_properties/float-expected.txt:
+        * layout-tests/css1/box_properties/float_elements_in_series-expected.txt:
+        * layout-tests/css1/box_properties/float_margin-expected.txt:
+        * layout-tests/css1/box_properties/float_on_text_elements-expected.txt:
+        * layout-tests/css1/box_properties/height-expected.txt:
+        * layout-tests/css1/box_properties/margin-expected.txt:
+        * layout-tests/css1/box_properties/margin_bottom-expected.txt:
+        * layout-tests/css1/box_properties/margin_bottom_inline-expected.txt:
+        * layout-tests/css1/box_properties/margin_inline-expected.txt:
+        * layout-tests/css1/box_properties/margin_left-expected.txt:
+        * layout-tests/css1/box_properties/margin_left_inline-expected.txt:
+        * layout-tests/css1/box_properties/margin_right-expected.txt:
+        * layout-tests/css1/box_properties/margin_right_inline-expected.txt:
+        * layout-tests/css1/box_properties/margin_top-expected.txt:
+        * layout-tests/css1/box_properties/margin_top_inline-expected.txt:
+        * layout-tests/css1/box_properties/padding-expected.txt:
+        * layout-tests/css1/box_properties/padding_bottom-expected.txt:
+        * layout-tests/css1/box_properties/padding_bottom_inline-expected.txt:
+        * layout-tests/css1/box_properties/padding_inline-expected.txt:
+        * layout-tests/css1/box_properties/padding_left-expected.txt:
+        * layout-tests/css1/box_properties/padding_left_inline-expected.txt:
+        * layout-tests/css1/box_properties/padding_right-expected.txt:
+        * layout-tests/css1/box_properties/padding_right_inline-expected.txt:
+        * layout-tests/css1/box_properties/padding_top-expected.txt:
+        * layout-tests/css1/box_properties/padding_top_inline-expected.txt:
+        * layout-tests/css1/box_properties/width-expected.txt:
+        * layout-tests/css1/cascade/cascade_order-expected.txt:
+        * layout-tests/css1/cascade/important-expected.txt:
+        * layout-tests/css1/classification/display-expected.txt:
+        * layout-tests/css1/classification/list_style-expected.txt:
+        * layout-tests/css1/classification/list_style_image-expected.txt:
+        * layout-tests/css1/classification/list_style_position-expected.txt:
+        * layout-tests/css1/classification/list_style_type-expected.txt:
+        * layout-tests/css1/classification/white_space-expected.txt:
+        * layout-tests/css1/color_and_background/background-expected.txt:
+        * layout-tests/css1/color_and_background/background_attachment-expected.txt:
+        * layout-tests/css1/color_and_background/background_color-expected.txt:
+        * layout-tests/css1/color_and_background/background_image-expected.txt:
+        * layout-tests/css1/color_and_background/background_position-expected.txt:
+        * layout-tests/css1/color_and_background/background_repeat-expected.txt:
+        * layout-tests/css1/color_and_background/color-expected.txt:
+        * layout-tests/css1/conformance/forward_compatible_parsing-expected.txt:
+        * layout-tests/css1/font_properties/font-expected.txt:
+        * layout-tests/css1/font_properties/font_family-expected.txt:
+        * layout-tests/css1/font_properties/font_size-expected.txt:
+        * layout-tests/css1/font_properties/font_style-expected.txt:
+        * layout-tests/css1/font_properties/font_variant-expected.txt:
+        * layout-tests/css1/font_properties/font_weight-expected.txt:
+        * layout-tests/css1/formatting_model/canvas-expected.txt:
+        * layout-tests/css1/formatting_model/floating_elements-expected.txt:
+        * layout-tests/css1/formatting_model/height_of_lines-expected.txt:
+        * layout-tests/css1/formatting_model/inline_elements-expected.txt:
+        * layout-tests/css1/formatting_model/replaced_elements-expected.txt:
+        * layout-tests/css1/formatting_model/vertical_formatting-expected.txt:
+        * layout-tests/css1/pseudo/anchor-expected.txt:
+        * layout-tests/css1/pseudo/firstletter-expected.txt:
+        * layout-tests/css1/pseudo/firstline-expected.txt:
+        * layout-tests/css1/pseudo/multiple_pseudo_elements-expected.txt:
+        * layout-tests/css1/pseudo/pseudo_elements_in_selectors-expected.txt:
+        * layout-tests/css1/text_properties/letter_spacing-expected.txt:
+        * layout-tests/css1/text_properties/line_height-expected.txt:
+        * layout-tests/css1/text_properties/text-transform-expected.txt:
+        * layout-tests/css1/text_properties/text_align-expected.txt:
+        * layout-tests/css1/text_properties/text_decoration-expected.txt:
+        * layout-tests/css1/text_properties/text_indent-expected.txt:
+        * layout-tests/css1/text_properties/text_transform-expected.txt:
+        * layout-tests/css1/text_properties/vertical_align-expected.txt:
+        * layout-tests/css1/text_properties/word_spacing-expected.txt:
+        * layout-tests/css1/units/color_units-expected.txt:
+        * layout-tests/css1/units/length_units-expected.txt:
+        * layout-tests/css1/units/percentage_units-expected.txt:
+        * layout-tests/css1/units/urls-expected.txt:
+        * layout-tests/fast/encoding/utf-16-big-endian-expected.txt:
+        * layout-tests/fast/encoding/utf-16-little-endian-expected.txt:
+
+2003-11-10  Chris Blumenberg  <cblu@apple.com>
+
+       Fixed: <rdar://problem/3479266>: selected images don't obey CSS3 selection background-color attribute
+       
+        Reviewed by dave.
+
+        * khtml/rendering/render_image.cpp:
+        (RenderImage::selectionTintColor): new, takes style into account
+        (RenderImage::paintObject): use selectionTintColor
+        * khtml/rendering/render_image.h:
+        * kwq/KWQPainter.h: removed selectedImageTintColor
+        * kwq/KWQPainter.mm:
+
+2003-11-10  David Hyatt  <hyatt@apple.com>
+
+       Fix for 3479287, macro-ize the handling of the CSS 'inherit' value.  This patch is preparation for
+       adding support for the 'initial' value, which will be used to fix the CSS parser's shorthand parsing
+       bugs.
+       
+        Reviewed by kocienda
+
+        * khtml/css/cssparser.cpp:
+        (CSSParser::parseValue):
+        * khtml/css/cssproperties.c:
+        (hash_prop):
+        (findProp):
+        * khtml/css/cssproperties.h:
+        * khtml/css/cssproperties.in:
+        * khtml/css/cssstyleselector.cpp:
+        (khtml::CSSStyleSelector::applyRule):
+        * khtml/khtmlview.cpp:
+        (KHTMLView::layout):
+
+2003-11-10  Chris Blumenberg  <cblu@apple.com>
+
+       Fixed:
+       <rdar://problem/3478883>: REGRESSION (113-114u): drag image for selected text includes unselected images
+       <rdar://problem/3479204>: selected images don't look selected
+
+        Reviewed by dave.
+
+        * khtml/rendering/render_image.cpp:
+        (RenderImage::RenderImage): init m_selectionState
+        (RenderImage::paintObject): draw a tint over the image if selected, don't draw anything if not selected and the action is PaintActionSelection
+        * khtml/rendering/render_image.h:
+        (khtml::RenderImage::selectionState): new
+        (khtml::RenderImage::setSelectionState): new
+        * kwq/KWQPainter.h:
+        * kwq/KWQPainter.mm:
+        (QPainter::selectedImageTintColor): new
+
+2003-11-10  Ken Kocienda  <kocienda@apple.com>
+
+        Reviewed by Hyatt
+
+       Fix for this bug:
+
+       <rdar://problem/3477795>: REGRESSION: can't submit form without 
+       submit button by hitting return (cocoadev.com)
+
+       When I changed submitting forms using the return key in a text field
+       to go through a search for the correct submit or image input 
+       element to use when submitting, I neglected to cover the case of
+       forms which have neither a submit or image input element. When
+       I encounter a form such as this now, I submit it anyway after
+       performing the submit or image input element and failing to find one.
+
+        * khtml/html/html_formimpl.cpp:
+        (HTMLFormElementImpl::performSubmitClick)
+
+2003-11-10  Richard Williamson   <rjw@apple.com>
+
+       Fixed 3478765.  Use ICU to access unicode properties.
+       Fixed 3478831.  Unicode property/conversion functions should be 32 bit savvy.
+
+        Reviewed by Darin.
+
+        * WebCore-combined.exp:
+        * WebCore.exp:
+        * kwq/KWQChar.mm:
+        (QChar::lower):
+        (QChar::upper):
+        (QChar::mirroredChar):
+        * kwq/KWQString.h:
+        (QChar::direction):
+        * kwq/WebCoreUnicode.cpp:
+        * kwq/WebCoreUnicode.h:
+
+2003-11-10  Chris Blumenberg  <cblu@apple.com>
+
+       Fixed: <rdar://problem/3478781>: drag image of selected text and images doesn't include images
+
+        Reviewed by rjw.
+
+        * khtml/rendering/render_image.cpp:
+        (RenderImage::paintObject): paint when the paint action is PaintActionSelection
+        * khtml/rendering/render_replaced.cpp:
+        (RenderReplaced::paint): ditto
+
+2003-11-10  Ken Kocienda  <kocienda@apple.com>
+
+        Reviewed by John
+
+       Fix for this bug:
+
+       <rdar://problem/3477624>: REGRESSION (113): Using input method to 
+       enter non-ascii text submits the form
+
+       This regression has been in the tree for a couple of versions now, 
+       since we improved the way key events are processed. The solution
+       is to ask the text input manager if it has any marked text when
+       the return key (or enter key) is pressed, because if it does, the key
+       needs to work in the "accept" role for the input manager. Fixing
+       in this way has the pleasant effect of making return/enter key
+       behavior "do the right thing" based on context.
+
+        * khtml/html/html_formimpl.cpp:
+        (HTMLInputElementImpl::defaultEventHandler): Add check to see
+       if text input manager has marked text before submitting text
+       and password fields. Broke out key handling for checkboxes and
+       radios, since the old code for these widgets worked fine.
+        * kwq/KWQLineEdit.h: Added hasMarkedText function.
+        * kwq/KWQLineEdit.mm:
+        (QLineEdit::hasMarkedText): Returns whether the current input
+       manager has marked text or not.
+
+2003-11-09  Darin Adler  <darin@apple.com>
+
+        Reviewed by Dave.
+
+        - fixed 3478173 -- REGRESSION (112-113): getElementById is failing for many types of elements
+
+        The problem was that ElementImpl::attach was being skipped for many objects with classes
+        derived from ElementImpl. By changing them all to call up to their base classes instead of
+        skipping levels, the bug went away. This was possible (and easy to do) because of the
+        rendererIsNeeded() change I made a while back.
+
+        * khtml/html/html_baseimpl.cpp:
+        (HTMLFrameElementImpl::attach): Call base class's attach() instead of creating renderer explicitly
+        and then calling NodeBaseImpl::attach(). This was a remnant of the old way of changing the logic
+        about when to create the renderer, not needed now that we have rendererIsNeeded().
+        (HTMLFrameSetElementImpl::attach): Ditto.
+        (HTMLIFrameElementImpl::attach): Ditto.
+
+        * khtml/html/html_formimpl.h: Removed many unused attach() overrides.
+        * khtml/html/html_formimpl.cpp:
+        (HTMLGenericFormElementImpl::attach): Ditto.
+        (HTMLButtonElementImpl::attach): Removed, because now the base class's attach does the right thing.
+        (HTMLFieldSetElementImpl::attach): Ditto.
+        (HTMLInputElementImpl::attach): Removed explicit createRendererIfNeeded call, not needed now that
+        HTMLGenericFormElementImpl calls through to its base class.
+        (HTMLLegendElementImpl::attach): Removed, because now the base class's attach does the right thing.
+        (HTMLSelectElementImpl::attach): Ditto.
+        (HTMLTextAreaElementImpl::attach): Ditto.
+
+        * khtml/html/html_imageimpl.cpp:
+        (HTMLImageElementImpl::attach): Call base class's attach() instead of creating renderer explicitly
+        and then calling NodeBaseImpl::attach().
+        (HTMLImageElementImpl::detach): Call base class's detach() instead of NodeBaseImpl::detach(). No
+        need to skip the ElementImpl::detach() function, and important not to for the new "id" optimization.
+
+        * khtml/html/html_inlineimpl.h: Removed HTMLBRElementImpl::attach override.
+        * khtml/html/html_inlineimpl.cpp: (HTMLBRElementImpl::attach): Call base class's attach() instead
+        of creating renderer explicitly and then calling NodeBaseImpl::attach().
+
+        * khtml/html/html_objectimpl.h: Removed HTMLAppletElementImpl::attach override.
+        * khtml/html/html_objectimpl.cpp:
+        (HTMLAppletElementImpl::attach): Removed, because the base class's attach does the right thing.
+        (HTMLEmbedElementImpl::attach): Call base class's attach() instead of creating renderer explicitly
+        and then calling NodeBaseImpl::attach().
+        (HTMLObjectElementImpl::attach): Ditto.
+
+2003-11-09  David Hyatt  <hyatt@apple.com>
+
+       Fix for 3478317, letter/word-spacing don't inherit properly through italic/bold elements.
+       
+        Reviewed by darin
+
+        * khtml/rendering/font.h:
+        (khtml::Font::Font):
+        * khtml/rendering/render_style.h:
+        (khtml::RenderStyle::setFontDef):
+
+2003-11-09  David Hyatt  <hyatt@apple.com>
+
+       Fix for 3478309, make sure backgrounds paint in the border box and not just in the padding box.
+       
+        Reviewed by darin
+
+       Also making sure that <frame>s aren't transparent, since other browsers seem to only make <iframe>s/<object>s
+       be transparent.
+       
+        * khtml/rendering/render_box.cpp:
+        (RenderBox::paintRootBoxDecorations):
+        (RenderBox::paintBackgroundExtended):
+
+2003-11-08  Darin Adler  <darin@apple.com>
+
+        Reviewed by John.
+
+        - fixed 3478025 -- links with non-Latin-1 characters in the hostname are not getting IDN-encoded
+
+        * kwq/KWQKURL.mm:
+        (KURL::parse): Changed existing code to take advantage of the fact that a NUL character
+        is classified as a path segment end character.
+        (KURL::findHostnameInHierarchicalURL): Don't treat NUL characters as terminating characters
+        for hostnames, because QChar::latin1() turns all non-Latin-1 characters into NUL characters.
+
+2003-11-08  Darin Adler  <darin@apple.com>
+
+        Reviewed by John.
+
+        - fixed 3477509 -- REGRESSION (112-113): crash in KHTMLPart::processObjectRequest at espn.com, chosun.com
+
+        * khtml/khtml_part.cpp: (KHTMLPart::processObjectRequest): Use a dynamic_cast to check the type of the
+        part rather than assuming it's always a KHTMLPart. The crash was caused by casting a KWQPluginPart to
+        KHTMLPart.
+
+2003-11-08  Darin Adler  <darin@apple.com>
+
+        Reviewed by Richard.
+
+        - event cleanup motivated by questions on khtml-devel
+
+        * khtml/dom/dom2_events.h: Removed eventModuleName.
+        * khtml/dom/dom2_events.cpp: Removed eventModuleName.
+
+        * khtml/xml/dom2_eventsimpl.h: Removed eventModuleName, made many trivially simple
+        functions inline, made virtual functions no longer inline. Also made some functions const.
+        (DOM::EventImpl::propagationStopped): Made this non-virtual; there was no reason for
+        it to be virtual I could see.
+        (DOM::EventImpl::defaultPrevented): Ditto.
+        (DOM::EventImpl::setDefaultHandled): Ditto.
+        (DOM::UIEventImpl::view): Made this inline.
+        (DOM::UIEventImpl::detail): Ditto.
+        (DOM::MouseEventImpl::screenX): Ditto.
+        (DOM::MouseEventImpl::screenY): Ditto.
+        (DOM::MouseEventImpl::clientX): Ditto.
+        (DOM::MouseEventImpl::clientY): Ditto.
+        (DOM::MouseEventImpl::layerX): Ditto.
+        (DOM::MouseEventImpl::layerY): Ditto.
+        (DOM::MouseEventImpl::ctrlKey): Ditto.
+        (DOM::MouseEventImpl::shiftKey): Ditto.
+        (DOM::MouseEventImpl::altKey): Ditto.
+        (DOM::MouseEventImpl::metaKey): Ditto.
+        (DOM::MouseEventImpl::button): Ditto.
+        (DOM::MouseEventImpl::relatedTarget): Ditto.
+        (DOM::MutationEventImpl::relatedNode): Ditto.
+        (DOM::MutationEventImpl::prevValue): Ditto.
+        (DOM::MutationEventImpl::newValue): Ditto.
+        (DOM::MutationEventImpl::attrName): Ditto.
+        (DOM::MutationEventImpl::attrChange): Ditto.
+
+        * khtml/ecma/kjs_events.cpp: (KJS::getDOMEvent): Changed implementation to no longer
+        require eventModuleName(), and removed some unneeded casts.
+
+        * khtml/xml/dom2_eventsimpl.cpp: Made lots of functions inline.
+        (EventImpl::isUIEvent): Since this is virtual, make it no longer inline.
+        (EventImpl::isMouseEvent): Ditto.
+        (EventImpl::isMutationEvent): Ditto.
+        (EventImpl::isKeyboardEvent): Ditto.
+        (UIEventImpl::isUIEvent): Ditto.
+        (MouseEventImpl::isMouseEvent): Ditto.
+        (KeyboardEventImpl::isKeyboardEvent): Ditto.
+        (MutationEventImpl::isMutationEvent): Ditto.
+
+2003-11-07  Chris Blumenberg  <cblu@apple.com>
+
+       Fixed: <rdar://problem/3020196>: links with href="" don't show hand cursor when you mouse over them
+
+        Reviewed by darin.
+
+        * khtml/khtmlview.cpp:
+        (KHTMLView::viewportMouseMoveEvent): check if the URL on the event is non-NULL, not if it is non-empty
+
+2003-11-07  Richard Williamson   <rjw@apple.com>
+
+       Fixed 3477067.  Use our case unicode conversion routines.
+
+        Reviewed by Ken.
+
+        * kwq/KWQChar.mm:
+        (QChar::lower):
+        (QChar::upper):
+
+2003-11-06  David Hyatt  <hyatt@apple.com>
+
+       Fixes for 3476717, inline blocks should expand to encompass floats; 3476718, inline blocks should not
+       collapse margins with children; and 3476721, run-ins and compacts can flow into anonymous blocks, even
+       ones that they caused to be created by failing to run in/compact in the first place.
+       
+        Reviewed by darin (inline block fixes only).
+
+        * khtml/rendering/render_block.cpp:
+        (khtml::RenderBlock::layoutBlock):
+        (khtml::RenderBlock::layoutBlockChildren):
+
+2003-11-06  Richard Williamson   <rjw@apple.com>
+
+       Fixed 3476563.  Remove unnecessary call to set view position after load completes.
+        Reviewed by Gramps.
+
+        * khtml/khtml_part.cpp:
+        (KHTMLPart::checkCompleted):
+
+2003-11-06  Chris Blumenberg  <cblu@apple.com>
+
+        * khtml/rendering/render_image.h:
+        (khtml::RenderImage::isDisplayingError): forgot to remove the "virtual" part of the declaration
+
+2003-11-06  Chris Blumenberg  <cblu@apple.com>
+
+       Fixed:
+       <rdar://problem/3275118>: Dragging from missing-image link stretches missing-image icon to size of missing image
+       <rdar://problem/3476225>: assert dragging non-existant images
+
+        Reviewed by rjw.
+
+        * khtml/rendering/render_image.h:
+        (khtml::RenderImage::isDisplayingError): new method, returns true for the broken image
+        * kwq/WebCoreBridge.mm:
+        (-[WebCoreBridge elementAtPoint:]): only provide info if there is an image and the image is not broken
+
+2003-11-06  Ken Kocienda  <kocienda@apple.com>
+
+        Reviewed by Richard
+
+       Fixes for these bugs:
+
+       <rdar://problem/3476006>: Form file input widgets do not scroll 
+       to view when focused
+
+       <rdar://problem/3476007>: Form file input widgets should only 
+       focus when full keyboard access is on
+
+        * kwq/KWQFileButton.h: Added focusPolicy declaration.
+        * kwq/KWQFileButton.mm:
+        (KWQFileButton::focusPolicy): Added. Now works like other buttons.
+       Fixes 3476007.
+        (KWQFileButton::focusChanged): Added. Code similar to text area
+       widgets. Fixes 3476006.
+
+2003-11-06  Chris Blumenberg  <cblu@apple.com>
+
+       Fixed: <rdar://problem/3308609>: 6L60 Safari URL links with line-endings converted to hex by contextual menu
+
+        Reviewed by rjw.
+
+        * kwq/WebCoreBridge.mm:
+        (-[WebCoreBridge elementAtPoint:]): use parseURL to go from an attribute string to a URL string
+
+=== Safari-113 ===
+
+2003-11-06  John Sullivan  <sullivan@apple.com>
+
+        - fixed broken build
+
+        * khtml/xml/dom_docimpl.cpp:
+        (DocumentImpl::completeURL):
+        removed stray character
+
+2003-11-06  Maciej Stachowiak  <mjs@apple.com>
+
+        Reviewed by Darin.
+
+       - fixed 3475366 - 4.5% of time spent making html event listeners on slow intel page.
+
+       6% speedup on intel page, 1% speedup on cvs-base PLT.
+       
+        * khtml/ecma/kjs_events.cpp:
+        (JSEventListener::JSEventListener): Don't add self to hashtable if imp is null (which
+       can now happen in the lazy listener case).
+        (JSEventListener::~JSEventListener): Ditto on removing.
+        (JSEventListener::listenerObj): Made this virtual.
+        (JSLazyEventListener::JSLazyEventListener): New constructor.
+       (JSLazyEventListener::handleEvent): call parseCode, then
+       superclass if it appeared to succeed.
+        (JSLazyEventListener::listenerObj): call parseCode, then superclass.
+        (JSLazyEventListener::parseCode):
+        (KJS::getNodeEventListener): Check for null listenerObjImp in case of
+       lazy listener that failed to parse.
+        * khtml/ecma/kjs_dom.cpp:
+       (DOMNode::getListener): Ditto.
+        * khtml/ecma/kjs_html.cpp:
+        (Image::getValueProperty): Ditto.
+        * khtml/ecma/kjs_events.h:
+       (KJS::JSEventListener::listenerObjImp): call listenerObj() virtual
+       method and get imp from the result.
+        * khtml/ecma/kjs_proxy.cpp:
+        (KJSProxyImpl::createHTMLEventHandler): Don't parse the code here, make a lazy
+       listener.
+        * khtml/ecma/kjs_window.cpp:
+        (Window::getJSLazyEventListener): make a new JSLazyEventListener - no need
+       to check the listeners hashtable cause a brand new lazy listener won't have
+       a function anyway.
+        * khtml/ecma/kjs_window.h: Prototype new method.
+
+2003-11-06  Maciej Stachowiak  <mjs@apple.com>
+
+        Reviewed by Darin.
+
+       - fixed 3475397 - REGRESSION: relative URLs on page load test sometimes contain garbage, leading to missing images
+       
+        * kwq/KWQKURL.mm:
+        (KURL::KURL): When constructing from NSURL, null-terminate the raw
+       bytes since KURL::parse expects a null-terminated C string. It
+       might be even better to pass a length to parse, but this fix is
+       simple and does the job.
+
+2003-11-05  Darin Adler  <darin@apple.com>
+
+        Reviewed by Maciej.
+
+        - fixed 3475109 -- support keyboard event object properties of altkey, ctrlKey, shiftKey
+
+        We had the DOM Level 3 KeyboardEvent class already; I just had to add JavaScript bindings.
+
+        * khtml/ecma/kjs_events.h: Added DOMKeyboardEvent class.
+        * khtml/ecma/kjs_events.cpp:
+        (KJS::getDOMEvent): Added code to make a DOMKeyboardEvent if the event is a DOM::KeyboardEvent.
+        (DOMKeyboardEvent::~DOMKeyboardEvent): Added.
+        (DOMKeyboardEvent::classInfo): Added.
+        (DOMKeyboardEvent::tryGet): Added.
+        (DOMKeyboardEvent::getValueProperty): Added.
+        (DOMKeyboardEventProtoFunc::tryCall): Added.
+
+        * khtml/dom/dom2_events.cpp:
+        (KeyboardEvent::keyIdentifier): Added.
+        (KeyboardEvent::keyLocation): Added.
+
+        * khtml/ecma/kjs_events.lut.h: Regenerated.
+
+2003-11-05  Maciej Stachowiak  <mjs@apple.com>
+
+        Reviewed by John.
+
+       - fixed 3475092 - Notifying the bridge about duplicate images takes 13% of time on intel page
+
+       Another 15% speedup on the intel page.
+
+       This also results in a 3% speedup on cvs-base PLT! (or maybe that was my last change)
+       
+        * kwq/KWQLoader.mm:
+        (KWQServeRequest): Note that we told the bridge about the load.
+        (KWQCheckCacheObjectStatus): Don't tell the bridge about the load
+       if we have alrady; if we do tell it, then note it down.
+        * kwq/KWQKHTMLPart.h:
+        * kwq/KWQKHTMLPart.mm:
+        (KWQKHTMLPart::didTellBridgeAboutLoad): Helper method for the above.
+        (KWQKHTMLPart::haveToldBridgeAboutLoad): Ditto.
+        (KWQKHTMLPart::clear): Clear our idea of what URLs we told the bridge about.
+        * khtml/khtml_part.h: make clear() virtual.
+
+2003-11-05  Darin Adler  <darin@apple.com>
+
+        * WebCore-combined.exp: Checked in generated file.
+
+2003-11-05  Richard Williamson   <rjw@apple.com>
+
+       Fixed 3474957.  Changed name of image rendering method to better reflect it's actual function.
+
+       - (void)beginAnimationInRect:(NSRect)ir fromRect:(NSRect)fr;
+
+       renamed to
+
+       - (void)drawImageInRect:(NSRect)ir fromRect:(NSRect)fr;
+
+        Reviewed by Chris.
+
+        * kwq/KWQPainter.mm:
+        (QPainter::drawPixmap):
+        * kwq/WebCoreImageRenderer.h:
+
 2003-11-05  Darin Adler  <darin@apple.com>
 
         * WebCore-tests.exp: Added missing symbol so tests will link.