Timeline



Nov 2, 2003:

10:34 PM Changeset in webkit [5361] by mjs
  • 1 edit in trunk/WebCore/kwq/KWQTextCodec.mm

Revert change I didn't mean to commit.

10:32 PM Changeset in webkit [5360] by mjs
  • 7 edits in trunk/WebCore

Reviewed by Darin.

  • don't resolve Null href or src attributes, since the distinction between empty and absent attribute is important.
  • khtml/dom/html_base.cpp: (HTMLIFrameElement::src):
  • khtml/dom/html_form.cpp: (HTMLInputElement::src):
  • khtml/dom/html_head.cpp: (HTMLBaseElement::href): (HTMLLinkElement::href): (HTMLScriptElement::src):
  • khtml/dom/html_image.cpp: (HTMLAreaElement::href): (HTMLImageElement::src):
  • khtml/dom/html_inline.cpp: (HTMLAnchorElement::href):
9:53 PM Changeset in webkit [5359]
  • 1 copy
    93 deletes in branches/unlabeled-1.95.4

This commit was manufactured by cvs2svn to create branch
'unlabeled-1.95.4'.

9:53 PM Changeset in webkit [5358] by hyatt
  • 15 edits in trunk/WebCore

Fix for 3468924, an implementation of outline-offset. We also give :focus links a built-in offset of
outline-width/2 by default for the Apple Aqua style.

Fix for 3470660, input type=image excluded from tab order.

Reviewed by darin

  • 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/css/html4.css:
  • khtml/rendering/render_box.cpp: (RenderBox::getAbsoluteRepaintRect): (RenderBox::computeAbsoluteRepaintRect):
  • khtml/rendering/render_flow.cpp: (RenderFlow::getAbsoluteRepaintRect):
  • khtml/rendering/render_inline.cpp: (RenderInline::paintFocusRing): (RenderInline::paintOutlines): (RenderInline::paintOutline):
  • khtml/rendering/render_object.cpp: (RenderObject::paintOutline):
  • khtml/rendering/render_style.h: (khtml::OutlineValue::OutlineValue): (khtml::RenderStyle::outlineSize): (khtml::RenderStyle::outlineOffset): (khtml::RenderStyle::setOutlineOffset):
  • khtml/rendering/render_text.cpp: (RenderText::paintObject):
  • kwq/KWQPainter.h:
  • kwq/KWQPainter.mm: (QPainterPrivate::QPainterPrivate): (QPainter::initFocusRing): (QPainter::addFocusRingRect):
6:03 PM Changeset in webkit [5357] by mjs
  • 6 edits in trunk/WebKit

Reviewed by Darin.

  • remove use of obsolete HTTLCookiePolicyBaseURL SPI
  • WebCoreSupport.subproj/WebSubresourceClient.m: startLoadingResource:withURL:referrer:forDataSource:]): Use setMainDocumentURL, not setHTTPCookiePolicyBaseURL.
  • WebView.subproj/WebFrame.m: (-[WebFrame _addExtraFieldsToRequest:alwaysFromRequest:]): Likewise.
  • WebView.subproj/WebMainResourceClient.m: (-[WebMainResourceClient connection:willSendRequest:redirectResponse:]): Likewise.
2:51 PM Changeset in webkit [5356] by darin
  • 7 edits in trunk/JavaScriptCore

Reviewed by Maciej.

  • changed list manipulation to use Harri Porten's idea of a circular linked list that is built from head to tail rather than building the list backwards and reversing the list when done
  • kjs/grammar.y: Handle CatchNode and FinallyNode in a type-safe way. Change many places that passed 0L to pass nothing at all, or to pass 0.
  • kjs/nodes.h: (KJS::ElementNode::ElementNode): Build a circular list instead of a 0-terminated backwards list. (KJS::ArrayNode::ArrayNode): Break the circular list instead of reversing the list. (KJS::PropertyValueNode::PropertyValueNode): Moved before ObjectLiteralNode so the inline code in ObjectLiteralNode works. Build a circular list instead of a 0-terminated backwards list. Made the case for the first node separate so we don't need a nil check. (KJS::ObjectLiteralNode::ObjectLiteralNode): Break the circular list instead of reversing the list. (KJS::ArgumentListNode::ArgumentListNode): Build a circular list instead of a 0-terminated backwards list. Also, made the constructors inline (moved here from .cpp file). (KJS::ArgumentsNode::ArgumentsNode): Break the circular list instead of reversing the list. (KJS::NewExprNode::NewExprNode): Changed a 0L to 0. (KJS::StatListNode::StatListNode): Make this constructor no longer inline (moved into .cpp file). The one in the .cpp file builds a circular list instead of a 0-terminated backwards list. (KJS::VarDeclListNode::VarDeclListNode): Build a circular list instead of a 0-terminated backwards list. (KJS::VarStatementNode::VarStatementNode): Break the circular list instead of reversing the list. (KJS::BlockNode::BlockNode): Make this constructor no longer inline (moved into .cpp file). The one in the .cpp file breaks the list instead of reversing it. (KJS::ForNode::ForNode): Break the circular list instead of reversing the list. (KJS::CaseClauseNode::CaseClauseNode): Break the circular list instead of reversing the list. (KJS::ClauseListNode::ClauseListNode): Build a circular list instead of a 0-terminated backwards list. (KJS::CaseBlockNode::CaseBlockNode): Make this constructor no longer inline (moved into .cpp file). The one in the .cpp file breaks the list instead of reversing it. (KJS::TryNode::TryNode): Changed constructor to take typed parameters for the catch and finally nodes rather than just Node. (KJS::ParameterNode::ParameterNode): Build a circular list instead of a 0-terminated backwards list. (KJS::FuncDeclNode::FuncDeclNode): Break the circular list instead of reversing the list. (KJS::FuncExprNode::FuncExprNode): Break the circular list instead of reversing the list.
  • kjs/nodes.cpp: (StatListNode::StatListNode): Moved this constructor here, no longer inline. Did the "break circular list" thing instead of the "reverse list" thing. Added setLoc calls to match KJS in the KDE tree; since we don't currently use the JavaScript debugging support, it's unclear whether there's any benefit, but later we might be using it and it's good to be as close as possible. (BlockNode::BlockNode): Moved this constructor here, no longer inline. Did the "break circular list" thing instead of the "reverse list" thing. Added setLoc calls. (CaseBlockNode::CaseBlockNode): Moved this constructor here, no longer inline. Did the "break circular list" thing instead of the "reverse list" thing. (SourceElementsNode::SourceElementsNode): Moved this constructor here, no longer inline. Did the "break circular list" thing instead of the "reverse list" thing. Added setLoc calls.
  • kjs/grammar.cpp: Regenerated.
  • kjs/grammar.cpp.h: Regenerated.
  • kjs/grammar.h: Regenerated.

Nov 1, 2003:

9:37 PM Changeset in webkit [5355] by darin
  • 2 edits in trunk/WebKit

Reviewed by Maciej.

  • fixed 3470882 -- storage leaks in WebDownload code
  • fixed 3470884 -- download is always nil in downloadWindowForAuthenticationSheet: call from WebDownload
  • Misc.subproj/WebDownload.m: (-[WebDownloadInternal initWithDownload:]): Removed this method, which was never called. (-[WebDownloadInternal dealloc]): Added missing call to [super dealloc] to fix one cause of a leak of the WebDownloadInternal object itself. Removed the release of webDownload, which was always nil, and if it wasn't would end up causing a leak due to a reference cycle. (-[WebDownloadInternal download:didReceiveAuthenticationChallenge:]): Remove the use of webDownload, which was always nil, and instead use the download parameter passed to us, casting it to WebDownload, since it's guaranteed to be one. (-[WebDownload _setRealDelegate:]): Added. Shared by the methods below to set up the real delegate before calling init. The old code called init twice, causing an second call to the superclass's init method, which caused it to create an extra copy of its internal structure, as well as causing us to create two WebDownloadInternal objects. (-[WebDownload init]): Don't allocate a second WebDownloadInternal if _setRealDelegate already allocated it for us. Before we would allocate and leak an extra one each time. (-[WebDownload dealloc]): Added. Releases the WebDownloadInternal. This is the second cause of the leak of the WebDownloadInternal object. (-[WebDownload initWithRequest:delegate:]): Call [self _setRealDelegate:] instead of calling [self init] and then [_webInternal setRealDelegate:], avoiding the leaks caused by doing it the other way. (-[WebDownload _initWithLoadingConnection:request:response:delegate:proxy:]): Ditto. (-[WebDownload _initWithLoadingResource:request:response:delegate:proxy:]): Ditto. (-[WebDownload _initWithRequest:delegate:directory:]): Ditto.
7:53 PM Changeset in webkit [5354] by mjs
  • 2 edits in trunk/WebCore

Reviewed by Darin.

  • fixed 3469262 - REGRESSION (110-112): logitech page is very slow to load (due to style sheet updates?)
  • khtml/xml/dom_nodeimpl.cpp: (NodeImpl::dispatchGenericEvent): Don't do default handling for events that don't bubble. Not 100% sure why this caused the big slowdown but it was a somewhat arbitrary change in my earlier patch.
6:01 PM Changeset in webkit [5353] by darin
  • 2 edits in trunk/WebCore

Reviewed by John.

  • fixed 3468870 -- REGRESSION (108-109): cannot upload files (<input type=file> is broken)
  • kwq/KWQFileButton.mm: (KWQFileButton::filenameChanged): Pass the filename to the textChanged signal. The one without a parameter is a different signal.
3:46 PM Changeset in webkit [5352] by darin
  • 2 edits in trunk/WebCore

Reviewed by John.

  • fixed 3466714 -- page with <object> tag with text subtype and no URL causes hang
  • khtml/khtml_part.cpp: (KHTMLPart::requestObject): Added a check so that an empty URL string doesn't get completed, and results in an empty KURL object. Also made the change to allow empty URLs unconditional, because I don't think it's a WebCore-specific thing on further reflection.
10:49 AM Changeset in webkit [5351] by darin
  • 1 edit in trunk/WebCore/ChangeLog-2003-10-25

Fixed typo-type problems in some old log entries.

Oct 31, 2003:

6:23 PM Changeset in webkit [5350] by hyatt
  • 2 edits in trunk/WebCore

Fix for 3470489, I just forgot to commit a piece of my patch. This has actually even
been reviewed by ken already.

Reviewed by kocienda

  • khtml/rendering/render_replaced.cpp: (RenderWidget::eventFilter):
5:26 PM Changeset in webkit [5349] by darin
  • 2 edits in trunk/WebCore

Reviewed by John.

  • fixed 3457875 -- text disappears from fields in forms upon certain types of scrolling
  • kwq/KWQTextField.mm: (-[KWQTextField control:textShouldBeginEditing:]): Call releaseGState on the field editor and its clip view to prevent undesirable caching.
5:01 PM Changeset in webkit [5348] by kocienda
  • 2 edits in trunk/WebCore

Reviewed by Darin

Fix for this bug:

<rdar://problem/3440719>: Read-only text field form controls
do not keyboard focus and do not take part in tabbing

  • kwq/KWQTextField.mm: (-[KWQTextField acceptsFirstResponder]): We want our text fields to accept first responder even if not editable.

Once this is fixed, this one comes along for free:

<rdar://problem/3440710>: Read-only textarea form controls should select all text when focused

4:31 PM Changeset in webkit [5347] by darin
  • 2 edits in trunk/WebCore

Reviewed by Ken.

  • fixed 3469383 -- REGRESSION (100-111): if one line is selected on this page, too much gets copied (plain text)
  • khtml/khtml_part.cpp: (KHTMLPart::text): Range check the child node indices before using them to get at a child node. We don't want to set startNode or endNode to nil in any case. If the end node is set to nil, we end up copying the entire remainder of the page.
3:40 PM Changeset in webkit [5346]
  • 1 copy
    110 deletes in branches/unlabeled-1.16.4

This commit was manufactured by cvs2svn to create branch
'unlabeled-1.16.4'.

3:40 PM Changeset in webkit [5345] by hyatt
  • 13 edits in trunk/WebCore

Fix for 3470007, links don't get focus on mouse down. Fix the focus check on mouse down to actually
crawl up the content tree in order to find the nearest enclosing focusable node. Also clean up and
fix checks that improperly blurred the link after it got focused.

Fix for 3450335, AppKit widgets not obeying their desired focus policies. I renamed isSelectable to
isFocusable and then also added isMouseFocusable and isKeyboardFocusable methods.

Reviewed by kocienda

  • khtml/css/html4.css:
  • khtml/html/html_baseimpl.cpp: (HTMLFrameElementImpl::isFocusable):
  • khtml/html/html_baseimpl.h:
  • khtml/html/html_formimpl.cpp: (HTMLGenericFormElementImpl::isFocusable): (HTMLGenericFormElementImpl::isKeyboardFocusable): (HTMLGenericFormElementImpl::isMouseFocusable):
  • khtml/html/html_formimpl.h:
  • khtml/html/html_inlineimpl.cpp: (HTMLAnchorElementImpl::isFocusable):
  • khtml/html/html_inlineimpl.h:
  • khtml/khtmlview.cpp: (KHTMLView::dispatchMouseEvent):
  • khtml/xml/dom_docimpl.cpp: (DocumentImpl::nextFocusNode): (DocumentImpl::previousFocusNode):
  • khtml/xml/dom_nodeimpl.cpp: (NodeImpl::isFocusable): (NodeImpl::isKeyboardFocusable): (NodeImpl::isMouseFocusable):
  • khtml/xml/dom_nodeimpl.h:
  • kwq/KWQKHTMLPart.mm: (KWQKHTMLPart::khtmlMousePressEvent):
3:05 PM Changeset in webkit [5344] by kocienda
  • 2 edits in trunk/WebCore

Reviewed by David

Fix for this bug:

<rdar://problem/3470233>: solid outlines drawing incorrectly

The problem was that when I collected the array of line boxes for
render inlines, I put a QRect() at the start and the end of the list.
However, the border calculation code expected "invalid" rectangles
(rects with 0 for all four dimentions) in the first and last
positions, and the default constructor for QRect makes rects with 1,1
for width/height.

  • khtml/rendering/render_inline.cpp: (RenderInline::paintOutlines)
12:14 PM Changeset in webkit [5343] by darin
  • 2 edits in trunk/WebCore

Reviewed by Dave.

  • fixed 3464759 -- REGRESSION (100-107): Pressing on link loses mouse-down feedback almost instantly
  • khtml/khtmlview.cpp: (KHTMLView::viewportMouseMoveEvent): Pass true for the "read-only" flag in prepareMoveEvent to prevent us from updating :hover and :active while the mouse is down.
11:54 AM Changeset in webkit [5342] by hyatt
  • 4 edits in trunk/WebKit

Fix for 3466542, add a real minimum font size setting.

Reviewed by john

  • WebView.subproj/WebPreferences.h:
  • WebView.subproj/WebPreferences.m: (+[WebPreferences initialize]): (-[WebPreferences setMinimumFontSize:]): (-[WebPreferences minimumLogicalFontSize]): (-[WebPreferences setMinimumLogicalFontSize:]):
  • WebView.subproj/WebView.m: (-[WebView _updateWebCoreSettingsFromPreferences:]):
11:46 AM Changeset in webkit [5341] by kocienda
  • 3 edits in trunk/WebCore

Reviewed by David

<rdar://problem/3468910>: REGRESSION: other than focus rings, outlines styles are broken

Outlines now draw like they used to.

  • khtml/rendering/render_inline.cpp: (RenderInline::paintObject): Now branches to call focus ring or "regular" outlines. (RenderInline::paintFocusRing): Broke out drawing aqua focus rings into its own function. (RenderInline::paintOutlines): New function to draw "regular outlines. (RenderInline::paintOutline): Removed code which special-cased aqua outlines.
  • khtml/rendering/render_inline.h: Added paintOutlines declaration.
11:29 AM Changeset in webkit [5340] by hyatt
  • 9 edits in trunk/WebCore

Fix for 3467419, highlighted text in "search in books" Amazon feature is obscured. The
site is using the CSS3 opacity property. The CSS3 Color module is far enough along now
that opacity can safely be used without the "-khtml-" in front of it.

Fix for 3466542, the minimum font size bug. I am introducing a new minimum font size pref that
really is a hard override.

Reviewed by gramps (opacity) and john (min font size)

  • 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):
8:46 AM Changeset in webkit [5339] by kocienda
  • 5 edits in trunk

WebCore:

Reviewed by Darin

Fix for this bug:

<rdar://problem/3469088>: focus not removed from text link
when user hits cmd-L or clicks in window chrome

  • kwq/WebCoreBridge.h:
  • kwq/WebCoreBridge.mm: (-[WebCoreBridge deselectAll]): Now clears the focus ring as well. (-[WebCoreBridge deselectText]): Just clears text selection.

WebKit:

Reviewed by Darin

Fix for this bug:

<rdar://problem/3469088>: focus not removed from text link
when user hits cmd-L or clicks in window chrome

  • WebView.subproj/WebHTMLView.m: (-[WebHTMLView deselectText]): Added new method just to deselect text. (-[WebHTMLView resignFirstResponder]): Just deseclect text if we are doing a programmatic setting of focus. Deselect all otherwise.
1:29 AM Changeset in webkit [5338] by hyatt
  • 5 edits in trunk/WebCore

Three simple fixes:

(1) Fix for 3463777, crash on CSS3 box model draft. This was just a situation where a simple null-check
was needed for generated content.

(2) Added a != check when the old and new hover obj are the same to avoid a little bit of extra work.

(3) Removed the m_pressed member from DOM nodes and removed the calls to setPressed, since this code
is dead and not used by anyone.

  • khtml/khtmlview.cpp:
  • khtml/rendering/render_layer.cpp: (RenderLayer::addChild): (RenderLayer::updateHoverActiveState):
  • khtml/xml/dom_nodeimpl.cpp: (NodeImpl::NodeImpl):
  • khtml/xml/dom_nodeimpl.h: (DOM::NodeImpl::hasStyle): (DOM::NodeImpl::setHasStyle):

Oct 30, 2003:

5:51 PM Changeset in webkit [5337] by hyatt
  • 3 edits in trunk/WebCore

Fix for 3469330, the Marquee data in RenderStyle needs a copy constructor hack like all the other
objects do.

  • khtml/rendering/render_style.cpp: (direction):
  • khtml/rendering/render_style.h:
5:41 PM Changeset in webkit [5336] by hyatt
  • 2 edits in trunk/WebCore

Fix for 3469206, images didn't paint outlines any more. They were bailing early because I forgot to
add a check for my new PaintAction.

Reviewed by darin

  • khtml/rendering/render_replaced.cpp: (RenderReplaced::paint):
5:27 PM Changeset in webkit [5335] by hyatt
  • 6 edits in trunk/WebCore

Fixes for 3469057, outlines not drawn on aintitcool.com and also for 3469178, objects with width/height of 0
incorrectly excluded from tabbing.

Reviewed by darin

  • khtml/html/html_formimpl.cpp: (HTMLGenericFormElementImpl::isSelectable):
  • khtml/html/html_inlineimpl.cpp: (HTMLAnchorElementImpl::isSelectable):
  • khtml/rendering/render_flow.cpp: (RenderFlow::getAbsoluteRepaintRect):
  • khtml/rendering/render_inline.cpp: (RenderInline::addFocusRingRects): (RenderInline::paintOutline):
  • khtml/rendering/render_object.cpp: (RenderObject::addFocusRingRects): (RenderObject::getAbsoluteRepaintRectWithOutline):
4:47 PM Changeset in webkit [5334] by mjs
  • 2 edits in trunk/WebCore

Reviewed by Darin.

  • fixed 3426081 - empty cells HTMLCollection for <tr>
  • fixed 3367598 - "length" attribute for table row "cells" always returns 0
  • khtml/dom/html_table.cpp: (HTMLTableRowElement::cells): TR_CELLS, not TABLE_ROWS.
4:11 PM Changeset in webkit [5333] by hyatt
  • 6 edits in trunk/WebCore

Fix for 3468916, outline needs its own paint action so that focus rings don't draw under other content.

Reviewed by kocienda

  • khtml/rendering/render_block.cpp: (khtml::RenderBlock::paintObject): (khtml::RenderBlock::paintFloats):
  • khtml/rendering/render_image.cpp: (RenderImage::paintObject):
  • khtml/rendering/render_inline.cpp: (RenderInline::paintObject):
  • khtml/rendering/render_layer.cpp: (RenderLayer::paintLayer):
  • khtml/rendering/render_object.h:
4:09 PM Changeset in webkit [5332] by mjs
  • 2 edits in branches/Safari-1-1-branch

Correct bug number in ChangeLogs.

3:35 PM Changeset in webkit [5331] by cblu
  • 2 edits in trunk/WebKit

Fixed: <rdar://problem/3458368>: drawing to the screen while window hidden: http://www.bhphotovideo.com/

Reviewed by john.

  • Plugins.subproj/WebBaseNetscapePluginView.m: (-[WebBaseNetscapePluginView saveAndSetPortStateForUpdate:]): clip out the plug-in when the window is miniaturized or hidden (-[WebBaseNetscapePluginView restartNullEvents]): don't restart null events if the window is miniaturized, this allows restartNullEvents to be called in start and viewDidMoveToWindow without needing to make the check (-[WebBaseNetscapePluginView start]): just call restartNullEvents instead of checking if the window is miniaturized
3:31 PM Changeset in webkit [5330] by mjs
  • 2 edits in trunk/WebCore

Fixed Dave's fix to my fix to my fix:

  • khtml/html/html_imageimpl.cpp: (HTMLImageElementImpl::width): Put back m_render check, consider the case of image with no width/height attributes and display:none set. We don't want to crash on that. (HTMLImageElementImpl::height): Ditto.
3:28 PM Changeset in webkit [5329] by hyatt
  • 1 edit in trunk/WebCore/khtml/html/html_imageimpl.cpp

Fix build bustage.

3:13 PM Changeset in webkit [5328]
  • 1 copy
    93 deletes in branches/unlabeled-1.41.4

This commit was manufactured by cvs2svn to create branch
'unlabeled-1.41.4'.

3:13 PM Changeset in webkit [5327] by kocienda
  • 38 edits
    4 adds in trunk

WebCore:

Reviewed by Hyatt

Support for tabbing to links.

Fixes these bugs

<rdar://problem/3468395>: fix full keyboard access loop for buttons
<rdar://problem/3468397>: paint aqua focus rings around text links
<rdar://problem/3468406>: focused links do not activate by hitting

return key

<rdar://problem/3468410>: paintTextOutline in RenderText objects

should be done at a higher level

<rdar://problem/3468424>: improve function to determine if a node is

tab selectable

<rdar://problem/3468427>: add bridge function to access active

document view for a node

<rdar://problem/3468429>: links do not scroll into view when focusing
<rdar://problem/3468435>: when tabbing out of a frame, last focused

node is not cleared if it is a text link

<rdar://problem/3468436>: focus on text link does not clear when

clicking mouse in document body

<rdar://problem/3468440>: add setRect convenience to QRect
<rdar://problem/3468444>: elements paint their outlines even if they

are not visible

<rdar://problem/3468448>: setting focus on a node sets focus on all

its siblings

<rdar://problem/3468456>: cannot tab to form image input elements
<rdar://problem/3468461>: tab focus can seem to disappear from view on

pages with dhtml menus

<rdar://problem/3469021>: webcore bridge nextKeyView always starts
from the beginning of the document

  • WebCore-combined.exp: Export WebCoreGraphicsBridge class
  • WebCore.exp: Ditto
  • WebCore.pbproj/project.pbxproj: Add WebCoreGraphicsBridge class
  • khtml/css/cssparser.cpp: (CSSParser::parseValue): border style check now take apple aqua style into account
  • khtml/css/cssvalues.in: Add -apple-aqua border value
  • khtml/css/html4.css: Change focus, a:link:active, and a:visited:active to use new -apple-aqua focus rings.
  • khtml/html/html_formimpl.cpp: (HTMLGenericFormElementImpl::isSelectable): Improve function so that invisible elements are no longer considered selectable
  • khtml/html/html_inlineimpl.cpp: (HTMLAnchorElementImpl::isSelectable): Ditto. (HTMLAnchorElementImpl::defaultEventHandler): Make return key activate links as well as Enter.
  • khtml/html/html_inlineimpl.h: Move isSelectable function into implementation file.
  • khtml/rendering/render_block.cpp: (khtml::RenderBlock::paintObject): Do not paint outlines if content is invisible.
  • khtml/rendering/render_flow.cpp: (RenderFlow::getAbsoluteRepaintRect): Improve function to correctly calculate repaint rects including outlines.
  • khtml/rendering/render_image.cpp: (RenderImage::paintObject): Do not paint outlines if content is invisible.
  • khtml/rendering/render_inline.cpp: (RenderInline::paintObject): Ditto. (RenderInline::addFocusRingRects): New function to gather up rects to use for painting outlines. (RenderInline::paintOutline): Added code to paint aqua focus rings.
  • khtml/rendering/render_inline.h:
  • khtml/rendering/render_object.cpp: (RenderObject::drawBorder): Add case for apple aqua border style. (RenderObject::addFocusRingRects): New function to gather up rects to use for painting outlines. (RenderObject::paintOutline): Added code to paint aqua focus rings. (RenderObject::getAbsoluteRepaintRectWithOutline): Helper function to calculate rectangle to use for repainting when an object has an outline.
  • khtml/rendering/render_object.h: Add addFocusRingRects declaration.
  • khtml/rendering/render_style.h: Add APPLEAQUA to border enum
  • khtml/rendering/render_text.cpp: (RenderText::paintObject): Removed code to draw outlines.
  • khtml/rendering/render_text.h: Ditto.
  • khtml/xml/dom_elementimpl.cpp: Removed redundant isSelectable check.
  • khtml/xml/dom_elementimpl.h: Ditto.
  • khtml/xml/dom_nodeimpl.cpp: (NodeImpl::isSelectable): Added. (NodeBaseImpl::setFocus): Do not set focus on siblings.
  • khtml/xml/dom_nodeimpl.h: Moved implementation to .cpp file.
  • kwq/KWQButton.mm: (-[KWQButton nextKeyView]): Send a blur before going to next key view. This prevents focus from being lost altogether. (-[KWQButton previousKeyView]): Ditto.
  • kwq/KWQKHTMLPart.h: Added documentViewForNode function.
  • kwq/KWQKHTMLPart.mm: (KWQKHTMLPart::nextKeyViewInFrame): Add check for other focusables, like text links. (KWQKHTMLPart::nextKeyViewInFrameHierarchy): Remove focus when leaving a view. (KWQKHTMLPart::documentViewForNode): Added. (KWQKHTMLPart::khtmlMousePressEvent): Remove focus when you click in a non-focusable area, like the document body.
  • kwq/KWQPainter.h: Added declarations.
  • kwq/KWQPainter.mm: (QPainterPrivate::QPainterPrivate): Modified constructor for new fields. (QPainter::initFocusRing): Added. (QPainter::addFocusRingRect): Added. (QPainter::drawFocusRing): Added. (QPainter::clearFocusRing): Added.
  • kwq/KWQRect.h: (QRect::setRect): Added.
  • kwq/WebCoreBridge.h:
  • kwq/WebCoreBridge.mm: (-[WebCoreBridge nextKeyView]): Start from the currently-focused node, if there is one, not unconditionally from the start of the document. (-[WebCoreBridge previousKeyView]): Ditto
  • kwq/WebCoreGraphicsBridge.h: Added.
  • kwq/WebCoreGraphicsBridge.m: Added. (+[WebCoreGraphicsBridge sharedBridge]): Added. (-[WebCoreGraphicsBridge init]): Added. (-[WebCoreGraphicsBridge setFocusRingStyle:radius:color:]): Added.

WebKit:

Reviewed by Hyatt

  • WebCoreSupport.subproj/WebBridge.m: (-[WebBridge documentView]): Added.
  • WebCoreSupport.subproj/WebGraphicsBridge.h: Added.
  • WebCoreSupport.subproj/WebGraphicsBridge.m: Added. (+[WebGraphicsBridge createSharedBridge]): Added. (-[WebGraphicsBridge setFocusRingStyle:radius:color:]): Added.
  • WebKit.pbproj/project.pbxproj:
  • WebView.subproj/WebFrameView.m: Create a WebGraphicsBridge when creating a WebFrameView.
2:51 PM Changeset in webkit [5326] by mjs
  • 2 edits in trunk/WebCore

Fix mistake in my last change that I did not mean to commit.

  • khtml/html/html_imageimpl.cpp: (HTMLImageElementImpl::width): Remove extraneous second attempt to lay out.
2:50 PM Changeset in webkit [5325] by hyatt
  • 4 edits in trunk/WebCore

Put paged-media changes back without the wrongful removal of the style data copy constructors (which
were necessary after all).

  • ChangeLog:
  • khtml/css/cssstyleselector.cpp: (khtml::CSSStyleSelector::applyRule):
  • khtml/rendering/render_style.cpp: (StyleInheritedData::StyleInheritedData): (StyleInheritedData::operator==):
  • khtml/rendering/render_style.h: (khtml::): (khtml::RenderStyle::NonInheritedFlags::operator==): (khtml::RenderStyle::setBitDefaults): (khtml::RenderStyle::widows): (khtml::RenderStyle::orphans): (khtml::RenderStyle::pageBreakInside): (khtml::RenderStyle::pageBreakBefore): (khtml::RenderStyle::pageBreakAfter): (khtml::RenderStyle::setWidows): (khtml::RenderStyle::setOrphans): (khtml::RenderStyle::setPageBreakInside): (khtml::RenderStyle::setPageBreakBefore): (khtml::RenderStyle::setPageBreakAfter):
2:42 PM Changeset in webkit [5324] by mjs
  • 3 edits in trunk/WebCore

Reviewed by Dave.

  • fixed 3468129 - REGRESSION: FOUC occurs on Surfin' Safari
  • khtml/ecma/kjs_html.cpp: (KJS::HTMLElement::getValueProperty): Don't force layout for image width/height if you can determine it statically from the attribute.
2:40 PM Changeset in webkit [5323] by mjs
  • 5 edits in branches/Safari-1-1-branch

WebCore:

Merged fix for the following bug from HEAD:

  • fixed 3183754 - returning false from key press handlers does not prevent typing or form submission
  • kwq/KWQKHTMLPart.mm: (KWQKHTMLPart::keyEvent):

WebKit:

Merged fix for the following bug from HEAD:

  • fixed 3183754 - returning false from key press handlers does not prevent typing or form submission
  • WebView.subproj/WebHTMLView.m: (-[WebHTMLView keyDown:]): (-[WebHTMLView keyUp:]):
2:26 PM Changeset in webkit [5322] by vicki
  • 3 edits in trunk

fixed version number. tree is open.

2:23 PM Changeset in webkit [5321]
  • 3 copies in tags/Safari-112

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

2:23 PM Changeset in webkit [5320] by vicki
  • 3 edits in trunk

forgot to tag before setting the version number back (doh!)

2:22 PM Changeset in webkit [5319] by vicki
  • 3 edits in trunk

tree is open for Safari-113

2:20 PM Changeset in webkit [5318] by vicki
  • 6 edits in trunk

Safari-112 stamp

2:00 PM Changeset in webkit [5317] by kocienda
  • 4 edits in trunk/WebCore

Reviewed by me

Rolling out this code since it caused a big performance
regression.

2003-10-29 David Hyatt <hyatt@apple.com>

Add the paged media properties to RenderStyle.
They aren't used yet, but they should now be
parsed and interpreted correctly.

  • khtml/css/cssstyleselector.cpp: (khtml::CSSStyleSelector::applyRule):
  • khtml/rendering/render_style.cpp: (StyleSurroundData::StyleSurroundData): (StyleBoxData::StyleBoxData): (StyleBoxData::operator==): (StyleVisualData::~StyleVisualData): (StyleVisualData::StyleVisualData): (StyleBackgroundData::StyleBackgroundData): (StyleFlexibleBoxData::StyleFlexibleBoxData): (opacity): (textShadow): (StyleInheritedData::StyleInheritedData): (StyleInheritedData::~StyleInheritedData): (StyleInheritedData::operator==):
  • khtml/rendering/render_style.h: (khtml::StyleBackgroundData::~StyleBackgroundData): (khtml::StyleFlexibleBoxData::~StyleFlexibleBoxData): (khtml::RenderStyle::NonInheritedFlags::operator==): (khtml::RenderStyle::setBitDefaults):
12:59 PM Changeset in webkit [5316] by mjs
  • 1 edit in trunk/JavaScriptCore/ChangeLog

Corrected ChangeLog.

12:59 PM Changeset in webkit [5315] by mjs
  • 2 edits in trunk/JavaScriptCore

Reviewed by NOBODY (OOPS!).

  • fixed 3427069 - browsing mp3.com causes leaks (KJS)
  • kjs/string_object.cpp: (StringProtoFuncImp::call): Don't do an early return, since that could leak a temporary regexp.
10:42 AM Changeset in webkit [5314] by mjs
  • 6 edits in trunk/JavaScriptCore

Reviewed by Darin.

  • kjs/grammar.cpp: (yyerror): Updated the commented code.
  • kjs/grammar.y: Don't delete string and identifier tokens when done with them any more, they'll get cleaned up by the lexer now.
  • kjs/internal.cpp: (Parser::parse): Tell lexer when done parsing.
  • kjs/lexer.cpp: (Lexer::Lexer): Initialize new data members. (Lexer::lex): Use new methods to make strings and identifiers, and save them. (Lexer::makeIdentifier): Make a new Identifier and save it in an auto-growing array. (Lexer::makeUString): Likewise for UStrings. (Lexer::doneParsing): Clean up arrays of Ifentifiers and UStrings.
  • kjs/lexer.h:
12:26 AM Changeset in webkit [5313] by hyatt
  • 6 edits in trunk/WebCore

Fix for 3466628, widgets in overflow blocks don't move when the overflow block is scrolled. This
was a regression caused by my change to move widgets only during layout and not at paint time. The
problem with this is that scrolling an overflow block doesn't do a layout, just a repaint. I patched
the layer code to update widget positions on an overflow block scroll.

This then exposed a bug in absolutePosition, namely that the scroll offset was never factored in when
computing absolutePosition. This bug also explains why text selection and cursor display were wrong
inside scrolled overflow blocks.

Reviewed by mjs

  • khtml/rendering/render_box.cpp: (RenderBox::absolutePosition):
  • khtml/rendering/render_layer.cpp: (RenderLayer::scrollToOffset):
  • khtml/rendering/render_object.cpp: (RenderObject::absolutePosition):
  • khtml/rendering/render_text.cpp: (RenderText::cursorPos): (RenderText::posOfChar):
  • khtml/rendering/render_text.h:

Oct 29, 2003:

11:31 PM Changeset in webkit [5312] by mjs
  • 2 edits in trunk/WebKit

Reviewed by Darin.

  • Plugins.subproj/WebBasePluginPackage.m: (-[WebBasePluginPackage dealloc]): Release lastModifiedDate.
10:55 PM Changeset in webkit [5311] by mjs
  • 2 edits in trunk/WebCore

Reviewed by Dave.

  • fixed 3467499 - REGRESSION: onClick handlers on links don't work (bubbling broken)
  • khtml/xml/dom2_eventsimpl.cpp: (EventImpl::EventImpl): Initialize m_cancelBubble (duh).
9:45 PM Changeset in webkit [5310] by hyatt
  • 2 edits in trunk/WebCore

Fix for 3466802. When breaking on a newline, "pre" is determined by checking the actual object that
the line broke on, and not by simply checking the "pre" status of the containing block.

Reviewed by mjs

  • khtml/rendering/bidi.cpp: (khtml::RenderBlock::layoutInlineChildren):
9:12 PM Changeset in webkit [5309] by hyatt
  • 4 edits in trunk/WebCore

Add the paged media properties to RenderStyle. They aren't used yet, but they should now be
parsed and interpreted correctly.

Reviewed by kocienda

  • khtml/css/cssstyleselector.cpp: (khtml::CSSStyleSelector::applyRule):
  • khtml/rendering/render_style.cpp: (StyleBoxData::operator==): (StyleFlexibleBoxData::StyleFlexibleBoxData): (:opacity): (:textShadow): (StyleInheritedData::StyleInheritedData): (StyleInheritedData::operator==):
  • khtml/rendering/render_style.h: (khtml::): (khtml::RenderStyle::NonInheritedFlags::operator==): (khtml::RenderStyle::setBitDefaults): (khtml::RenderStyle::widows): (khtml::RenderStyle::orphans): (khtml::RenderStyle::pageBreakInside): (khtml::RenderStyle::pageBreakBefore): (khtml::RenderStyle::pageBreakAfter): (khtml::RenderStyle::setWidows): (khtml::RenderStyle::setOrphans): (khtml::RenderStyle::setPageBreakInside): (khtml::RenderStyle::setPageBreakBefore): (khtml::RenderStyle::setPageBreakAfter):
5:30 PM Changeset in webkit [5308] by cblu
  • 3 edits in trunk/WebKit

WebKit:

WebKit part of fix for:
<rdar://problem/3467744>: Photoshop files (.psd) don't show up in Open dialog in Safari, but can be viewed
<rdar://problem/3109132>: Can't open movie file via open panel even though it can be dropped in browser window

Reviewed by john.

  • WebView.subproj/WebView.m: (+[WebView _supportedMIMETypes]): new (+[WebView _supportedFileExtensions]): new
  • WebView.subproj/WebViewPrivate.h:

WebBrowser:

Fixed:
<rdar://problem/3467744>: Photoshop files (.psd) don't show up in Open dialog in Safari, but can be viewed
<rdar://problem/3109132>: Can't open movie file via open panel even though it can be dropped in browser window

Reviewed by john.

  • BrowserDocumentController.m: (-[BrowserDocumentController _openableFileExtensions]): override, returns list of types that Safari and WebKit can handle so the NSOpenPanel properly enables files
2:36 PM Changeset in webkit [5307] by cblu
  • 10 edits in trunk/WebKit

Fixed: <rdar://problem/3438716>: jpg and gif images copied from Safari and placed in mail are sent as tiff

Reviewed by john.

  • Misc.subproj/WebNSPasteboardExtras.h:
  • Misc.subproj/WebNSPasteboardExtras.m: (-[NSPasteboard _web_writeFileContents:withFilename:]): new
  • Misc.subproj/WebNSViewExtras.h:
  • Misc.subproj/WebNSViewExtras.m: (-[NSView _web_dragImage:originalData:rect:URL:title:event:]): now takes originalData and calls _web_fileContents:withFilename:
  • WebView.subproj/WebDefaultContextMenuDelegate.m: (-[WebDefaultUIDelegate copyImageToClipboard:]): call _web_writeFileContents:withFilename:
  • WebView.subproj/WebHTMLView.m: (-[WebHTMLView _handleMouseDragged:]): call renamed _web_dragImage and [WebView _cachedResponseForURL:] (-[WebHTMLView namesOfPromisedFilesDroppedAtDestination:]): call [WebView _cachedResponseForURL:]
  • WebView.subproj/WebImageView.m: (-[WebImageView writeImageToPasteboard:]): call _web_writeFileContents:withFilename: (-[WebImageView mouseDragged:]): call renamed _web_dragImage
  • WebView.subproj/WebView.m: (-[WebView _cachedResponseForURL:]): new
  • WebView.subproj/WebViewPrivate.h:
1:47 PM Changeset in webkit [5306] by hyatt
  • 2 edits in trunk/WebCore

Refine the fix to updateLayout.
updateStyleSelector would get called over and over again when you queried for layout properties from
JS. If no stylesheets are pending, this isn't necessary (and is quite expensive, since updateStyleSelector
is a slow function).

Reviewed by darin

  • khtml/xml/dom_docimpl.cpp: (DocumentImpl::updateLayout):
1:15 PM Changeset in webkit [5305] by hyatt
  • 2 edits in trunk/WebCore

Fix crasher in border collapsing code.

Reviewed by kocienda

  • khtml/rendering/render_table.cpp: (RenderTable::cellRight):
12:08 PM Changeset in webkit [5304] by mjs
  • 4 edits in trunk/WebCore

Reviewed by Darin.

  • fixed 3163842 - Citibank cardmember central DHTML menus not working right in Safari
  • khtml/ecma/kjs_html.cpp: (KJS::HTMLElement::getValueProperty): update layout before fetching image properties that need it.
  • khtml/xml/dom_docimpl.cpp: (DocumentImpl::DocumentImpl): Initialize m_ignorePendingStylesheets to false. (DocumentImpl::updateLayout): Ignore pending stylesheets - when JS demands a layout, it wants a real one now. (DocumentImpl::updateStyleSelector): Go ahead with the update if we're ignoring pending stylesheets.
  • khtml/xml/dom_docimpl.h: (DOM::DocumentImpl::haveStylesheetsLoaded): Pretend stylesheets have loaded if we're temporarily ignoring pending stylesheets.
1:18 AM Changeset in webkit [5303] by hyatt
  • 2 adds in trunk/LayoutTests/fast/text/whitespace

Add layout test for pre minwidth bugs.

1:02 AM Changeset in webkit [5302] by hyatt
  • 2 adds in trunk/LayoutTests/fast/inline-block

Add inline block test inside a center tag.

12:57 AM Changeset in webkit [5301] by hyatt
  • 31 edits in trunk/WebCore

Implement support for <marquee>. This includes support for the CSS3 specification (although modified a fair
bit to actually be compatible with WinIE's version and to correct obvious errors in the draft). All of the
marquee behaviors (slide, scroll, and alternate) are supported.

This patch also fixes the following bugs that were discovered while testing marquee:
(1) An error in the computation of scrollWidth and scrollHeight.
(2) The ability to ask for the leftmostPosition as well as the rightmostPosition of content and to
be able to ask for the positions of children (via left/right/lowest) without including the parent in the
computation.
(3) An optimization to RenderFlow's rightmost/lowestPosition functions to avoid examining text elements since
they are always fully accounted for by either overflow or by inline flow boxes.
(4) A fix for RTL rendering. A block with direction:RTL was being placed on the right, when in reality only
its children should be placed on the right.
(5) A fix to prevent inline blocks and tables from computing auto margins (making them just like floats in this
regard).

Reviewed by darin

  • khtml/css/cssparser.cpp: (validUnit): (CSSParser::parseValue):
  • khtml/css/cssproperties.c: (hash_prop): (findProp):
  • khtml/css/cssproperties.h:
  • khtml/css/cssproperties.in:
  • khtml/css/cssstyleselector.cpp: (khtml::convertToLength): (khtml::CSSStyleSelector::applyRule):
  • khtml/css/cssvalues.c: (hash_val): (findValue):
  • khtml/css/cssvalues.h:
  • khtml/css/cssvalues.in:
  • khtml/css/html4.css:
  • khtml/html/html_blockimpl.cpp: (HTMLMarqueeElementImpl::HTMLMarqueeElementImpl): (HTMLMarqueeElementImpl::id): (HTMLMarqueeElementImpl::parseAttribute):
  • khtml/html/html_blockimpl.h: (DOM::HTMLMarqueeElementImpl::minimumDelay):
  • khtml/html/htmlparser.cpp: (KHTMLParser::getElement):
  • khtml/misc/htmlattrs.c: (hash_attr): (findAttr):
  • khtml/misc/htmlattrs.h:
  • khtml/misc/htmlattrs.in:
  • khtml/rendering/bidi.cpp: (khtml::RenderBlock::findNextLineBreak):
  • khtml/rendering/render_block.cpp: (khtml::RenderBlock::lowestPosition): (khtml::RenderBlock::rightmostPosition): (khtml::RenderBlock::leftmostPosition):
  • khtml/rendering/render_block.h:
  • khtml/rendering/render_box.cpp: (RenderBox::setStyle): (RenderBox::calcWidth): (RenderBox::calcHorizontalMargins): (RenderBox::lowestPosition): (RenderBox::rightmostPosition): (RenderBox::leftmostPosition):
  • khtml/rendering/render_box.h:
  • khtml/rendering/render_flow.cpp: (RenderFlow::lowestPosition): (RenderFlow::rightmostPosition): (RenderFlow::leftmostPosition):
  • khtml/rendering/render_flow.h:
  • khtml/rendering/render_layer.cpp: (RenderLayer::RenderLayer): (RenderLayer::~RenderLayer): (RenderLayer::updateLayerPositions): (RenderLayer::scrollToOffset): (RenderLayer::computeScrollDimensions): (RenderLayer::styleChanged): (RenderLayer::stopMarquees): (m_whiteSpace): (Marquee::marqueeSpeed): (Marquee::direction): (Marquee::isHorizontal): (Marquee::computePosition): (Marquee::start): (Marquee::stop): (Marquee::updateMarqueePosition): (Marquee::updateMarqueeStyle): (Marquee::timerEvent):
  • khtml/rendering/render_layer.h: (khtml::): (khtml::RenderLayer::marquee):
  • khtml/rendering/render_object.cpp: (RenderObject::isHTMLMarquee): (RenderObject::sizesToMaxWidth):
  • khtml/rendering/render_object.h: (khtml::RenderObject::lowestPosition): (khtml::RenderObject::rightmostPosition): (khtml::RenderObject::leftmostPosition):
  • khtml/rendering/render_style.cpp: (StyleMarqueeData::StyleMarqueeData): (StyleMarqueeData::operator==): (opacity): (marquee): (StyleCSS3NonInheritedData::operator==): (RenderStyle::RenderStyle):
  • khtml/rendering/render_style.h: (khtml::): (khtml::StyleMarqueeData::operator!=): (khtml::RenderStyle::marqueeIncrement): (khtml::RenderStyle::marqueeSpeed): (khtml::RenderStyle::marqueeLoopCount): (khtml::RenderStyle::marqueeBehavior): (khtml::RenderStyle::marqueeDirection): (khtml::RenderStyle::setMarqueeIncrement): (khtml::RenderStyle::setMarqueeSpeed): (khtml::RenderStyle::setMarqueeDirection): (khtml::RenderStyle::setMarqueeBehavior): (khtml::RenderStyle::setMarqueeLoopCount):
  • khtml/xml/dom_docimpl.cpp: (DocumentImpl::createHTMLElement):
  • kwq/KWQKHTMLPart.mm: (KWQKHTMLPart::clearTimers):
12:29 AM Changeset in webkit [5300] by hyatt
  • 1 edit in trunk/LayoutTests/fast/selectors/064-expected.txt

Fixing the layout test that has a <button>

12:16 AM Changeset in webkit [5299] by hyatt
  • 2 edits in trunk/WebCore

Make <button> be an inline-block.

  • khtml/css/html4.css:
Note: See TracTimeline for information about the timeline view.