⚠ Archived content — this site is no longer maintained.   Current WebKit documentation is at docs.webkit.org.

Timeline



Feb 25, 2005:

5:41 PM Changeset in webkit [8713] by darin
  • 5 edits in trunk/WebCore

Reviewed by Adele.

  • fixed <rdar://problem/4025618> Crash while searching at hollywoodvideo.com
  • khtml/html/html_formimpl.h: Added valueWithDefault.
  • khtml/html/html_formimpl.cpp: (DOM::HTMLInputElementImpl::appendFormData): Call valueWithDefault instead of going at the render object to try to get the default value; there may be no render object if this is display:none. (DOM::HTMLInputElementImpl::valueWithDefault): Added. Knows about the defaults for "submit" and "reset" buttons; otherwise just returns the value as-is.
  • khtml/rendering/render_form.h: Removed the defaultLabel member functions.
  • khtml/rendering/render_form.cpp: (RenderSubmitButton::rawText): Call valueWithDefault instead of using defaultLabel function here on the render side. The DOM needs to know how to deal with the default anyway for form submission. (RenderSubmitButton::defaultLabel): Removed. (RenderResetButton::defaultLabel): Removed. (RenderPushButton::defaultLabel): Removed.
5:03 PM Changeset in webkit [8712] by darin
  • 7 edits in trunk

WebCore:

Reviewed by John.

  • fixed <rdar://problem/4025088> window onblur and onfocus don't fire when text field has focus
  • kwq/KWQKHTMLPart.h: Added setWindowHasFocus function and m_windowHasFocus data member.
  • kwq/KWQKHTMLPart.mm: (KWQKHTMLPart::setDisplaysWithFocusAttributes): Took out the code that sends the focus and blur events. (KWQKHTMLPart::setWindowHasFocus): Put that code here instead.
  • kwq/WebCoreBridge.h: Added setWindowHasFocus: method to the bridge.
  • kwq/WebCoreBridge.mm: (-[WebCoreBridge setWindowHasFocus:]): Added. Calls method on the part.

WebKit:

Reviewed by John.

  • fixed <rdar://problem/4025088> window onblur and onfocus don't fire when text field has focus
  • WebView.subproj/WebHTMLView.m: (-[WebHTMLView updateFocusState]): Renamed from updateFocusDisplay. Added call to setWindowHasFocus: method. (-[WebHTMLView viewDidMoveToWindow]): Call method by new name. (-[WebHTMLView windowDidBecomeKey:]): Ditto. (-[WebHTMLView windowDidResignKey:]): Ditto. (-[WebHTMLView becomeFirstResponder]): Ditto. (-[WebHTMLView resignFirstResponder]): Ditto.
4:43 PM Changeset in webkit [8711] by darin
  • 2 edits in trunk/WebCore

Reviewed by John.

  • re-fixed <rdar://problem/3665430> horizontal scroll bar of text area does not show, even when text is wide in "no wrap" mode
  • kwq/KWQTextArea.mm: (-[KWQTextArea _updateTextViewWidth]): Don't change the text view width to match the text area's width in the "wrap" case.
3:51 PM Changeset in webkit [8710] by kocienda
  • 2 edits in trunk/WebCore

Reviewed by Hyatt

Fix for this bug:

<rdar://problem/4021518> 8A394 Mail crashes during paste: khtml::RootInlineBox::closestLeafChildForXPos

  • khtml/editing/visible_units.cpp: (khtml::previousLinePosition): Adding an updateLayout call at the start of the function fixes the crash, since we caught line boxes in a not-completely-updated state. (khtml::nextLinePosition): Ditto.
3:49 PM Changeset in webkit [8709] by hyatt
  • 2 edits in trunk/WebCore

Fix for 4010774, make sure to avoid an O(N2) algorithm in nextRenderer() that is triggered when large
DOM subtrees are inserted into documents via one insert/append call.

Reviewed by kocienda

  • khtml/xml/dom_nodeimpl.cpp: (NodeImpl::nextRenderer):
3:41 PM Changeset in webkit [8708] by rjw
  • 2 edits in trunk/WebCore

Fixed <rdar://problem/3382926> Bidi neutrals at RTL/LTR boundaries not handled correctly.

Second pass at fixing 3382926 w/o causing layout regressions. Same concept:
if directionality of text's element is RTL and first character has neutral directionality
then set the initial directionality to RTL.

Reviewed by Hyatt.

  • khtml/rendering/bidi.cpp: (khtml::RenderBlock::bidiReorderLine): (khtml::RenderBlock::determineStartPosition):
2:16 PM Changeset in webkit [8707] by vicki
  • 3 edits in trunk

versioning for TOT, Safari 2.0 (400+)

2:10 PM Changeset in webkit [8706]
  • 1 copy in tags/Safari-300

This commit was manufactured by cvs2svn to create tag 'Safari-300'.

2:10 PM Changeset in webkit [8705] by vicki
  • 3 edits in trunk

Safari 1.3 (300) stamp, for 10.3 Panther

2:05 PM Changeset in webkit [8704]
  • 1 copy in tags/Safari-400

This commit was manufactured by cvs2svn to create tag 'Safari-400'.

2:05 PM Changeset in webkit [8703] by vicki
  • 6 edits in trunk

Safari-400 stamp

This is our first build with the new versioning scheme. Versions are Safari 2.0 (400) on 10.4, and Safari (1.3) 300 for 10.3. See this bug for details:

<rdar://problem/3962707> upgrade install of Tiger over SUPanWheat leaves Panther version of WebKit (need new version numbering scheme)

1:33 PM Changeset in webkit [8702] by kocienda
  • 3 edits in trunk/WebCore

Reviewed by me

Roll out Chris' change to fix this bug:

<rdar://problem/4023566> Stickies: Crash in ReplacementFragment::insertFragmentForTestRendering on paste

That code change is responsible for all these new crashers:

<rdar://problem/4025177> crash copying safari.apple.com into Blot document
<rdar://problem/4025184> crash in DOM::NodeImpl::parentNode copying "New!" from google.com to Blot
<rdar://problem/4025214> crash in DOM::NodeImpl::getRect loading paste-match-style-001.html

Since we wish to close the tree for a build right now, I am rolling out rather than investigating.

  • khtml/editing/htmlediting.cpp: (khtml::ApplyStyleCommand::addInlineStyleIfNeeded) (khtml::ReplacementFragment::insertFragmentForTestRendering) (khtml::createDefaultParagraphElement) (khtml::createBlockPlaceholderElement) (khtml::createFontElement) (khtml::createStyleSpanElement)
  • khtml/editing/htmlediting.h
12:54 PM Changeset in webkit [8701] by rjw
  • 2 edits in trunk/WebKit

Fixed <rdar://problem/4000962> 8A375: Help Viewer displays voiced sound and semi-voiced characters strangely (characters don't seem to be composed)

Added special case for voiced marks.

Reviewed by John.

  • WebCoreSupport.subproj/WebTextRenderer.m: (widthForNextCharacter):
11:42 AM Changeset in webkit [8700] by kocienda
  • 2 edits in trunk/WebCore

Reviewed by John

Fix for this bug:

<rdar://problem/4020108> Pasting text into message makes Mail crash reproducibly

Note that, even with this fix, development build will crash until this bug is fixed:
<rdar://problem/4024996> Applying block styles can cause assertion failure in inline style removal

This will not crash deployment builds, so I am going to land.

  • khtml/editing/htmlediting.cpp: (khtml::ApplyStyleCommand::applyBlockStyle): Applying block styles can make the loop to reach beyondEnd fail since the structure of the document can change. Cache the next node first before operating on it, as we do elsewhere.
11:38 AM Changeset in webkit [8699] by vicki
  • 4 edits in trunk/WebCore
  • recommit this change, since rolling it out did NOT fix the performance regression!

2005-02-23 Darin Adler <Darin Adler>

Reviewed by John.

  • fixed <rdar://problem/4011405> REGRESSION (180-181): Unconfirmed text disappears when text focus moves

The key was to change things around so that we don't push text from the DOM to the widget
unless the DOM has actually been changed. This prevents the code path that wipes out inline input
during the blur process.

  • khtml/html/html_formimpl.cpp: (DOM::HTMLInputElementImpl::HTMLInputElementImpl): Start m_valueMatchesRenderer as false. (DOM::HTMLInputElementImpl::parseHTMLAttribute): Set m_valueMatchesRenderer to false when a new value is set here. (DOM::HTMLInputElementImpl::setValue): Set m_valueMatchesRenderer to false when a new value is set here. (DOM::HTMLInputElementImpl::setValueFromRenderer): Added. Sets m_value, sets m_valueMatchesRenderer to true, and also sends out the input event. It's better to have this here than in the renderer code. (DOM::HTMLTextAreaElementImpl::HTMLTextAreaElementImpl): Start m_valueIsValid as false (replaces m_dirtyvalue) and m_valueMatchesRenderer as false. (DOM::HTMLTextAreaElementImpl::updateValue): Added. Factored this out from the value function. Uses the new booleans and keeps them up to date, specifically setting m_valueMatchesRenderer based on where the value came from. (DOM::HTMLTextAreaElementImpl::value): Updated to call updateValue to do most of the work. (DOM::HTMLTextAreaElementImpl::setValue): Set both m_valueIsValid and m_valueMatchesRenderer. (DOM::HTMLTextAreaElementImpl::setDefaultValue): Take parameter by reference.
  • khtml/html/html_formimpl.h: Added setValueFromRenderer, valueMatchesRenderer, setValueMatchesRenderer, and m_valueMatchesRenderer to input element. For textarea element, made some parameters pass DOMString by reference, and added invalidateValue, updateValue, valueMatchesRenderer, and setValueMatchesRenderer.
  • khtml/rendering/render_form.cpp: (RenderLineEdit::updateFromElement): Don't re-get the value from the DOM if valueMatchesRenderer is true. (RenderLineEdit::slotTextChanged): Call setValueFromRenderer instead of manipulating the DOM directly. (RenderTextArea::detach): Call updateValue instead of calling value for its side effect. (RenderTextArea::handleFocusOut): Ditto. (RenderTextArea::updateFromElement): Call updateValue and then not re-get the value from the DOM if valueMatchesRenderer is true. (RenderTextArea::slotTextChanged): Call invalidateValue instead of directly setting m_dirtyvalue to true.
11:34 AM Changeset in webkit [8698] by cblu
  • 3 edits in trunk/WebCore

Fixed: <rdar://problem/4023566> Stickies: Crash in ReplacementFragment::insertFragmentForTestRendering on paste

Reviewed by darin.

  • khtml/editing/htmlediting.cpp: (khtml::ApplyStyleCommand::addInlineStyleIfNeeded): (khtml::ReplacementFragment::insertFragmentForTestRendering): (khtml::floatRefdElement): (khtml::createDefaultParagraphElement): (khtml::createBlockPlaceholderElement): (khtml::createFontElement): (khtml::createStyleSpanElement):
  • khtml/editing/htmlediting.h:
10:48 AM Changeset in webkit [8697] by darin
  • 2 edits in trunk/WebKit

Reviewed by John.

  • fixed <rdar://problem/4019823> Seed: Control-Y doesn't work
  • WebView.subproj/WebHTMLView.m: (-[WebHTMLView _deleteWithDirection:granularity:killRing:isTypingAction:]): Call _handleKillRing after setting the selection, since it uses the selection to get the text. (-[WebHTMLView _insertText:selectInsertedText:]): Check for empty string to avoid an assertion on the other side of the bridge when you yank the empty string.
10:38 AM Changeset in webkit [8696] by darin
  • 2 edits in trunk/WebCore
  • kwq/character-sets.txt: Checked in updated file. This new file has no effect, because none of the changes affect character sets that we support, but it's good to have the latest file in here, and completely safe because I checked that the generated files have not changed.
10:36 AM Changeset in webkit [8695] by vicki
  • 4 edits in trunk/WebCore

Reviewed by Darin.

  • back out this change, since it causes a 3.5% performance regression

2005-02-23 Darin Adler <Darin Adler>

Reviewed by John.

  • fixed <rdar://problem/4011405> REGRESSION (180-181): Unconfirmed text disappears when text focus moves

The key was to change things around so that we don't push text from the DOM to the widget
unless the DOM has actually been changed. This prevents the code path that wipes out inline input
during the blur process.

  • khtml/html/html_formimpl.cpp: (DOM::HTMLInputElementImpl::HTMLInputElementImpl): Start m_valueMatchesRenderer as false. (DOM::HTMLInputElementImpl::parseHTMLAttribute): Set m_valueMatchesRenderer to false when a new value is set here. (DOM::HTMLInputElementImpl::setValue): Set m_valueMatchesRenderer to false when a new value is set here. (DOM::HTMLInputElementImpl::setValueFromRenderer): Added. Sets m_value, sets m_valueMatchesRenderer to true, and also sends out the input event. It's better to have this here than in the renderer code. (DOM::HTMLTextAreaElementImpl::HTMLTextAreaElementImpl): Start m_valueIsValid as false (replaces m_dirtyvalue) and m_valueMatchesRenderer as false. (DOM::HTMLTextAreaElementImpl::updateValue): Added. Factored this out from the value function. Uses the new booleans and keeps them up to date, specifically setting m_valueMatchesRenderer based on where the value came from. (DOM::HTMLTextAreaElementImpl::value): Updated to call updateValue to do most of the work. (DOM::HTMLTextAreaElementImpl::setValue): Set both m_valueIsValid and m_valueMatchesRenderer. (DOM::HTMLTextAreaElementImpl::setDefaultValue): Take parameter by reference.
  • khtml/html/html_formimpl.h: Added setValueFromRenderer, valueMatchesRenderer, setValueMatchesRenderer, and m_valueMatchesRenderer to input element. For textarea element, made some parameters pass DOMString by reference, and added invalidateValue, updateValue, valueMatchesRenderer, and setValueMatchesRenderer.
  • khtml/rendering/render_form.cpp: (RenderLineEdit::updateFromElement): Don't re-get the value from the DOM if valueMatchesRenderer is true. (RenderLineEdit::slotTextChanged): Call setValueFromRenderer instead of manipulating the DOM directly. (RenderTextArea::detach): Call updateValue instead of calling value for its side effect. (RenderTextArea::handleFocusOut): Ditto. (RenderTextArea::updateFromElement): Call updateValue and then not re-get the value from the DOM if valueMatchesRenderer is true. (RenderTextArea::slotTextChanged): Call invalidateValue instead of directly setting m_dirtyvalue to true.
10:29 AM Changeset in webkit [8694] by darin
  • 2 edits in trunk/WebCore

Reviewed by Chris.

  • fixed <rdar://problem/4024786> REGRESSION (Mail): "Smart paste" plain-text word into Blot leaves insertion point misplaced
  • khtml/editing/htmlediting.cpp: (khtml::ReplaceSelectionCommand::doApply): Use the insertNodeAfterAndUpdateNodesInserted and insertNodeBeforeAndUpdateNodesInserted functions to add the leading and trailing spaces for smart paste.
9:43 AM Changeset in webkit [8693] by hyatt
  • 2 edits in trunk/WebCore

Back out fix for 3382926, since it breaks LTR text inside RTL contexts.

Reviewed by john

  • khtml/rendering/bidi.cpp: (khtml::BidiIterator::direction):
9:33 AM Changeset in webkit [8692] by hyatt
  • 4 edits in trunk/WebCore

Fix for 3975039, scrolling is slow in huge RSS views. Optimize the calculation of clip rects for overflow:hidden
layers. Also optimize layer movement when scrolling overflow sections.

Reviewed by darin

  • khtml/rendering/render_layer.cpp: (throw): (ClipRects::operator delete): (ClipRects::detach): (RenderLayer::RenderLayer): (RenderLayer::~RenderLayer): (RenderLayer::updateLayerPosition): (RenderLayer::removeOnlyThisLayer): (RenderLayer::insertOnlyThisLayer): (RenderLayer::scrollToOffset): (RenderLayer::hitTest): (RenderLayer::calculateClipRects): (RenderLayer::calculateRects): (RenderLayer::containsPoint): (RenderLayer::clearClipRects): (RenderLayer::clearClipRect):
  • khtml/rendering/render_layer.h: (khtml::ClipRects::m_refCnt): (khtml::ClipRects::overflowClipRect): (khtml::ClipRects::fixedClipRect): (khtml::ClipRects::posClipRect): (khtml::ClipRects::ref): (khtml::ClipRects::deref): (khtml::RenderLayer::clipRects):
  • khtml/rendering/render_object.cpp: (RenderObject::setStyle):
Note: See TracTimeline for information about the timeline view.