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):

Oct 2, 2003:

5:48 PM Changeset in webkit [5127] by mjs
  • 9 edits
    6 deletes in trunk/WebKit

Folded Private implementation files into the regular ones as the
first step towards pulling in our SPI exposure and other code
cleanup.

  • History.subproj/WebHistory.m:
  • History.subproj/WebHistoryPrivate.m: Removed.
  • Misc.subproj/WebIconDatabasePrivate.h:
  • WebKit.pbproj/project.pbxproj:
  • WebView.subproj/WebDataSource.m:
  • WebView.subproj/WebDataSourcePrivate.m: Removed.
  • WebView.subproj/WebFrame.m:
  • WebView.subproj/WebFramePrivate.m: Removed.
  • WebView.subproj/WebFrameView.m:
  • WebView.subproj/WebFrameViewPrivate.m: Removed.
  • WebView.subproj/WebHTMLView.m:
  • WebView.subproj/WebHTMLViewPrivate.m: Removed.
  • WebView.subproj/WebView.m:
  • WebView.subproj/WebViewPrivate.m: Removed.
4:28 PM Changeset in webkit [5126] by hyatt
  • 3 edits in trunk/WebCore

Remove the speed hit from using the UC break locators by not using them when
checking if the current character is &nbsp; and by also using a global text
break locator object.

Reviewed by rjw

  • khtml/rendering/break_lines.cpp:
4:16 PM Changeset in webkit [5125] by cblu
  • 2 edits in trunk/WebKit

Fixed: <rdar://problem/3440063>: Safari 1.1 won't load new pages after visiting adultswim.com, assertion failure on debug build

Reviewed by rjw.

  • Plugins.subproj/WebBaseNetscapePluginStream.m: (-[WebBaseNetscapePluginStream finishedLoadingWithData:]): if not data was received for a stream, create the temp file anyway. Plug-ins expect this.
3:11 PM Changeset in webkit [5124] by vicki
  • 3 edits in trunk

tree is open for Safari-109

3:06 PM Changeset in webkit [5123]
  • 3 copies in tags/Safari-108

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

3:06 PM Changeset in webkit [5122] by vicki
  • 8 edits in trunk

Safari-108 stamp.

12:58 PM Changeset in webkit [5121] by darin
  • 2 edits in trunk/WebKit
  • English.lproj/StringsNotToBeLocalized.txt: Update for recent changes.
11:50 AM Changeset in webkit [5120] by mjs
  • 2 edits in trunk/WebKit

Reviewed by Darin.

  • WebView.subproj/WebFramePrivate.m: (-[WebFrame _setState:]): Don't turn on scroll-blitting here when the page is done... (-[WebFrame _transitionToCommitted:]): Instead do it here, when the page is committed.
11:46 AM Changeset in webkit [5119] by mjs
  • 5 edits in trunk/WebCore

Reviewed by Darin.

  • fixed 3398622 - Crash when JavaScript changes display style

This was a problem with one of the many global variables in
bidi.cpp, last, having a stale value from the last layout that
pointed to a dead node. I fixed this by refactoring the code to
put most of the global variables in a struct allocated on the
stack, and pass around a reference to the struct. Seems much
cleaner (if somewhat wordier) this way. There are still more
global variables to kill here.

  • khtml/rendering/bidi.cpp: (khtml::BidiIterator::BidiIterator): (khtml::BidiStatus::BidiStatus): (khtml::BidiInfo::BidiInfo): (khtml::Bidinext): (khtml::first): (khtml::BidiIterator::increment): (khtml::checkMidpoints): (khtml::appendRunsForObject): (khtml::appendRun): (khtml::embed): (khtml::RenderBlock::computeHorizontalPositionsForLine): (khtml::RenderBlock::bidiReorderLine): (khtml::buildCompactRuns): (khtml::RenderBlock::layoutInlineChildren): (khtml::RenderBlock::findNextLineBreak):
  • khtml/rendering/bidi.h:
  • khtml/rendering/render_block.h:
11:35 AM Changeset in webkit [5118] by darin
  • 2 edits in trunk/WebKit

Reviewed by Ken.

  • in preparation for a WebCore whitespace-handling change, made WebTextRenderer draw and measure newline characters as if they are spaces (just as we already do with non-breaking spaces)
  • removed some unused stuff from WebTextRenderer
  • other unimportant tweaks (e.g. unsigned int -> unsigned)
  • WebCoreSupport.subproj/WebTextRenderer.m: (kFixedOne), (fixed1), (FixToFloat), (FloatToFixed): Removed these. We can use the standard ones from <FixMath.h> instead of defining our own. (isControlCharacter): Added. Inline function that we can use instead of the macro we had before. (isAlternateSpace): Added. Returns YES for newlines and non-breaking spaces. (isSpace): Added. Returns YES for real spaces and the two alternate spaces as well. (initializeCharacterWidthIterator): Use isSpace. (-[WebTextRenderer convertCharacters:length:toGlyphs:skipControlCharacters:]): Use isAlternateSpace and isControlCharacter. (-[WebTextRenderer _CG_floatWidthForRun:style:widths:fonts:glyphs:startGlyph:endGlyph:numGlyphs:]): Use isControlCharacter, isAlternateSpace, and isSpace. Also fix a small bug where numGlyphs would not get set up properly when the run length is 0, and used local variables when possible instead of going back at the run structure. (-[WebTextRenderer _ATSU_floatWidthForRun:style:]): Use the standard FixedToFloat instead of our own FixToFloat. (-[WebTextRenderer _ATSU_drawHighlightForRun:style:atPoint:]): Ditto.
11:23 AM Changeset in webkit [5117] by hyatt
  • 7 edits in trunk/WebCore

Work on exposing elements to the Acc API. This patch gets us to the point where text
under the mouse is voiced.

Reviewed by darin

  • kwq/KWQAccObject.h:
  • kwq/KWQAccObject.mm: (-[KWQAccObject initWithRenderer:]): (-[KWQAccObject parentObject]): (-[KWQAccObject parentObjectUnignored]): (-[KWQAccObject addChildrenToArray:]): (-[KWQAccObject role]): (-[KWQAccObject roleDescription]): (-[KWQAccObject value]): (-[KWQAccObject title]): (-[KWQAccObject position]): (-[KWQAccObject size]): (-[KWQAccObject accessibilityIsIgnored]): (-[KWQAccObject accessibilityAttributeNames]): (-[KWQAccObject accessibilityActionNames]): (-[KWQAccObject accessibilityIsAttributeSettable:]): (-[KWQAccObject accessibilityAttributeValue:]): (-[KWQAccObject accessibilityHitTest:]):
  • kwq/KWQAccObjectCache.mm: (KWQAccObjectCache::accObject): (KWQAccObjectCache::setAccObject): (KWQAccObjectCache::removeAccObject):
  • kwq/WebCoreBridge.h:
  • kwq/WebCoreBridge.mm: (-[WebCoreBridge accessibilityTree]):
11:22 AM Changeset in webkit [5116] by hyatt
  • 2 edits in trunk/WebKit

Work on exposing elements to the Acc API. This patch gets us to the point where text
under the mouse is voiced.

Reviewed by darin

  • WebView.subproj/WebHTMLView.m: (-[WebHTMLView accessibilityAttributeValue:]): (-[WebHTMLView accessibilityHitTest:]):
11:19 AM Changeset in webkit [5115] by darin
  • 3 edits in trunk/JavaScriptCore

Reviewed by Dave.

  • fixed 3441656 -- constructor bad for objs created w/ function as prototype (www.moock.org/asdg/codedepot)
  • kjs/nodes.cpp: (FuncDeclNode::processFuncDecl): Set up the constructor as as specified in the JavaScript spec. We were already doing this right in the other place we make functions.
8:31 AM Changeset in webkit [5114] by darin
  • 122 edits in trunk

Reviewed by Ken.

  • kwq/KWQRenderTreeDebug.cpp: (quoteAndEscapeNonPrintables): Since our text rendering renders non-breaking spaces the same as spaces, dump them as spaces. Do the same with newlines since I am about to change our text rendering to do the same with newlines.
  • layout-tests: Updated test results.
Note: See TracTimeline for information about the timeline view.