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

Timeline



Feb 12, 2007:

8:49 PM Changeset in webkit [19595] by hyatt
  • 7 edits in trunk/WebCore

Fix for bug 12149 (Radar Bug#4928692), external CSS causes incomplete
text field focus.

Make sure to clear out the focus node in willRemove() rather than in
detach(), since detach/attach caused by style recalc should not affect
the focused node.

Reviewed by aroben

  • dom/ContainerNode.cpp: (WebCore::ContainerNode::willRemove):
  • dom/Document.cpp: (WebCore::Document::focusedNodeRemoved): (WebCore::Document::setFocusedNode):
  • dom/Document.h:
  • dom/Element.cpp: (WebCore::Element::updateFocusAppearance):
  • dom/Node.cpp: (WebCore::Node::willRemove): (WebCore::Node::detach):
  • html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::updateFocusAppearance):
8:46 PM Changeset in webkit [19594] by bdash
  • 2 edits in trunk/WebKit

2007-02-13 Mark Rowe <mrowe@apple.com>

Reviewed by Timothy Hatcher.

Fix http://bugs.webkit.org/show_bug.cgi?id=12745
Bug 12745: REGRESSION: Webkit will not load a plugin that Safari can load (symbol missing _objc_msgSend_fpret)

Treat libobjc as a sub-library of WebKit in Debug/Release so that plugins and applications linked against an
umbrella framework version of WebKit that expect to find libobjc symbols in WebKit can do so.

  • WebKit.xcodeproj/project.pbxproj:
5:41 PM Changeset in webkit [19593] by bdash
  • 118 edits
    8 deletes in trunk

Rolling out r19588 as it caused a build failure and a hang in layout tests after the obvious build fix was applied.

5:37 PM Changeset in webkit [19592] by bdash
  • 1 edit in tags/Safari-521.34.1/WebKit/Info.plist

Versioning.

5:35 PM Changeset in webkit [19591] by bdash
  • 2 edits in tags/Safari-521.34.1/WebKit

Merge in r19484.

5:35 PM Changeset in webkit [19590] by kmccullo
  • 21 edits
    6 deletes in trunk

LayoutTests:

Reviewed by .

  • reverting change to not cause regressions and performance problems.
  • fast/loader/local-JavaScript-from-local-expected.txt: Removed.
  • fast/loader/local-JavaScript-from-local.html: Removed.
  • fast/loader/local-iFrame-source-from-local-expected.txt: Removed.
  • fast/loader/local-iFrame-source-from-local.html: Removed.
  • fast/loader/local-image-from-local-expected.txt: Removed.
  • fast/loader/local-image-from-local.html: Removed.

WebCore:

Reviewed by .

  • reverting change to not cause regressions and performance problems.
  • bindings/objc/DOM.mm: (-[DOMElement image]): (-[DOMElement _imageTIFFRepresentation]):
  • dom/XMLTokenizer.cpp: (WebCore::XMLTokenizer::notifyFinished):
  • html/HTMLImageLoader.cpp: (WebCore::HTMLImageLoader::dispatchLoadEvent):
  • html/HTMLTokenizer.cpp: (WebCore::HTMLTokenizer::reset): (WebCore::HTMLTokenizer::notifyFinished):
  • ksvg2/misc/SVGImageLoader.cpp: (WebCore::SVGImageLoader::dispatchLoadEvent):
  • loader/Cache.cpp: (WebCore::Cache::requestResource): (WebCore::Cache::remove):
  • loader/CachedImage.h: (WebCore::CachedImage::canRender): (WebCore::CachedImage::isErrorImage):
  • loader/CachedResource.h:
  • loader/CachedScript.h: (WebCore::CachedScript::errorOccurred):
  • loader/DocLoader.cpp: (WebCore::DocLoader::requestResource): (WebCore::DocLoader::setLoadInProgress):
  • loader/FrameLoader.cpp: (WebCore::FrameLoader::canLoad):
  • page/EventHandler.cpp: (WebCore::selectCursor):
  • rendering/HitTestResult.cpp: (WebCore::HitTestResult::image):
  • rendering/RenderImage.cpp: (WebCore::RenderImage::setCachedImage): (WebCore::RenderImage::imageChanged): (WebCore::RenderImage::paint): (WebCore::RenderImage::layout): (WebCore::RenderImage::calcAspectRatioWidth): (WebCore::RenderImage::calcAspectRatioHeight):
  • rendering/RenderImage.h: (WebCore::RenderImage::isErrorImage):
  • rendering/RenderListItem.cpp: (WebCore::RenderListItem::setStyle):
  • rendering/RenderListMarker.cpp: (WebCore::RenderListMarker::isImage):

WebKit:

Reviewed by .

  • reverting change to not cause regressions and performance problems.
  • Misc/WebNSAttributedStringExtras.mm: (fileWrapperForElement):
5:23 PM Changeset in webkit [19589] by bdash
  • 1 copy in tags/Safari-521.34.1

New tag.

3:57 PM Changeset in webkit [22936] by adachan
  • 12 edits in branches/WindowsMerge

2007-02-12 Ada Chan <adachan@apple.com>

WebCoreWin:

Reviewed by Steve.

<rdar://4952715> Events not being passed from WebCore/WebKit up through IWebForm::doCommandBySelector
Frame::doTextFieldCommandFromEvent()'s signature has changed from taking in a PlatformKeyboardEvent
to KeyboardEvent. Match that in FrameWin.

  • bridge/win/FrameWin.cpp: (WebCore::FrameWin::doTextFieldCommandFromEvent):
  • bridge/win/FrameWin.h:


WebKitWin:

Reviewed by Steve.


Also, checked in a fix in WebContextMenuClient that Adam made on my machine, reviewed by me.

<rdar://4952715> Events not being passed from WebCore/WebKit up through IWebForm::doCommandBySelector
Inform form delegate about delete key press.


DOM event fixes:

  • Removed DOMEventTarget class.
  • IDOMEventTarget no longer extends IDOMObject
  • DOMNode now implements IDOMEventTarget
  • DOMEvent::CoCreateInstance creates the correct subclasses of DOMEvents based on the type of event
  • Added IDOMDocumentEvent interface, which DOMDocument implements.
  • Fixed the out parameter in IDOMUIEvent::view to be IDOMWindow


Implemented DOMHTMLDocument::body and DOMHTMLElement::setInnerText.

  • DOMCoreClasses.cpp: (DOMNode::addEventListener): added as DOMNode now needs to implement IDOMEventTarget (DOMNode::removeEventListener): ditto above (DOMNode::dispatchEvent): ditto above (DOMDocument::QueryInterface): DOMDocument now also implements IDOMDocumentEvent (DOMDocument::createEvent): added as DOMDocument implements IDOMDocumentEvent (DOMElement::focus): implemented
  • DOMCoreClasses.h:
  • DOMEventsClasses.cpp: (DOMEvent::DOMEvent): The data member m_event is now a RefPtr, and the WebCore::Event is now passed into the constructor via a PassRefPtr. (DOMEvent::~DOMEvent): No longer need to deref m_event since we are using a RefPtr. (DOMEvent::createInstance): instantiate the correct DOMEvent subclass based on event type. (DOMEvent::QueryInterface): be able to QI IID_DOMEvent, which returns back the DOMEvent type. (DOMUIEvent::view): fixed the API (DOMKeyboardEvent::ctrlKey): call .get() on RefPtr (DOMKeyboardEvent::shiftKey): ditto above (DOMKeyboardEvent::altKey): ditto above (DOMKeyboardEvent::metaKey): ditto above (DOMKeyboardEvent::altGraphKey): ditto above (DOMMouseEvent::ctrlKey): ditto above (DOMMouseEvent::shiftKey): ditto above (DOMMouseEvent::altKey): ditto above (DOMMouseEvent::metaKey): ditto above
  • DOMEventsClasses.h: (DOMEvent::coreEvent): Added an API to get the WebCore::Event out of a DOMEvent. Used in DOMNode::dispatchEvent. (DOMUIEvent::DOMUIEvent): made public so it can be called in DOMEvent::createInstance (DOMKeyboardEvent::DOMKeyboardEvent): ditto above (DOMKeyboardEvent::view): fixed API (DOMMouseEvent::DOMMouseEvent): made public so it can be called in DOMEvent::createInstance (DOMMouseEvent::view): fixed API (DOMMutationEvent::DOMMutationEvent): made public so it can be called in DOMEvent::createInstance (DOMOverflowEvent::DOMOverflowEvent): made public so it can be called in DOMEvent::createInstance (DOMWheelEvent::DOMWheelEvent): made public so it can be called in DOMEvent::createInstance (DOMWheelEvent::view): fixed API
  • DOMHTMLClasses.cpp: (DOMHTMLDocument::body): (DOMHTMLElement::setInnerText):
  • Interfaces/DOMEvents.idl: IDOMEventTarget no longer extends IDOMObject. Added IDOMDocumentEvent.
  • WebContextMenuClient.cpp: (WebContextMenuClient::getCustomMenuFromDefaultItems): check for error from calling contextMenuItemsForElement.
  • WebFrame.cpp: (WebFrame::textWillBeDeletedInTextField): call form delegate callback doCommandBySelector with VK_BACK when deleting text.


3:52 PM Changeset in webkit [19588] by bdash
  • 120 edits
    8 adds in trunk

2007-02-12 Mitz Pettel <mitz@webkit.org>

Reviewed by Dave Hyatt.

Tests: fast/repaint/float-overflow.html

fast/repaint/float-overflow-right.html

Reflected in existing test results.

Unified floats and overflow for the purposes of painting and hit-testing.
Overhanging and overflowing floats are now factored into a block's overflow
unless their painting has been propagated to an ancestor.

Changed table cells to no longer expand to enclose overflow, thus making
it purely "visual overflow", having no effect on layout in WebCore. It
still determines scrolling dimensions.

  • rendering/InlineFlowBox.cpp: (WebCore::InlineFlowBox::placeBoxesHorizontally): Include inline blocks' horizontal overflow in the inline box's dimensions.
  • rendering/RenderBlock.cpp: (WebCore::RenderBlock::layoutBlock): Removed the expand to enclose overflows behavior. Added code to add this block's floats (and their overflow) to its overflow rect if it is not in a block formatting context. Otherwise, the inclusion of floats in the overflow is deferred until this block's parent examines its floats and possibly adopts overhanging floats. (WebCore::RenderBlock::layoutBlockChildren): (WebCore::RenderBlock::paint): (WebCore::RenderBlock::floatRect): Changed to return an empty rect if there are no floats or the floats are clipped, instead of returning the border box. (WebCore::RenderBlock::addOverhangingFloats): Any floats of the child that are not to be painted by the parent are added to the child's overflow rect. (WebCore::RenderBlock::addVisualOverflow): Added. Adjusts the overflow bounds to include the given rect. (WebCore::RenderBlock::nodeAtPoint):
  • rendering/RenderBlock.h:
  • rendering/RenderFlexibleBox.cpp: (WebCore::RenderFlexibleBox::layoutBlock): (WebCore::RenderFlexibleBox::layoutHorizontalBox): After placing a normal child, add its floats to its overflow, since painting of floats does not propagate to flexible boxes. (WebCore::RenderFlexibleBox::layoutVerticalBox): Ditto.
  • rendering/RenderForeignObject.cpp: (WebCore::RenderForeignObject::layout):
  • rendering/RenderHTMLCanvas.cpp: (WebCore::RenderHTMLCanvas::layout):
  • rendering/RenderImage.cpp: (WebCore::RenderImage::layout):
  • rendering/RenderLayer.cpp: (WebCore::RenderLayer::updateLayerPositions): (WebCore::RenderLayer::absoluteBoundingBox):
  • rendering/RenderLayer.h:
  • rendering/RenderObject.cpp: (WebCore::RenderObject::repaintAfterLayoutIfNeeded):
  • rendering/RenderObject.h: (WebCore::RenderObject::expandsToEncloseOverhangingFloats):
  • rendering/RenderPath.cpp: (WebCore::RenderPath::layout):
  • rendering/RenderSVGContainer.cpp: (WebCore::RenderSVGContainer::layout):
  • rendering/RenderSVGText.cpp: (WebCore::RenderSVGText::layout):
  • rendering/RenderTable.cpp: (WebCore::RenderTable::layout):
  • rendering/RenderTableCell.h: (WebCore::RenderTableCell::expandsToEncloseOverhangingFloats):

2007-02-12 Mitz Pettel <mitz@webkit.org>

Reviewed by Dave Hyatt.

  • css1/formatting_model/inline_elements-expected.checksum:
  • css1/formatting_model/inline_elements-expected.png:
  • css1/formatting_model/inline_elements-expected.txt:
  • css2.1/t0905-c414-flt-00-d-expected.txt:
  • css2.1/t0905-c414-flt-01-d-g-expected.txt:
  • css2.1/t0905-c414-flt-02-c-expected.txt:
  • css2.1/t0905-c414-flt-03-c-expected.txt:
  • css2.1/t0905-c414-flt-04-c-expected.txt:
  • css2.1/t0905-c414-flt-wrap-01-d-g-expected.txt:
  • css2.1/t0905-c5525-fltcont-00-d-g-expected.txt:
  • css2.1/t0905-c5525-fltwidth-02-c-g-expected.txt:
  • css2.1/t0905-c5525-fltwidth-03-c-g-expected.txt:
  • css2.1/t090501-c414-flt-02-d-g-expected.txt:
  • css2.1/t090501-c414-flt-03-b-g-expected.txt:
  • fast/backgrounds/repeat/negative-offset-repeat-expected.txt:
  • fast/block/float/008-expected.txt:
  • fast/block/float/013-expected.checksum:
  • fast/block/float/013-expected.txt:
  • fast/block/float/029-expected.txt:
  • fast/block/float/031-expected.txt:
  • fast/block/float/float-in-float-painting-expected.txt:
  • fast/block/margin-collapse/059-expected.checksum:
  • fast/block/margin-collapse/059-expected.png:
  • fast/block/margin-collapse/059-expected.txt:
  • fast/block/margin-collapse/062-expected.txt:
  • fast/block/margin-collapse/063-expected.txt:
  • fast/box-shadow/basic-shadows-expected.txt:
  • fast/forms/floating-textfield-relayout-expected.checksum:
  • fast/forms/floating-textfield-relayout-expected.txt:
  • fast/lists/003-expected.txt:
  • fast/media/mq-relative-constraints-08-expected.txt:
  • fast/multicol/float-multicol-expected.txt:
  • fast/repaint/float-overflow-expected.checksum: Added.
  • fast/repaint/float-overflow-expected.png: Added.
  • fast/repaint/float-overflow-expected.txt: Added.
  • fast/repaint/float-overflow-right-expected.checksum: Added.
  • fast/repaint/float-overflow-right-expected.png: Added.
  • fast/repaint/float-overflow-right-expected.txt: Added.
  • fast/repaint/float-overflow-right.html: Added.
  • fast/repaint/float-overflow.html: Added.
  • fast/table/009-expected.checksum:
  • fast/table/009-expected.png:
  • fast/table/009-expected.txt:
  • fast/text/text-shadow-extreme-value.html:
  • fast/text/whitespace/012-expected.txt:
  • tables/mozilla/bugs/bug120364-expected.txt:
  • tables/mozilla/bugs/bug196870-expected.checksum:
  • tables/mozilla/bugs/bug196870-expected.png:
  • tables/mozilla/bugs/bug196870-expected.txt:
  • tables/mozilla/bugs/bug45055-2-expected.txt:
  • tables/mozilla/bugs/bug72359-expected.txt:
  • tables/mozilla/marvin/x_table_align_left-expected.txt:
  • tables/mozilla/marvin/x_table_align_right-expected.txt:
  • tables/mozilla_expected_failures/marvin/table_overflow_dirty_reflow-expected.checksum:
  • tables/mozilla_expected_failures/marvin/table_overflow_dirty_reflow-expected.png:
  • tables/mozilla_expected_failures/marvin/table_overflow_dirty_reflow-expected.txt:
  • tables/mozilla_expected_failures/marvin/table_overflow_dirty_reflow_row-expected.checksum:
  • tables/mozilla_expected_failures/marvin/table_overflow_dirty_reflow_row-expected.png:
  • tables/mozilla_expected_failures/marvin/table_overflow_dirty_reflow_row-expected.txt:
  • tables/mozilla_expected_failures/marvin/table_overflow_dirty_reflow_table-expected.checksum:
  • tables/mozilla_expected_failures/marvin/table_overflow_dirty_reflow_table-expected.png:
  • tables/mozilla_expected_failures/marvin/table_overflow_dirty_reflow_table-expected.txt:
  • tables/mozilla_expected_failures/marvin/table_overflow_dirty_reflow_tbody-expected.checksum:
  • tables/mozilla_expected_failures/marvin/table_overflow_dirty_reflow_tbody-expected.png:
  • tables/mozilla_expected_failures/marvin/table_overflow_dirty_reflow_tbody-expected.txt:
  • tables/mozilla_expected_failures/marvin/table_overflow_hidden_table-expected.checksum:
  • tables/mozilla_expected_failures/marvin/table_overflow_hidden_table-expected.png:
  • tables/mozilla_expected_failures/marvin/table_overflow_hidden_table-expected.txt:
  • tables/mozilla_expected_failures/marvin/table_overflow_hidden_tbody-expected.checksum:
  • tables/mozilla_expected_failures/marvin/table_overflow_hidden_tbody-expected.png:
  • tables/mozilla_expected_failures/marvin/table_overflow_hidden_tbody-expected.txt:
  • tables/mozilla_expected_failures/marvin/table_overflow_hidden_tr-expected.checksum:
  • tables/mozilla_expected_failures/marvin/table_overflow_hidden_tr-expected.png:
  • tables/mozilla_expected_failures/marvin/table_overflow_hidden_tr-expected.txt:
  • tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_cell-expected.checksum:
  • tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_cell-expected.png:
  • tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_cell-expected.txt:
  • tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_cell_sibling-expected.checksum:
  • tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_cell_sibling-expected.png:
  • tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_cell_sibling-expected.txt:
  • tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_row-expected.checksum:
  • tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_row-expected.png:
  • tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_row-expected.txt:
  • tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_row_sibling-expected.checksum:
  • tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_row_sibling-expected.png:
  • tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_row_sibling-expected.txt:
  • tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_table-expected.checksum:
  • tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_table-expected.png:
  • tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_table-expected.txt:
  • tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_table_caption-expected.checksum:
  • tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_table_caption-expected.png:
  • tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_table_caption-expected.txt:
  • tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_tbody-expected.checksum:
  • tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_tbody-expected.png:
  • tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_tbody-expected.txt:
  • tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_tbody_sibling-expected.checksum:
  • tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_tbody_sibling-expected.png:
  • tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_tbody_sibling-expected.txt:
  • tables/mozilla_expected_failures/marvin/table_overflow_td_align_right-expected.checksum:
  • tables/mozilla_expected_failures/marvin/table_overflow_td_align_right-expected.png:
  • tables/mozilla_expected_failures/marvin/table_overflow_td_align_right-expected.txt:
  • tables/mozilla_expected_failures/marvin/table_overflow_td_valign_bottom-expected.checksum:
  • tables/mozilla_expected_failures/marvin/table_overflow_td_valign_bottom-expected.png:
  • tables/mozilla_expected_failures/marvin/table_overflow_td_valign_bottom-expected.txt:
  • tables/mozilla_expected_failures/marvin/table_overflow_td_valign_middle-expected.checksum:
  • tables/mozilla_expected_failures/marvin/table_overflow_td_valign_middle-expected.png:
  • tables/mozilla_expected_failures/marvin/table_overflow_td_valign_middle-expected.txt:
  • tables/mozilla_expected_failures/marvin/table_overflow_td_valign_top-expected.checksum:
  • tables/mozilla_expected_failures/marvin/table_overflow_td_valign_top-expected.png:
  • tables/mozilla_expected_failures/marvin/table_overflow_td_valign_top-expected.txt:
3:36 PM Changeset in webkit [19587] by darin
  • 16 edits
    2 adds in trunk

LayoutTests:

Reviewed by Hyatt.

  • update pixel results in cases where overline and line-through were used, because our old code put them 1px too low
  • css1/cascade/cascade_order-expected.checksum: Updated because this has line-through style.
  • css1/cascade/cascade_order-expected.png: Ditto.
  • css1/text_properties/text_decoration-expected.checksum: Updated because this has overline and line-through.
  • css1/text_properties/text_decoration-expected.png: Ditto.
  • css2.1/t1504-c543-txt-decor-00-d-g-expected.checksum: Ditto.
  • css2.1/t1504-c543-txt-decor-00-d-g-expected.png: Ditto.
  • fast/text/stroking-decorations-expected.checksum: Ditto.
  • fast/text/stroking-decorations-expected.png: Ditto.
  • added some missing pixel-test results
  • fast/forms/disabled-select-change-index-expected.checksum: Added.
  • fast/forms/disabled-select-change-index-expected.png: Added.

WebCore:

Reviewed by Hyatt.

  • fix bug where overline and line-through were 1px lower than we intended
  • platform/graphics/GraphicsContext.h: Removed unneeded y offset parameter.
  • platform/graphics/cairo/GraphicsContextCairo.cpp: (WebCore::GraphicsContext::drawLineForText): Removed bogus y offset and +1.
  • platform/graphics/cg/GraphicsContextCG.cpp: (WebCore::GraphicsContext::drawLineForText): Ditto.
  • platform/graphics/qt/GraphicsContextQt.cpp: (WebCore::GraphicsContext::drawLineForText): Ditto.
  • rendering/InlineFlowBox.cpp: (WebCore::InlineFlowBox::paintTextDecorations): Added the "+1" that used to be inside drawLineForText to the underline-drawing code. Changed the other callers of drawLineForText to include the y offset in the y coordinate.
  • rendering/InlineTextBox.cpp: (WebCore::InlineTextBox::paintDecoration): Ditto. Also renamed _tx and _ty to remove the gratuitious underscores. (WebCore::InlineTextBox::paintMarkedTextUnderline): Made the default thickness be 1px instead of 0 (which ends up being roughly 1px in the CG code path anyway). Fixed the code computing the position to put the underline at the bottom of the line (different from regular underlines which are put 1px under the baseline). The old code used to put the underline 1px further down in the thick case, and 2px further down in the non-thick case. Both of those are bad, because they could be completely clipped out in many cases.
3:35 PM Changeset in webkit [19586] by brmorris
  • 5 edits in S60/trunk/WebCore

zalan, Reviewed by yongjun.

DESC: merging WebKit/trunk r16319 to s60/trunk PKAI-6Y2PBN
Fix fieldsets so that they properly expand to enclose overhanging floats
when the fieldset has auto height. This is a nifty undocumented behavior
of the fieldset element. See http://bugs.webkit.org/show_bug.cgi?id=3898

http://bugs.webkit.org/show_bug.cgi?id=12748

3:31 PM Changeset in webkit [19585] by brmorris
  • 2 edits in S60/branches/3.1m/WebCore

w3liu, Reviewed by Zalan Bujtas <zbujtas@gmail.com>.

DESC: [S60] Web page teamwork.com not displayed on 3.1 browser AKKO-6XGJZT
Fix: Insert html node if the main document element is not available (document starts

with comment element)

http://bugs.webkit.org/show_bug.cgi?id=12683

3:24 PM Changeset in webkit [19584] by andersca
  • 7 edits
    2 adds in trunk

LayoutTests:

Reviewed by Darin.

<rdar://problem/4846962>
Aperture: Aperture 1.5 - DOM exception occurs when exporting a web gallery

  • fast/dom/Document/replace-child-expected.txt: Added.
  • fast/dom/Document/replace-child.html: Added.

WebCore:

Reviewed by Darin.

<rdar://problem/4846962>
Aperture: Aperture 1.5 - DOM exception occurs when exporting a web gallery

  • dom/ContainerNode.cpp: (WebCore::ContainerNode::replaceChild): Call checkReplaceChild here.


  • dom/Document.cpp: (WebCore::Document::canReplaceChild):
  • dom/Document.h: Add implementation of canReplaceChild that makes sure that doing the replacement won't cause more than one element and document type node to end up in the document.


  • dom/Node.cpp: (WebCore::Node::canReplaceChild): Base implementation of canReplaceChild.


(WebCore::Node::checkReplaceChild):
New function that does what checAddChild does but calls canReplaceChild.

3:01 PM Changeset in webkit [19583] by kdecker
  • 2 edits in trunk/WebCore

Reviewed by Anders.

Fixed: <rdar://problem/4874059> REGRESSION: Painter IX:register - …
ResourceLoader::willSendRequest() What happened here was that a WebDataSource was being dealloced *while* a load for that resource is still in progress.
  • loader/FrameLoader.cpp: (WebCore::FrameLoader::stopAllLoaders): Calling stopAllLoaders cancels loads and informs the frame load delegate accordingly. The delegate however may decide to kick off a new provisional load as the result of the cancel. Therefore a local variable for the provisional and main doucment loader is introduced, and we now only nil out the provisional loader if the local and member provisional variables represent the exact same load. (WebCore::FrameLoader::continueLoadAfterNavigationPolicy): Added the same check here, too.
1:41 PM Changeset in webkit [19582] by lars
  • 8 edits
    2 adds in trunk

Reviewed by Mitz.

Do not create child renderers for table column groups
if the child has not a table column display type.

12:28 PM Changeset in webkit [19581] by antti
  • 2 edits in trunk/WebCore

Reviewed by Mitz

Fix assertion failure in layout test.

  • html/HTMLMapElement.cpp: (WebCore::HTMLMapElement::parseMappedAttribute):
11:58 AM Changeset in webkit [19580] by kmccullo
  • 3 edits in trunk/WebCore

Reviewed by Brady.

  • Fixing a performance regression caused by r19500. The heart of the matter is that we now call canLoad on every resource request even ones in the cache, to avoid a security issue. So I could not take out the canLoad call, but I but I could try to make it more efficient.
  • loader/DocLoader.cpp: (WebCore::DocLoader::requestResource): (WebCore::DocLoader::setLoadInProgress):
  • loader/FrameLoader.cpp: (WebCore::FrameLoader::canLoad):
11:05 AM Changeset in webkit [19579] by darin
  • 29 edits in trunk

WebCore:

Reviewed by Oliver.

This area still needs work because keypress events are being sent for all the
events before they go to the input methods, and it seems that this is not
compatible with what other browsers do and with what sites assume. That's covered
by this bug:

http://bugs.webkit.org/show_bug.cgi?id=10871
<rdar://problem/4823129> REGRESSION: IME key events different in nightly (10871)

which is still open.

  • bindings/objc/ExceptionHandlers.h: Remove selectRange helper that doesn't really belong here, and also isn't needed since the callers don't want to raise ObjC exceptions.
  • bindings/objc/ExceptionHandlers.mm: Ditto. Also removed unneeded external globals that aren't exported anyway and unneeded includes.
  • bridge/EditorClient.h: Added Mac-specific function, markedTextAbandoned. Long term this might move into platform instead, but it's fine to have it on the client for now as long as it doesn't cause trouble for platforms other than Mac.
  • dom/EventTargetNode.cpp: (WebCore::EventTargetNode::defaultEventHandler): Since all the event handling code in this function is intended to run on the node itself, not parent nodes, check and do nothing if this event is bubbling up from another node. Added code to call a function on EventHandler for default handling of text input events.
  • dom/KeyboardEvent.h:
  • dom/KeyboardEvent.cpp: (WebCore::findKeyboardEvent): Added. Just like the findUIEventWithKeyState function, but specific to keyboard events.
  • dom/TextEvent.h: Added isLineBreak and isBackTab flags so that we can carry additional information about what a text input event is trying to do, but still go through the DOM event machinery.
  • dom/TextEvent.cpp: Ditto.
  • editing/Editor.h:
  • editing/Editor.cpp: (WebCore::Editor::handleKeyPress): Removed unneeded check of isCaretOrRange, since isContentEditable already checks that. (WebCore::Editor::canEdit): Ditto. (WebCore::Editor::canEditRichly): Ditto. (WebCore::Editor::canPaste): Changed to call canEdit for brevity. (WebCore::Editor::replaceSelectionWithText): Changed to take a const String&. (WebCore::Editor::shouldInsertText): Ditto. (WebCore::hasEditableSelection): Removed unneeded check of isCaretOrRange, since isContentEditable already checks that. (WebCore::Editor::Editor): Initialize the new m_ignoreMarkedTextSelectionChange flag. Moved here from WebHTMLView. (WebCore::Editor::insertText): Moved most of the code from -[WebHTMLView insertText:] here, since this needs to be done in response to a text input event and we don't want to go back over the WebKit side for that. (WebCore::Editor::insertLineBreak): Added. Moved here from -[WebHTMLView insertLineBreak:] for the same reason -- needs to be done in response to text input events. (WebCore::Editor::insertParagraphSeparator): Ditto. (WebCore::Editor::selectMarkedText): Added. Used by insertText. (WebCore::Editor::discardMarkedText): Added. Used by insertText. (WebCore::Editor::unmarkText): Added. Used by insertText.
  • editing/mac/EditorMac.mm: (WebCore::Editor::unmarkText): Added. Used by insertText.
  • html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::canHaveSelection): Changed to use isTextField to avoid repeating the switch statement. (WebCore::HTMLInputElement::selectionStart): Ditto. (WebCore::HTMLInputElement::selectionEnd): Ditto. (WebCore::HTMLInputElement::setSelectionStart): Ditto. (WebCore::HTMLInputElement::setSelectionEnd): Ditto. (WebCore::HTMLInputElement::select): Ditto. (WebCore::HTMLInputElement::setSelectionRange): Ditto. (WebCore::HTMLInputElement::createRenderer): Resorted cases alphaebtically. (WebCore::HTMLInputElement::defaultEventHandler): Added code to make hitting return cause the form to be submitted when it comes through as a text input event. This is now the normal case on Macintosh, because enter key presses normally turn into this. In addition, change the other event handling to run only after trying the base defaultEventHandler. That makes the key handling done in EventTargetNode take precedence over the event handling here for editable text fields, which is what we want. This gets rid of the need for the hack where we check inputManagerHasMarkedText and suppress the handling of the enter key.
  • page/EventHandler.h: Removed unneeded includes. Moved EventHandlerDragState down into the private part of the class. Changed sendContextMenuEvent to take a const&. Added new handleTextInputEvent and defaultTextInputEventHandler functions. Made eventLoopHandleMouseUp and eventLoopHandleMouseDragged private. Added private defaultTabEventHandler function.
  • page/EventHandler.cpp: (WebCore::EventHandler::sendContextMenuEvent): Changed parameter to be a const&. (WebCore::EventHandler::defaultKeyboardEventHandler): Rearranged things so that the key bindings handling in handleKeyPress comes before special tab event handling. In cases where the tab turns into text to insert, we now handle it in the text input event handler. (WebCore::EventHandler::handleTextInputEvent): Added. Creates and dispatches a text input event. (WebCore::EventHandler::defaultTextInputEventHandler): Added. Inserts text, but has special cases for the tab and newline character cases. (WebCore::EventHandler::defaultTabEventHandler): Added. Shared by the tab-handling code in the keyboard event and text input event handlers.
  • page/mac/EventHandlerMac.mm: Tweak formatting, remove some unused functions.
  • page/FocusController.h: Removed unnneded includes and forwards, and added an overload of advanceFocus that takes a FocusDirection parameter.
  • page/FocusController.cpp: (WebCore::FocusController::advanceFocus): Changed to allow a 0 for the event pointer. Also added a version where the direction is passed explicitly, to be used for cases where we want to tab backward even if the event doesn't have a shift modifier key set.
  • platform/graphics/svg/SVGImageEmptyClients.h: Updated for change to EditorClient. This should really probably just use 0 for the EditorClient.
  • WebCore.exp: Update both for newly used and no-longer-used entry points.
  • page/mac/WebCoreFrameBridge.h:
  • page/mac/WebCoreFrameBridge.mm: Removed two unused methods.

WebKit:

Reviewed by Oliver.

  • WebCoreSupport/WebEditorClient.h:
  • WebCoreSupport/WebEditorClient.mm: (WebEditorClient::markedTextAbandoned): Added.
  • WebView/WebHTMLView.mm: (-[WebHTMLView menuForEvent:]): Added explicit constructor needed now that the function takes a const&. (-[WebHTMLView becomeFirstResponder]): Removed fake event code, no longer needed since advanceFocus now works fine with 0 for a DOM event. (-[WebHTMLView _expandSelectionToGranularity:]): Changed to use the normal selection controller function instead of selectRange. (-[WebHTMLView insertTab:]): Changed to call bottleneck that receives the DOM event. (-[WebHTMLView insertBacktab:]): Ditto. (-[WebHTMLView insertNewline:]): Ditto. (-[WebHTMLView insertLineBreak:]): Ditto. (-[WebHTMLView insertParagraphSeparator:]): Ditto. (-[WebHTMLView insertNewlineIgnoringFieldEditor:]): Ditto. (-[WebHTMLView insertTabIgnoringFieldEditor:]): Ditto. (-[WebHTMLView yank:]): Updated to call Editor directly since the insertText code now works via a text input event which is not what we want for paste-like things such as yank. (-[WebHTMLView yankAndSelect:]): Ditto. (-[WebHTMLView selectToMark:]): Changed to use the normal selection controller function instead of selectRange, which also allows us to remove the ObjC exception handling code. (-[WebHTMLView swapWithMark:]): Ditto. (-[WebHTMLView transpose:]): Ditto. (-[WebHTMLView unmarkText]): Since this is one of the calls back from the input manager, added code to set the "event was handled" flag. Moved the actual work into the Editor class in WebCore and just call that from here. (-[WebHTMLView _selectRangeInMarkedText:]): Changed to use the normal selection controller function instead of selectRange. (-[WebHTMLView setMarkedText:selectedRange:]): Since this is one of the calls back from the input manager, added code to set the "event was handled" flag. Also changed the ignoreMarkedTextSelectionChange to use the flag over on the WebCore side, since we moved it there and to call selectMarkedText over on the WebCore side too. (-[WebHTMLView doCommandBySelector:]): Added special cases for newline and tab selectors so that the event is passed along. These selectors are special because they are ones that turn into text input events. (-[WebHTMLView _discardMarkedText]): Moved the body of this function into the Editor class in WebCore and just call that from here. (-[WebHTMLView insertText:]): Added code to send a text input event instead of calling the editor to do text insertion. The insertion is then done in the default handler for the text input event. (-[WebHTMLView _insertNewlineWithEvent:isLineBreak:]): Added. Sends a text input event. (-[WebHTMLView _insertTabWithEvent:isBackTab:]): Ditto. (-[WebHTMLView _updateSelectionForInputManager]): Changed to use the ignoreMarkedTextSelectionChange flag in Editor now that the one here is gone.
  • WebView/WebHTMLViewInternal.h: Remove ignoreMarkedTextSelectionChange field.
  • WebView/WebView.mm: (-[WebView setSelectedDOMRange:affinity:]): Changed to use the normal selection controller function instead of selectRange.
10:07 AM Changeset in webkit [19578] by antti
  • 4 edits
    4 adds in trunk

LayoutTests:

Reviewed by Darin

  • fast/images/imagemap-case-expected.checksum: Added.
  • fast/images/imagemap-case-expected.png: Added.
  • fast/images/imagemap-case-expected.txt: Added.
  • fast/images/imagemap-case.html: Added.

WebCore:

Reviewed by Darin.


Make imagemap names case insensitive in HTML mode

  • dom/Document.cpp: (WebCore::Document::getImageMap):
  • html/HTMLMapElement.cpp: (WebCore::HTMLMapElement::parseMappedAttribute):
9:15 AM Changeset in webkit [19577] by ggaren
  • 2 edits in trunk/LayoutTests

Updated results for this failing test. It looks like Maciej generated
the original results before he made the test "dump as text."

  • fast/text/text-shadow-extreme-value-expected.txt:
7:28 AM Changeset in webkit [19576] by brmorris
  • 5 edits in S60/trunk/WebKit

bujtas, Reviewed by Yongjun, merged by Brad.

DESC: Merge of r19540 to s60/trunk: Can not open the Browser application ALES-6Y9GG7
fix: delay formmanager construct
http://bugs.webkit.org/show_bug.cgi?id=12714

6:59 AM Changeset in webkit [19575] by brmorris
  • 3 edits in S60/trunk/WebKit

yaharon, reviewed by yongjun

DESC: [S60] BrowserNG: Passwords stored without notifying the user MLIO-6XXE6N
http://bugs.webkit.org/show_bug.cgi?id=12712

6:56 AM Changeset in webkit [19574] by brmorris
  • 2 edits in S60/trunk/WebKit

sareen, reviewed by <yongjun.zhang@nokia.com>.

DESC: Squares are displayed instead of characters for Greek web pages.
http://bugs.webkit.org/show_bug.cgi?id=11469

3:59 AM Changeset in webkit [19573] by mjs
  • 3 edits
    2 adds in trunk

LayoutTests:

Reviewed by Antti.



  • fast/text/text-shadow-extreme-value.html: Added.
  • fast/text/text-shadow-extreme-value-expected.txt: Added.

WebCore:

Reviewed by Antti.


Test: fast/text/text-shadow-extreme-value.html

  • platform/graphics/cg/GraphicsContextCG.cpp: (WebCore::GraphicsContext::setShadow): Clamp shadow value to 1000px, anything more seems to make CG unhappy.

Feb 11, 2007:

11:37 PM Changeset in webkit [19572] by beidson
  • 3 edits in trunk/WebCore

Reviewed by Maciej

First in what will be a series of HistoryItem enhancements to help debugging

  • history/HistoryItem.cpp: (WebCore::HistoryItem::showTree): (WebCore::HistoryItem::showTreeWithIndent): (showTree): Outside of WebCore namespace, and extern "C" - to make even the DWARF debugger able to find it... *sigh*
  • history/HistoryItem.h:
11:21 PM Changeset in webkit [19571] by mjs
  • 7 edits
    2 adds in trunk

LayoutTests:

Test case not reviewed; based on manual test by David Kilzer.


  • svg/custom/use-events-crash.svg: Added.

WebCore:

Reviewed by Anders.


Test: svg/cust/use-events-crash.svg

  • bindings/js/kjs_dom.cpp: (KJS::toJS):
  • ksvg2/svg/SVGElementInstance.cpp: (WebCore::SVGElementInstance::toNode):
  • ksvg2/svg/SVGElementInstance.h:

WebKitTools:

Reviewed by Mitz.


  • add contextClick() operation to eventSender to be able to test this
  • DumpRenderTree/EventSendingController.m: (+[EventSendingController isSelectorExcludedFromWebScript:]): (-[EventSendingController contextClick]):
11:06 PM Changeset in webkit [19570] by bdash
  • 13 edits
    3 adds in trunk/LayoutTests

Binary portion of patch landed in r19490 that I forgot to land.

8:47 PM Changeset in webkit [22935] by aroben
  • 3 edits in branches/WindowsMerge/WebKitWin

Fixing line endings.

  • WebResource.cpp:
  • WebResource.h:
8:06 PM Changeset in webkit [19569] by mjs
  • 3 edits
    4 adds in trunk

LayoutTests:

Reviewed by Maciej.

  • fast/text/delete-hard-break-character-expected.checksum: Added.
  • fast/text/delete-hard-break-character-expected.png: Added.
  • fast/text/delete-hard-break-character-expected.txt: Added.
  • fast/text/delete-hard-break-character.html: Added.

WebCore:

Reviewed by Maciej.

Test: fast/text/delete-hard-break-character.html

The bug was caused by not updating a line whose line break object and offset
has been deleted. When deleting text, all lines containing the deleted text
are marked dirty. However, if the first character being deleted is a newline
which serves as a hard line break for the previous line, then that line will
not be marked, and since it will be a clean line ending with a line break,
relayout will begin at the next line. The fix is to check for this when
determining where to relayout from.

  • rendering/bidi.cpp: (WebCore::RenderBlock::determineStartPosition): Changed the condition for including the last clean line in relayout to include the case where the last clean line ends with a line break, but that line break is a newline that has been deleted.
5:19 PM Changeset in webkit [19568] by weinig
  • 2 edits in trunk/WebKit

Reviewed by Mark.

Switch the initial value of box-sizing property from "border-box" to "content-box".

4:18 PM Changeset in webkit [19567] by antti
  • 3 edits
    4 adds in trunk

LayoutTests:

Reviewed by Maciej.


Test for REGRESSION: Google Calendar cell highlight misplaced
http://bugs.webkit.org/show_bug.cgi?id=12687

  • fast/block/positioning/offsetLeft-offsetTop-borders-expected.checksum: Added.
  • fast/block/positioning/offsetLeft-offsetTop-borders-expected.png: Added.
  • fast/block/positioning/offsetLeft-offsetTop-borders-expected.txt: Added.
  • fast/block/positioning/offsetLeft-offsetTop-borders.html: Added.

WebCore:

Reviewed by Maciej.


REGRESSION: Google Calendar cell highlight misplaced
http://bugs.webkit.org/show_bug.cgi?id=12687


Make offsetLeft/offsetTop/offsetParent behavior match Firefox.

  • rendering/RenderObject.cpp: (WebCore::RenderObject::offsetLeft): (WebCore::RenderObject::offsetTop): (WebCore::RenderObject::offsetParent):
3:50 PM Changeset in webkit [19566] by antti
  • 3 edits
    4 adds in trunk

LayoutTests:

Reviewed by Maciej.


Test for REGRESSION: No day/week scrollbar in Google Calendar
http://bugs.webkit.org/show_bug.cgi?id=11985

  • fast/layers/overflow-scroll-auto-switch-expected.checksum: Added.
  • fast/layers/overflow-scroll-auto-switch-expected.png: Added.
  • fast/layers/overflow-scroll-auto-switch-expected.txt: Added.
  • fast/layers/overflow-scroll-auto-switch.html: Added.

WebCore:

Reviewed by Maciej.

Make sure overflow:auto scrollbars are always enabled. If they were overflow:scroll
and dynamically changed to auto they might still be disabled.

  • rendering/RenderLayer.cpp: (WebCore::RenderLayer::updateScrollInfoAfterLayout):
10:28 AM Changeset in webkit [19565] by darin
  • 2 edits in trunk/WebKitTools
  • Scripts/check-for-global-initializers: Fix case where executable doesn't exist at all so it doesn't give a perl exception (happens in clean builds, for example).
1:05 AM Changeset in webkit [19564] by ap
  • 3 edits
    2 adds in trunk

Reviewed by Hyatt.

http://bugs.webkit.org/show_bug.cgi?id=12581
XPath title shouldn't match <title> in XHTML

Test: fast/xpath/ensure-null-namespace.xhtml

  • xml/XPathStep.cpp: (WebCore::XPath::Step::nodeTestMatches): Only let a null namespace match any for HTML.
12:28 AM Changeset in webkit [19563] by ap
  • 2 edits
    1 add in trunk/WebCore

Reviewed by Adam.

http://bugs.webkit.org/show_bug.cgi?id=12701
REGRESSION: After javascript, onChange not triggered when selecting same option

  • html/HTMLSelectElement.cpp: (WebCore::HTMLSelectElement::setSelectedIndex): Remember m_lastOnChangeIndex value, as it can change from setSelected() now. (WebCore::HTMLSelectElement::notifyOptionSelected): Update m_lastOnChangeIndex.
  • manual-tests/select-onchange-after-js.html: Added. Also tests for bug 11402.
Note: See TracTimeline for information about the timeline view.