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

Timeline



Oct 6, 2003:

9:43 PM Changeset in webkit [5141] by hyatt
  • 23 edits in trunk/WebCore

Several fixes preparing for the incremental repainting patch to be enabled.

(1) Make layers update their positions after layout instead of during layout or
during painting.

(2) Fix a regression from the overflow:hidden body quirk landing. Make sure repaint()
understands that quirk exists and avoids clipping when it shouldn't.

(3) Fix a regression from the scrollbar improvements. The vertical scrollbar repainted
on every layout.

(4) Make sure outside list bullets are repainted when a list item needs to repaint.

(5) A whole bunch of INCREMENTAL_REPAINTING code that isn't turned on yet.

Reviewed by kocienda

  • khtml/khtmlview.cpp: (KHTMLViewPrivate::KHTMLViewPrivate): (KHTMLViewPrivate::reset): (KHTMLView::resetScrollBars): (KHTMLView::needsFullRepaint):
  • khtml/khtmlview.h:
  • khtml/rendering/bidi.cpp: (khtml::RenderBlock::layoutInlineChildren):
  • khtml/rendering/render_block.cpp: (khtml::RenderBlock::layoutBlock): (khtml::RenderBlock::layoutBlockChildren): (khtml::RenderBlock::getAbsoluteRepaintRectIncludingFloats): (khtml::RenderBlock::repaintFloatingDescendants): (khtml::RenderBlock::repaintObjectsBeforeLayout):
  • khtml/rendering/render_block.h:
  • khtml/rendering/render_box.cpp: (RenderBox::computeAbsoluteRepaintRect): (RenderBox::repaintDuringLayoutIfMoved):
  • khtml/rendering/render_box.h:
  • khtml/rendering/render_canvas.cpp: (RenderCanvas::layout):
  • khtml/rendering/render_canvas.h: (khtml::RenderCanvas::hasOverhangingFloats):
  • khtml/rendering/render_flexbox.cpp: (khtml::RenderFlexibleBox::layoutBlock): (khtml::RenderFlexibleBox::layoutHorizontalBox): (khtml::RenderFlexibleBox::layoutVerticalBox): (khtml::RenderFlexibleBox::placeChild):
  • khtml/rendering/render_flexbox.h:
  • khtml/rendering/render_flow.cpp: (RenderFlow::getAbsoluteRepaintRect):
  • khtml/rendering/render_image.cpp: (RenderImage::setPixmap): (RenderImage::layout):
  • khtml/rendering/render_layer.cpp: (RenderLayer::RenderLayer): (RenderLayer::computeRepaintRects): (RenderLayer::updateLayerPositions): (RenderLayer::updateLayerPosition): (RenderLayer::checkScrollbarsAfterLayout): (RenderLayer::paintLayer): (RenderLayer::calculateClipRects): (RenderLayer::calculateRects):
  • khtml/rendering/render_layer.h: (khtml::RenderLayer::relativePositionOffset):
  • khtml/rendering/render_list.cpp: (RenderListItem::getAbsoluteRepaintRect):
  • khtml/rendering/render_list.h: (khtml::RenderListMarker::listImage):
  • khtml/rendering/render_object.cpp: (RenderObject::repaint): (RenderObject::repaintRectangle): (RenderObject::repaintAfterLayoutIfNeeded): (RenderObject::repaintDuringLayoutIfMoved): (RenderObject::repaintFloatingDescendants): (RenderObject::checkForRepaintDuringLayout): (RenderObject::repaintObjectsBeforeLayout): (RenderObject::getAbsoluteRepaintRectIncludingFloats): (RenderObject::container):
  • khtml/rendering/render_object.h:
  • khtml/rendering/render_table.cpp: (RenderTable::layout):
  • kwq/KWQKHTMLPart.mm: (KWQKHTMLPart::passWidgetMouseDownEventToWidget):
5:01 PM Changeset in webkit [5140] by darin
  • 7 edits in trunk/WebCore

Reviewed by Ken.

  • preparation for the upcoming whitespace patch; refactored some of the code that extracts text
  • khtml/khtml_part.h: Added text() member function.
  • khtml/khtml_part.cpp: (KHTMLPart::text): Added. Refactored from selectedText; takes a DOM::Range as a parameter. Also added code to change newlines to spaces when extracting text from the DOM. (KHTMLPart::selectedText): Now calls text(). (KHTMLPart::selection): Removed stray declaration.
  • kwq/KWQAccObject.mm: (-[KWQAccObject value]): Changed to call KHTMLPart::text.
  • kwq/WebCoreBridge.mm: (-[WebCoreBridge elementAtPoint:]): Changed to call KHTMLPart::text instead of doing it ourselves.
  • kwq/KWQKHTMLPart.mm: (KWQKHTMLPart::attributedString): Added code to change change '\n' newlines to spaces when extracting text from the DOM.
1:28 PM Changeset in webkit [5139] by mjs
  • 5 edits in trunk/WebCore

Reviewed by Ken.

  • fixed 3444255 - REGRESSION: www.aa.com crashes (innerHTML)
  • khtml/html/html_elementimpl.cpp: (HTMLElementImpl::createContextualFragment): Keep the fragment ref'd since the tokenizer will ref and deref it. Then turn TreeShared's evil against itself to get the fragment back in the floating 0-ref state.
  • khtml/html/html_elementimpl.h: Remove stray whitespace.
  • khtml/html/htmlparser.cpp: (KHTMLParser::KHTMLParser): Initialize current to 0 in the other constructor too.
9:01 AM Changeset in webkit [5138] by darin
  • 1 edit in trunk/WebKit/ChangeLog

Fixed a newline.

8:50 AM Changeset in webkit [5137] by darin
  • 20 edits in trunk

JavaScriptCore:

  • kjs/create_hash_table: Remove stray semicolon.
  • kjs/array_object.lut.h:
  • kjs/date_object.lut.h:
  • kjs/lexer.lut.h:
  • kjs/math_object.lut.h:
  • kjs/number_object.lut.h:
  • kjs/string_object.lut.h: Regenerated.

WebCore:

  • khtml/ecma/kjs_css.lut.h:
  • khtml/ecma/kjs_dom.lut.h:
  • khtml/ecma/kjs_events.lut.h:
  • khtml/ecma/kjs_html.lut.h:
  • khtml/ecma/kjs_navigator.lut.h:
  • khtml/ecma/kjs_range.lut.h:
  • khtml/ecma/kjs_traversal.lut.h:
  • khtml/ecma/kjs_views.lut.h:
  • khtml/ecma/kjs_window.lut.h: Regenerated, without stray semicolon.

Oct 3, 2003:

4:24 PM Changeset in webkit [5136] by rjw
  • 3 edits in trunk/WebKit

Fix part of 3438071. Creating an instance of WebPreferences using init
will do the expected thing: that is, create a new instance! We used to
always return standardPreferences.

Reviewed by Chris.

  • WebView.subproj/WebPreferences.m: (-[WebPreferences init]): (+[WebPreferences standardPreferences]):
3:38 PM Changeset in webkit [5135] by darin
  • 3 edits in trunk
  • updated layout tests for recent WebTextRenderer changes
  • layout-tests/apple-only/base/www.cnn.com/index-expected.txt:
  • layout-tests/apple-only/base/www.sun.com/index-expected.txt:
  • layout-tests/css1/font_properties/font_weight-expected.txt:
3:32 PM Changeset in webkit [5134] by hyatt
  • 2 edits in trunk/WebKit

Fix for numerous regressions caused by an inadvertent renaming of the recursiveDisplay
override method.

Reviewed by darin

  • WebView.subproj/WebHTMLView.m: (-[WebHTMLView _recursiveDisplayRectIfNeededIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:topView:]):
2:57 PM Changeset in webkit [5133] by rjw
  • 2 edits in trunk/WebKit

Fixed some edge case issue (control characters after end of word) with our rounding hack.

Reviewed by Darin.

  • WebCoreSupport.subproj/WebTextRenderer.m: (-[WebTextRenderer _CG_floatWidthForRun:style:widths:fonts:glyphs:startGlyph:endGlyph:numGlyphs:]):
2:51 PM Changeset in webkit [5132] by cblu
  • 3 edits
    1 delete in trunk/WebCore

Removed eastCursor.tiff because it was added by mistake.

  • Resources/eastCursor.tiff: Removed.
  • WebCore.pbproj/project.pbxproj:
2:49 PM Changeset in webkit [5131] by mjs
  • 7 edits in trunk/WebCore

Reviewed by Richard.

  • fixed 3398420 - crash when creating a new document.body object in <body>

Also included David Faure's improvement to throw an exception.

  • khtml/html/html_documentimpl.cpp: (HTMLDocumentImpl::setBody): Don't remove the body when null is passed in, as this means type error at the higher level, so throw an exception.
  • khtml/html/htmlparser.cpp: (KHTMLParser::KHTMLParser): Initialize current to 0. (KHTMLParser::setCurrent): Ref new current and deref old; we need to keep it ref'd because script execution could drop the current node on the floor. (KHTMLParser::reset): Use setCurrent. (KHTMLParser::insertNode): Likewise. (KHTMLParser::reopenResidualStyleTags): Likewise. (KHTMLParser::popOneBlock): Likewise. (KHTMLParser::finished): Likewise.
  • khtml/html/htmlparser.h: Prototype setCurrent.
2:46 PM Changeset in webkit [5130] by cblu
  • 14 edits in trunk/WebCore

Ran compress-tiffs on new cursor images.

  • Resources/eastCursor.tiff:
  • Resources/eastResizeCursor.tiff:
  • Resources/helpCursor.tiff:
  • Resources/moveCursor.tiff:
  • Resources/northEastResizeCursor.tiff:
  • Resources/northResizeCursor.tiff:
  • Resources/northWestResizeCursor.tiff:
  • Resources/southEastResizeCursor.tiff:
  • Resources/southResizeCursor.tiff:
  • Resources/southWestResizeCursor.tiff:
  • Resources/waitCursor.tiff:
  • Resources/westResizeCursor.tiff:
11:46 AM Changeset in webkit [5129] by kocienda
  • 11 edits in trunk

WebCore:

Reviewed by Darin, with much help from Maciej and Hyatt

Fix for these bugs:

<rdar://problem/3441321>: Form buttons do not respond to key events when focused
<rdar://problem/3441060>: Form buttons do not scroll to view when focused

  • khtml/html/html_formimpl.cpp: (HTMLInputElementImpl::simulateMouseClickForEvent): Added helper to simulate mouse clicks in elements. Used to trigger button actions in response to keyboard events. (HTMLInputElementImpl::defaultEventHandler): Improved handler to process key press events for radio, checkbox, image, reset, and submit buttons.
  • khtml/html/html_formimpl.h: Added simulateMouseClickForEvent function.
  • khtml/xml/dom2_eventsimpl.h: (DOM::EventImpl::isKeyboardEvent): Added type check virtual function. (DOM::KeyEventImpl::isKeyboardEvent): Ditto.
  • kwq/KWQButton.h:
  • kwq/KWQButton.mm: (-[KWQButton simulateClick]): New method. This makes AppKit do a button click programatically for button types. For <input type=image>, we just simulate a the click in the DOM since there is no real "clickable" AppKit widget. (-[KWQButton becomeFirstResponder]): Fixes the button scroll to visible when focused issue. (-[KWQButton resignFirstResponder]): Correctly give up focus when user clicks into the page body when a button has the focus. (QButton::simulateClick): QWidget bridge to the KWQButton simulateClick method.

WebKit:

Reviewed by Darin, with much help from Maciej and Hyatt

Fix for this bug:

<rdar://problem/3441321>: Form buttons do not respond to key events when focused

  • WebView.subproj/WebFrameView.m: (-[WebFrameView _firstResponderIsControl]): Added to tell if the focus is on a form control. (-[WebFrameView keyDown:]): Call new _firstResponderIsControl method to see whether space bar key events should propagate. Adding this check keeps us from blocking the event here and allows AppKit to handle it.
  • WebView.subproj/WebFrameViewPrivate.h: Add new _firstResponderIsControl method.
11:40 AM Changeset in webkit [5128] by hyatt
  • 6 edits in trunk/WebCore

Removing redundant layouts and adding a few !needsLayout and !normalChildNeedsLayout
checks to prevent extra layouts.

Also, fixing the recalcStyle changed() bottleneck to go through view's layout and to
not do a full repaint. The layout method will then do the right thing (full repaint
without INCREMENTAL_REPAINTING turned on, the precise repainting needed otherwise).

Reviewed by darin

  • khtml/html/html_tableimpl.cpp: (HTMLTableElementImpl::parseAttribute):
  • khtml/rendering/render_block.cpp:
  • khtml/rendering/render_container.cpp: (RenderContainer::appendChildNode): (RenderContainer::insertChildNode):
  • khtml/xml/dom_docimpl.cpp: (DocumentImpl::recalcStyle):
Note: See TracTimeline for information about the timeline view.