23:49 Changeset [29665] by alp@webkit.org

2008-01-18 Luca Bruno <lethalman88@gmail.com>

Reviewed by Alp Toker.

[GTK] REGRESSION: keyboard cursor doesn't blink

[GTK] REGRESSION: tab focusing doesn't work

  • WebView/webkitwebview.cpp: (webkit_web_view_focus_in_event): Added. Set the active frame. (webkit_web_view_class_init):
22:01 Changeset [29664] by slewis@apple.com

2008-01-18 Stephanie <slewis@apple.com>

Reviewed by Oliver.

Workaround for rdar:5695848. Set mime_type for local files based on file extension.

  • platform/network/cf/ResourceResponseCFNet.cpp: (WebCore::ResourceResponse::doUpdateResourceResponse):
21:49 Changeset [29663] by darin@apple.com

set eol-style to native on tons of files to head off future mixed-line-ending problems

17:44 Changeset [29662] by adele@apple.com

Reviewed by Oliver.

Fix for <rdar://5683527> media/{audio,videocontrols-rendering.html failing

Remove platform specific results from media directory, since they should match the mac. Also, remove these tests from the skipped list.

  • platform/win/Skipped:
  • platform/win/media: Removed.
17:30 Changeset [29661] by adele@apple.com

Updating these results again. I accidently checked in the other results with some local changes.

  • platform/mac/media/audio-controls-rendering-expected.checksum:
  • platform/mac/media/audio-controls-rendering-expected.png:
  • platform/mac/media/video-controls-rendering-expected.checksum:
  • platform/mac/media/video-controls-rendering-expected.png:
  • platform/mac/media/video-display-toggle-expected.checksum:
  • platform/mac/media/video-display-toggle-expected.png:
  • platform/mac/media/video-seek-past-end-playing-expected.checksum:
  • platform/mac/media/video-seek-past-end-playing-expected.png:
17:11 Changeset [29660] by kmccullough@apple.com
  • Build fix.
  • kjs/ustring.h:
16:58 Changeset [29659] by bdakin@apple.com

Rubber stamped by Darin.

These are updated test results after http://bugs.webkit.org/
show_bug.cgi?id=15765 ASSERTION FAILED: m_frame->page() in
FrameLoader::tokenizerProcessedData using the new GMail interface
was checked in. This is a TEMPORARY fix until http://
bugs.webkit.org/show_bug.cgi?id=16853 really addresses this

  • http/tests/loading/gmail-assert-on-load-expected.txt:
  • http/tests/loading/onload-vs-immediate-refresh-expected.txt:
16:55 Changeset [29658] by kmccullough@apple.com

Rubber stamped by Geoff.

  • <rdar://5667267> editing/selection/5131716-1.html is failing The problem is when the fonts are not present, but they should be available now. This may have failed for other reasons in the past that are now fixed.
  • platform/win/Skipped:
16:24 Changeset [29657] by adachan@apple.com

<rdar://problem/5682340> REGRESSION (r28188): Context menu appears at wrong place when clicking in iframe whose parent is scrolled (16827)
Calling absolutePosition() in EventHandler::hitTestResultAtPoint() is extremely inefficient and passing in
true as fixed before was wrong. Use HitTestResult::localPoint() instead, and take into account border and padding widths.

Reviewed by Hyatt and Darin.

  • page/EventHandler.cpp: (WebCore::EventHandler::hitTestResultAtPoint):
  • rendering/HitTestResult.cpp: (WebCore::HitTestResult::operator=):
16:09 Changeset [29656] by adele@apple.com

Reviewed by Antti.

Adding pixel results for media tests.

  • platform/mac/media/audio-constructor-expected.checksum: Added.
  • platform/mac/media/audio-constructor-expected.png: Added.
  • platform/mac/media/audio-constructor-src-expected.checksum: Added.
  • platform/mac/media/audio-constructor-src-expected.png: Added.
  • platform/mac/media/broken-video-expected.checksum: Added.
  • platform/mac/media/broken-video-expected.png: Added.
  • platform/mac/media/constructors-expected.checksum: Added.
  • platform/mac/media/constructors-expected.png: Added.
  • platform/mac/media/fallback-expected.checksum: Added.
  • platform/mac/media/fallback-expected.png: Added.
  • platform/mac/media/progress-event-expected.checksum: Added.
  • platform/mac/media/progress-event-expected.png: Added.
  • platform/mac/media/remove-from-document-expected.checksum: Added.
  • platform/mac/media/remove-from-document-expected.png: Added.
  • platform/mac/media/unsupported-rtsp-expected.checksum: Added.
  • platform/mac/media/unsupported-rtsp-expected.png: Added.
  • platform/mac/media/unsupported-tracks-expected.checksum: Added.
  • platform/mac/media/unsupported-tracks-expected.png: Added.
  • platform/mac/media/video-append-source-expected.checksum: Added.
  • platform/mac/media/video-append-source-expected.png: Added.
  • platform/mac/media/video-autoplay-expected.checksum: Added.
  • platform/mac/media/video-autoplay-expected.png: Added.
  • platform/mac/media/video-buffered-expected.checksum: Added.
  • platform/mac/media/video-buffered-expected.png: Added.
  • platform/mac/media/video-controls-expected.checksum: Added.
  • platform/mac/media/video-controls-expected.png: Added.
  • platform/mac/media/video-currentTime-expected.checksum: Added.
  • platform/mac/media/video-currentTime-expected.png: Added.
  • platform/mac/media/video-currentTime-set-expected.checksum: Added.
  • platform/mac/media/video-currentTime-set-expected.png: Added.
  • platform/mac/media/video-currentTime-set2-expected.checksum: Added.
  • platform/mac/media/video-currentTime-set2-expected.png: Added.
  • platform/mac/media/video-dom-autoplay-expected.checksum: Added.
  • platform/mac/media/video-dom-autoplay-expected.png: Added.
  • platform/mac/media/video-dom-end-expected.checksum: Added.
  • platform/mac/media/video-dom-end-expected.png: Added.
  • platform/mac/media/video-dom-loopcount-expected.checksum: Added.
  • platform/mac/media/video-dom-loopcount-expected.png: Added.
  • platform/mac/media/video-dom-loopend-expected.checksum: Added.
  • platform/mac/media/video-dom-loopend-expected.png: Added.
  • platform/mac/media/video-dom-loopstart-expected.checksum: Added.
  • platform/mac/media/video-dom-loopstart-expected.png: Added.
  • platform/mac/media/video-dom-src-expected.checksum: Added.
  • platform/mac/media/video-dom-src-expected.png: Added.
  • platform/mac/media/video-dom-start-expected.checksum: Added.
  • platform/mac/media/video-dom-start-expected.png: Added.
  • platform/mac/media/video-end-expected.checksum: Added.
  • platform/mac/media/video-end-expected.png: Added.
  • platform/mac/media/video-error-abort-expected.checksum: Added.
  • platform/mac/media/video-error-abort-expected.png: Added.
  • platform/mac/media/video-error-does-not-exist-expected.checksum: Added.
  • platform/mac/media/video-error-does-not-exist-expected.png: Added.
  • platform/mac/media/video-load-networkState-expected.checksum: Added.
  • platform/mac/media/video-load-networkState-expected.png: Added.
  • platform/mac/media/video-load-readyState-expected.checksum: Added.
  • platform/mac/media/video-load-readyState-expected.png: Added.
  • platform/mac/media/video-loopcount-expected.checksum: Added.
  • platform/mac/media/video-loopcount-expected.png: Added.
  • platform/mac/media/video-loopend-expected.checksum: Added.
  • platform/mac/media/video-loopend-expected.png: Added.
  • platform/mac/media/video-loopstart-expected.checksum: Added.
  • platform/mac/media/video-loopstart-expected.png: Added.
  • platform/mac/media/video-muted-expected.checksum: Added.
  • platform/mac/media/video-muted-expected.png: Added.
  • platform/mac/media/video-no-autoplay-expected.checksum: Added.
  • platform/mac/media/video-no-autoplay-expected.png: Added.
  • platform/mac/media/video-pause-empty-events-expected.checksum: Added.
  • platform/mac/media/video-pause-empty-events-expected.png: Added.
  • platform/mac/media/video-play-empty-events-expected.checksum: Added.
  • platform/mac/media/video-play-empty-events-expected.png: Added.
  • platform/mac/media/video-play-pause-events-expected.checksum: Added.
  • platform/mac/media/video-play-pause-events-expected.png: Added.
  • platform/mac/media/video-play-pause-exception-expected.checksum: Added.
  • platform/mac/media/video-play-pause-exception-expected.png: Added.
  • platform/mac/media/video-poster-expected.checksum: Added.
  • platform/mac/media/video-poster-expected.png: Added.
  • platform/mac/media/video-seek-past-end-paused-expected.checksum: Added.
  • platform/mac/media/video-seek-past-end-paused-expected.png: Added.
  • platform/mac/media/video-seek-past-end-playing-expected.checksum: Added.
  • platform/mac/media/video-seek-past-end-playing-expected.png: Added.
  • platform/mac/media/video-seekable-expected.checksum: Added.
  • platform/mac/media/video-seekable-expected.png: Added.
  • platform/mac/media/video-seeking-expected.checksum: Added.
  • platform/mac/media/video-seeking-expected.png: Added.
  • platform/mac/media/video-size-expected.checksum: Added.
  • platform/mac/media/video-size-expected.png: Added.
  • platform/mac/media/video-source-expected.checksum: Added.
  • platform/mac/media/video-source-expected.png: Added.
  • platform/mac/media/video-source-media-expected.checksum: Added.
  • platform/mac/media/video-source-media-expected.png: Added.
  • platform/mac/media/video-source-type-expected.checksum: Added.
  • platform/mac/media/video-source-type-expected.png: Added.
  • platform/mac/media/video-src-change-expected.checksum: Added.
  • platform/mac/media/video-src-change-expected.png: Added.
  • platform/mac/media/video-src-expected.checksum: Added.
  • platform/mac/media/video-src-expected.png: Added.
  • platform/mac/media/video-src-remove-expected.checksum: Added.
  • platform/mac/media/video-src-remove-expected.png: Added.
  • platform/mac/media/video-src-set-expected.checksum: Added.
  • platform/mac/media/video-src-set-expected.png: Added.
  • platform/mac/media/video-src-source-expected.checksum: Added.
  • platform/mac/media/video-src-source-expected.png: Added.
  • platform/mac/media/video-start-expected.checksum: Added.
  • platform/mac/media/video-start-expected.png: Added.
  • platform/mac/media/video-volume-expected.checksum: Added.
  • platform/mac/media/video-volume-expected.png: Added.
  • platform/mac/media/video-width-height-expected.checksum: Added.
  • platform/mac/media/video-width-height-expected.png: Added.
16:04 Changeset [29655] by bdakin@apple.com


Reviewed by Darin, landed by Beth.

The call to HTMLTokenizer::write might result in a call to ::end which will invoke
HTMLParser::finished() or Document::finishedParsing(). HTMLParser::finished() will eventually
call Document::finishedParsing. The Document will delete the calling HTMLTokenizer and from the deleted
tokenizer we will call into FrameLoader::tokenizerProcessedData.
-) FrameLoader::tokenizerProcessedData calls FrameLoader::checkCompleted which gets called from the Document::finishedParsing


  • html/HTMLTokenizer.cpp: (WebCore::HTMLTokenizer::timerFired):


Reviewed by Darin, landed by Beth.

-test for http://bugs.webkit.org/show_bug.cgi?id=15765
Gmail hitting an assert in FrameLoader::tokenizerProcessedData

  • http/tests/loading/gmail-assert-on-load-expected.txt: Added.
  • http/tests/loading/gmail-assert-on-load.html: Added.
  • http/tests/loading/resources/gmail-assert-on-load-frame.html: Added.
16:01 Changeset [29654] by weinig@apple.com

Reviewed by Beth Dakin.

Fix for <rdar://problem/5683524> http/tests/security/cross-frame-access-get.html is failing

  • Guard against possible timing related failures using polling.
  • http/tests/security/:
  • http/tests/security/resources/cross-frame-iframe-for-get-test.html:
16:00 Changeset [29653] by kmccullough@apple.com
  • Build fix.
  • kjs/ustring.cpp:
  • kjs/ustring.h: (KJS::UString::cost):
15:33 Changeset [29652] by weinig@apple.com

Remove incorrect addition of ChangeLog as changed in the ChangeLog.

15:20 Changeset [29651] by hyatt@apple.com

Update inline results after previous checkins. New results match Firefox more closely.

  • platform/mac/fast/inline/001-expected.checksum:
  • platform/mac/fast/inline/001-expected.png:
  • platform/mac/fast/inline/002-expected.checksum:
  • platform/mac/fast/inline/002-expected.png:
  • platform/mac/fast/inline/br-text-decoration-expected.checksum:
  • platform/mac/fast/inline/br-text-decoration-expected.png:
  • platform/mac/fast/inline/continuation-outlines-expected.checksum:
  • platform/mac/fast/inline/continuation-outlines-expected.png:
  • platform/mac/fast/inline/continuation-outlines-with-layers-expected.checksum:
  • platform/mac/fast/inline/continuation-outlines-with-layers-expected.png:
  • platform/mac/fast/inline/dirtyLinesForInline-expected.checksum:
  • platform/mac/fast/inline/dirtyLinesForInline-expected.png:
  • platform/mac/fast/inline/drawStyledEmptyInlines-expected.checksum:
  • platform/mac/fast/inline/drawStyledEmptyInlines-expected.png:
  • platform/mac/fast/inline/drawStyledEmptyInlines-expected.txt:
  • platform/mac/fast/inline/drawStyledEmptyInlinesWithWS-expected.checksum:
  • platform/mac/fast/inline/drawStyledEmptyInlinesWithWS-expected.png:
  • platform/mac/fast/inline/emptyInlinesWithinLists-expected.checksum:
  • platform/mac/fast/inline/emptyInlinesWithinLists-expected.png:
  • platform/mac/fast/inline/emptyInlinesWithinLists-expected.txt:
  • platform/mac/fast/inline/inline-borders-with-bidi-override-expected.checksum:
  • platform/mac/fast/inline/inline-borders-with-bidi-override-expected.png:
  • platform/mac/fast/inline/outline-continuations-expected.checksum:
  • platform/mac/fast/inline/outline-continuations-expected.png:
  • platform/mac/fast/inline/positionedLifetime-expected.checksum:
  • platform/mac/fast/inline/positionedLifetime-expected.png:
  • platform/mac/fast/inline/styledEmptyInlinesWithBRs-expected.checksum:
  • platform/mac/fast/inline/styledEmptyInlinesWithBRs-expected.png:
15:10 Changeset [29650] by hyatt@apple.com

Don't apply the border/margin/padding check to root line boxes, since their renderers
are blocks.

  • rendering/InlineFlowBox.cpp: (WebCore::InlineFlowBox::computeLogicalBoxHeights): (WebCore::InlineFlowBox::placeBoxesVertically):
14:59 Changeset [29649] by hyatt@apple.com


Not reviewed: rolling out a previous patch.

Fixed <rdar://problem/5695439> Crash during GCController destructor on
quitting browser

Used svn merge to roll out r29603 because it introduced some crashes
on quit.

GC relies on static hash tables, so it's not safe to GC from a static
destructor, which might run after the static hash tables' destructors.

  • bindings/js/GCController.cpp: (WebCore::GCController::garbageCollectNow):
  • bindings/js/GCController.h:


Fix for http://bugs.webkit.org/show_bug.cgi?id=15665

Reviewed by Beth

  • fast/inline/inline-padding-disables-text-quirk.html: Added.
  • platform/mac/fast/inline/inline-padding-disables-text-quirk-expected.checksum: Added.
  • platform/mac/fast/inline/inline-padding-disables-text-quirk-expected.png: Added.
  • platform/mac/fast/inline/inline-padding-disables-text-quirk-expected.txt: Added.
14:50 Changeset [29648] by ggaren@apple.com

Not reviewed: rolling out a previous patch.

Fixed <rdar://problem/5695439> Crash during GCController destructor on
quitting browser

Used svn merge to roll out r29603 because it introduced some crashes
on quit.

GC relies on static hash tables, so it's not safe to GC from a static
destructor, which might run after the static hash tables' destructors.

  • bindings/js/GCController.cpp: (WebCore::GCController::garbageCollectNow):
  • bindings/js/GCController.h:
13:56 Changeset [29647] by hyatt@apple.com


Fix for http://bugs.webkit.org/show_bug.cgi?id=14975

Computed size of padding is incorrect because we default padding to auto. This is a made-up value that
was only used to implement cellpadding on tables. We needed this made-up value in order to tell that
padding wasn't set so that we could then apply cellpadding.

This patch rewrites cellpadding to be like other browsers. Instead of being a setting on the table
renderer that applies to all cells (even ones that were not <td>s), cellpadding is now mapped into the
style of <td>s. With this change it effectively becomes a content model feature and not a rendering

For example, a <td> will pick up cellpadding even when it is not a cell and/or the enclosing <table> is
not a table. Anonymous cells and CSS-display-type cells will now never pick up cellpadding. This behavior
is all consistent with other browsers.

Reviewed by Antti

Added fast/css/padding-no-renderer.html

  • css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::canShareStyleWithElement): (WebCore::CSSStyleSelector::styleForElement):
  • css/CSSStyleSelector.h:
  • dom/StyledElement.cpp:
  • dom/StyledElement.h: (WebCore::StyledElement::canHaveAdditionalAttributeStyleDecls): (WebCore::StyledElement::additionalAttributeStyleDecls):
  • html/HTMLTableCellElement.cpp: (WebCore::HTMLTableCellElement::additionalAttributeStyleDecls):
  • html/HTMLTableCellElement.h: (WebCore::HTMLTableCellElement::canHaveAdditionalAttributeStyleDecls):
  • html/HTMLTableColElement.cpp: (WebCore::HTMLTableColElement::additionalAttributeStyleDecls):
  • html/HTMLTableColElement.h: (WebCore::HTMLTableColElement::canHaveAdditionalAttributeStyleDecls):
  • html/HTMLTableElement.cpp: (WebCore::HTMLTableElement::parseMappedAttribute): (WebCore::HTMLTableElement::additionalAttributeStyleDecls): (WebCore::HTMLTableElement::addSharedCellDecls): (WebCore::HTMLTableElement::addSharedCellBordersDecl): (WebCore::HTMLTableElement::addSharedCellPaddingDecl): (WebCore::HTMLTableElement::addSharedGroupDecls): (WebCore::HTMLTableElement::attach):
  • html/HTMLTableElement.h: (WebCore::HTMLTableElement::canHaveAdditionalAttributeStyleDecls):
  • html/HTMLTableSectionElement.cpp: (WebCore::HTMLTableSectionElement::additionalAttributeStyleDecls):
  • html/HTMLTableSectionElement.h: (WebCore::HTMLTableSectionElement::canHaveAdditionalAttributeStyleDecls):
  • rendering/AutoTableLayout.cpp: (WebCore::AutoTableLayout::recalcColumn):
  • rendering/RenderObject.cpp: (WebCore::RenderObject::paddingTop): (WebCore::RenderObject::paddingBottom): (WebCore::RenderObject::paddingLeft): (WebCore::RenderObject::paddingRight):
  • rendering/RenderStyle.cpp: (WebCore::StyleSurroundData::StyleSurroundData):
  • rendering/RenderStyle.h: (WebCore::RenderStyle::initialPadding):
  • rendering/RenderTable.cpp: (WebCore::RenderTable::RenderTable):
  • rendering/RenderTable.h:


Updated results for http://bugs.webkit.org/show_bug.cgi?id=14975

Reviewed by Antti

  • fast/css/computed-style-without-renderer-expected.txt:
  • fast/css/padding-no-renderer-expected.txt: Added.
  • fast/css/padding-no-renderer.html: Added.
  • platform/mac/fast/css/acid2-expected.checksum:
  • platform/mac/fast/css/acid2-expected.png:
  • platform/mac/fast/css/acid2-expected.txt:
  • platform/mac/fast/css/acid2-pixel-expected.checksum:
  • platform/mac/fast/css/acid2-pixel-expected.png:
  • platform/mac/fast/css/acid2-pixel-expected.txt:
  • platform/mac/fast/frames/viewsource-attribute-expected.checksum:
  • platform/mac/fast/frames/viewsource-attribute-expected.png:
  • platform/mac/fast/frames/viewsource-attribute-expected.txt:
  • platform/mac/fast/lists/ordered-list-with-no-ol-tag-expected.checksum:
  • platform/mac/fast/lists/ordered-list-with-no-ol-tag-expected.png:
  • platform/mac/fast/lists/ordered-list-with-no-ol-tag-expected.txt:
  • platform/mac/fast/table/add-before-anonymous-child-expected.checksum:
  • platform/mac/fast/table/add-before-anonymous-child-expected.png:
  • platform/mac/fast/table/add-before-anonymous-child-expected.txt:
  • platform/mac/fast/table/cell-absolute-child-expected.checksum:
  • platform/mac/fast/table/cell-absolute-child-expected.png:
  • platform/mac/fast/table/cell-absolute-child-expected.txt:
  • platform/mac/fast/table/frame-and-rules-expected.checksum:
  • platform/mac/fast/table/frame-and-rules-expected.png:
  • platform/mac/fast/table/frame-and-rules-expected.txt:
  • platform/mac/http/tests/misc/acid2-expected.checksum:
  • platform/mac/http/tests/misc/acid2-expected.png:
  • platform/mac/http/tests/misc/acid2-expected.txt:
  • platform/mac/http/tests/misc/acid2-pixel-expected.checksum:
  • platform/mac/http/tests/misc/acid2-pixel-expected.png:
  • platform/mac/http/tests/misc/acid2-pixel-expected.txt:
  • platform/mac/tables/mozilla/bugs/bug30985-expected.checksum:
  • platform/mac/tables/mozilla/bugs/bug30985-expected.png:
  • platform/mac/tables/mozilla/bugs/bug30985-expected.txt:
13:52 Changeset [29646] by mitz@apple.com


Reviewed by Dave Hyatt.

  • fix <rdar://problem/5615307> Repro crash in WebKit!WebCore::RenderContainer::destroyLeftoverChildren

Test: fast/table/insert-row-before-form.html

  • rendering/RenderTableRow.cpp: (WebCore::RenderTableRow::addChild): Changed to ensure that the object a new cell is inserted before is a child of the row, and added an assertion that that object is either a cell or a form.
  • rendering/RenderTableSection.cpp: (WebCore::RenderTableSection::addChild): Changed to ensure that the object a new row is inserted before is a child of the table section, and added an assertion that that object is either a table row or a form.


Reviewed by Dave Hyatt.

  • tests for <rdar://problem/5615307> Repro crash in WebKit!WebCore::RenderContainer::destroyLeftoverChildren
  • fast/table/insert-cell-before-form.html: Added.
  • fast/table/insert-row-before-form.html: Added.
  • platform/mac-leopard/fast/table: Added.
  • platform/mac-leopard/fast/table/insert-cell-before-form-expected.checksum: Added.
  • platform/mac-leopard/fast/table/insert-cell-before-form-expected.png: Added.
  • platform/mac-leopard/fast/table/insert-row-before-form-expected.checksum: Added.
  • platform/mac-leopard/fast/table/insert-row-before-form-expected.png: Added.
  • platform/mac/fast/table/insert-cell-before-form-expected.txt: Added.
  • platform/mac/fast/table/insert-row-before-form-expected.txt: Added.
13:50 Changeset [29645] by ddkilzer@apple.com

Fixed date.

13:35 Changeset [29644] by bdakin@apple.com

Checked in new results for another test affected by disabling SVG
foreign object.

  • platform/mac-leopard/svg/custom/stroke-width-click-expected.txt: Removed.
  • platform/mac/svg/custom/stroke-width-click-expected.checksum: Removed.
  • platform/mac/svg/custom/stroke-width-click-expected.png: Removed.
  • svg/custom/stroke-width-click-expected.txt:
13:33 Changeset [29643] by ggaren@apple.com

Reviewed by Brady Eidson.

Fixed <rdar://problem/5622424> World Leak dialog when closing a page
that has a Database

The problem was that each transaction and SQL statement would hold on
to its callback indefinitely. By design, callbacks often establish
reference cycles to temporarily protect their execution environments.
To break the cycle, we need to explicitly release each callback as soon
as it is no longer needed.

  • storage/SQLStatement.cpp: (WebCore::SQLStatement::performCallback): Release our callback objects after performing our callback.
  • storage/SQLTransaction.cpp: (WebCore::SQLTransaction::postflightAndCommit): Release our callback objects after the transaction has terminated. (WebCore::SQLTransaction::cleanupAfterTransactionErrorCallback): ditto.
13:20 Changeset [29642] by ddkilzer@apple.com

Fix typo in comment.

13:12 Changeset [29641] by sfalken@apple.com

Delete unneeded tag.

13:10 Changeset [29640] by sfalken@apple.com

New tag.

13:05 Changeset [29639] by kmccullough@apple.com


Reviewed by Geoff.

  • Correctly report cost of appended strings to trigger GC.
  • kjs/ustring.cpp: (KJS::): (KJS::UString::Rep::create): (KJS::UString::UString): Don't create unnecssary objects. (KJS::UString::cost): Report cost if necessary but also keep track of reported cost.
  • kjs/ustring.h:


Reviewed by Geoff.

  • Correctly report cost of appended strings to trigger GC.
  • fast/js/garbage-collect-after-string-appends-expected.txt: Added.
  • fast/js/garbage-collect-after-string-appends.html: Added.
  • fast/js/resources/garbage-collect-after-string-appends.js: Added.
12:58 Changeset [29638] by adele@apple.com

Reviewed by Antti.

Fix for <rdar://problem/5679490> media controls fade in and out too jerkily and too slowly

  • rendering/RenderMedia.cpp: Shorten the duration for the fade in/out animation.
12:54 Changeset [29637] by aroben@apple.com

Build fix

  • Scripts/build-webkit:
12:16 Changeset [29636] by mrowe@apple.com


12:16 Changeset [29635] by mrowe@apple.com

Merge r29600.

12:11 Changeset [29634] by mrowe@apple.com

Merge r29580.

12:06 Changeset [29633] by bdakin@apple.com


Reviewed by Oliver.

Disables SVG foreign object for <rdar://problem/5686989> turn off
SVG foreignobject because it does not repaint/dirty correctly

  • DerivedSources.make:
  • WebCore.SVG.ForeignObject.exp: Added.
  • WebCore.SVG.exp:
  • bindings/js/JSSVGElementWrapperFactory.cpp: (WebCore::createJSSVGWrapper):
  • rendering/RenderForeignObject.cpp:
  • rendering/RenderForeignObject.h:
  • svg/SVGForeignObjectElement.cpp:
  • svg/SVGForeignObjectElement.h:
  • svg/SVGForeignObjectElement.idl:
  • svg/SVGLocatable.cpp: (WebCore::SVGLocatable::nearestViewportElement): (WebCore::SVGLocatable::farthestViewportElement):
  • svg/SVGUseElement.cpp: (WebCore::isDisallowedElement):
  • svg/svgtags.in:


Reviewed by Oliver.

Update build-webkit to account for foreign-object being disabled by

  • Scripts/build-webkit:


Reviewed by Oliver.

Changed test results from disabling SVG foreign object for <rdar://
problem/5686989> turn off SVG foreignobject because it does not
repaint/dirty correctly

  • platform/mac/svg/custom/baseval-animval-equality-expected.checksum: Replaced.
  • platform/mac/svg/custom/baseval-animval-equality-expected.png: Replaced.
  • platform/mac/svg/custom/baseval-animval-equality-expected.txt: Replaced.
  • platform/mac/svg/custom/dominant-baseline-hanging-expected.checksum: Replaced.
  • platform/mac/svg/custom/dominant-baseline-hanging-expected.png: Replaced.
  • platform/mac/svg/custom/dominant-baseline-hanging-expected.txt: Replaced.
  • platform/mac/svg/custom/dynamic-svg-document-creation-expected.checksum: Replaced.
  • platform/mac/svg/custom/dynamic-svg-document-creation-expected.png: Replaced.
  • platform/mac/svg/custom/dynamic-svg-document-creation-expected.txt: Replaced.
  • platform/mac/svg/custom/fill-SVGPaint-interface-expected.checksum: Replaced.
  • platform/mac/svg/custom/fill-SVGPaint-interface-expected.png: Replaced.
  • platform/mac/svg/custom/fill-SVGPaint-interface-expected.txt: Replaced.
  • platform/mac/svg/custom/foreign-object-skew-expected.checksum: Replaced.
  • platform/mac/svg/custom/foreign-object-skew-expected.png: Replaced.
  • platform/mac/svg/custom/foreign-object-skew-expected.txt: Replaced.
  • platform/mac/svg/custom/foreignObject-crash-on-hover-expected.checksum: Replaced.
  • platform/mac/svg/custom/foreignObject-crash-on-hover-expected.png: Replaced.
  • platform/mac/svg/custom/foreignObject-crash-on-hover-expected.txt: Replaced.
  • platform/mac/svg/custom/getPresentationAttribute-expected.checksum: Replaced.
  • platform/mac/svg/custom/getPresentationAttribute-expected.png: Replaced.
  • platform/mac/svg/custom/getPresentationAttribute-expected.txt: Replaced.
  • platform/mac/svg/custom/use-on-disallowed-foreign-object-1-expected.checksum: Replaced.
  • platform/mac/svg/custom/use-on-disallowed-foreign-object-1-expected.png: Replaced.
  • platform/mac/svg/custom/use-on-disallowed-foreign-object-1-expected.txt: Replaced.
  • platform/mac/svg/custom/use-on-disallowed-foreign-object-2-expected.checksum: Replaced.
  • platform/mac/svg/custom/use-on-disallowed-foreign-object-2-expected.png: Replaced.
  • platform/mac/svg/custom/use-on-disallowed-foreign-object-2-expected.txt: Replaced.
  • platform/mac/svg/custom/use-on-disallowed-foreign-object-3-expected.checksum: Replaced.
  • platform/mac/svg/custom/use-on-disallowed-foreign-object-3-expected.png: Replaced.
  • platform/mac/svg/custom/use-on-disallowed-foreign-object-3-expected.txt: Replaced.
  • platform/mac/svg/custom/use-on-disallowed-foreign-object-4-expected.checksum: Replaced.
  • platform/mac/svg/custom/use-on-disallowed-foreign-object-4-expected.png: Replaced.
  • platform/mac/svg/custom/use-on-disallowed-foreign-object-4-expected.txt: Replaced.
  • platform/mac/svg/custom/use-on-disallowed-foreign-object-5-expected.checksum: Replaced.
  • platform/mac/svg/custom/use-on-disallowed-foreign-object-5-expected.png: Replaced.
  • platform/mac/svg/custom/use-on-disallowed-foreign-object-5-expected.txt: Replaced.
  • platform/mac/svg/custom/use-on-disallowed-foreign-object-6-expected.checksum: Replaced.
  • platform/mac/svg/custom/use-on-disallowed-foreign-object-6-expected.png: Replaced.
  • platform/mac/svg/custom/use-on-disallowed-foreign-object-6-expected.txt: Replaced.
  • platform/mac/svg/custom/use-on-g-containing-foreignObject-and-image-expected.checksum: Replaced.
  • platform/mac/svg/custom/use-on-g-containing-foreignObject-and-image-expected.png: Replaced.
  • platform/mac/svg/custom/use-on-g-containing-foreignObject-and-image-expected.txt: Replaced.
  • platform/mac/svg/custom/use-on-non-svg-namespaced-element-expected.checksum: Replaced.
  • platform/mac/svg/custom/use-on-non-svg-namespaced-element-expected.png: Replaced.
  • platform/mac/svg/custom/use-on-non-svg-namespaced-element-expected.txt: Replaced.
  • platform/mac/svg/hixie/mixed/006-expected.checksum: Replaced.
  • platform/mac/svg/hixie/mixed/006-expected.png: Replaced.
  • platform/mac/svg/hixie/mixed/006-expected.txt: Replaced.
  • platform/mac/svg/hixie/mixed/007-expected.checksum: Replaced.
  • platform/mac/svg/hixie/mixed/007-expected.png: Replaced.
  • platform/mac/svg/hixie/mixed/007-expected.txt: Replaced.
  • platform/mac/svg/hixie/mixed/008-expected.checksum: Replaced.
  • platform/mac/svg/hixie/mixed/008-expected.png: Replaced.
  • platform/mac/svg/hixie/mixed/008-expected.txt: Replaced.
  • platform/mac/svg/hixie/mixed/009-expected.checksum: Replaced.
  • platform/mac/svg/hixie/mixed/009-expected.png: Replaced.
  • platform/mac/svg/hixie/mixed/009-expected.txt: Replaced.
  • platform/mac/svg/hixie/mixed/011-expected.checksum: Replaced.
  • platform/mac/svg/hixie/mixed/011-expected.png: Replaced.
  • platform/mac/svg/hixie/mixed/011-expected.txt: Replaced.
12:05 Changeset [29632] by mrowe@apple.com

New tag.

11:58 Changeset [29631] by mrowe@apple.com

2008-01-18 Mark Rowe <mrowe@apple.com>

Rubber-stamped by Adam Roben.

Fix mixed line endings in FileSystemWin.cpp and set svn:eol-style to native
to try and keep them consistent in the future.

  • platform/win/FileSystemWin.cpp: (WebCore::fileSize): (WebCore::fileExists): (WebCore::deleteFile): (WebCore::pathByAppendingComponent): (WebCore::fileSystemRepresentation): (WebCore::makeAllDirectories): (WebCore::homeDirectoryPath): (WebCore::bundleName): (WebCore::storageDirectory): (WebCore::cachedStorageDirectory):
11:51 Changeset [29630] by antti@apple.com

Reviewed by Adam.

Fix unreachable code warning in RenderVideo on Windows.

Make switch cases explicit.

  • rendering/RenderImage.cpp: (WebCore::RenderImage::isWidthSpecified): (WebCore::RenderImage::isHeightSpecified):
  • rendering/RenderVideo.cpp: (WebCore::RenderVideo::isWidthSpecified): (WebCore::RenderVideo::isHeightSpecified):
11:49 Changeset [29629] by timothy@apple.com


Reviewed by Adam Roben.

<rdar://problem/5693558> REGRESSION (r29581): no form field focus
rings and inactive text selection after loading a page
Bug 16910: [GTK] REGRESSION: keyboard cursor doesn't blink
Bug 16917: REGRESSION (r29581/2): Google Maps search box loses focused appearance

  • page/FocusController.cpp: (WebCore::FocusController::setActive): Use focusedOrMainFrame() instead of focusedFrame() to call selectionController()->pageActivationChanged() for cases when the focusedFrame() has not been set yet.


Reviewed by Adam Roben.

<rdar://problem/5693558> REGRESSION (r29581): no form field focus rings
and inactive text selection after loading a page
Bug 16917: REGRESSION (r29581/2): Google Maps search box loses focused appearance

The problem was other frames were changing the FocusController's active
status to false after the first responder frame set it to true. The last
frame to call _updateActiveState would win.

  • WebView/WebHTMLView.mm: (-[WebHTMLView _updateActiveState]): Only call page->focusController()->setActive() if the first responder is the current WebHTMLView or the WebFrameView. (-[WebHTMLView _web_firstResponderCausesFocusDisplay]): Removed, inlined code in _updateActiveState.
10:47 Changeset [29628] by ap@webkit.org

Reviewed by Brady.

Database origin tracking is broken.

  • storage/DatabaseTracker.cpp: (WebCore::DatabaseTracker::populateOrigins): Move reading from statement back into the loop (broken in r29386).
10:44 Changeset [29627] by aroben@apple.com

Fix <rdar://5693854> REGRESSION (r29581): fast/events/frame-click-focus.html failing


Rename _updateActiveState to _updateFocusedAndActiveState

Also renamed any related methods/members similarly.

Reviewed by Adele.

  • WebView/WebHTMLView.mm: (-[WebHTMLViewPrivate dealloc]): (-[WebHTMLView _cancelUpdateFocusedAndActiveStateTimer]): (-[WebHTMLView close]): (_updateFocusedAndActiveStateTimerCallback): (-[WebHTMLView viewWillMoveToWindow:]): (-[WebHTMLView viewDidMoveToWindow]): (-[WebHTMLView windowDidBecomeKey:]): (-[WebHTMLView windowDidResignKey:]): (-[WebHTMLView becomeFirstResponder]): (-[WebHTMLView resignFirstResponder]):
  • WebView/WebHTMLViewInternal.h:
  • WebView/WebHTMLViewPrivate.h:


Fix <rdar://5693854> REGRESSION (r29581): fast/events/frame-click-focus.html failing

Restored the previous behavior of IWebViewPrivate::updateActiveState,
which DRT depends on, and renamed it to
IWebViewPrivate::updateFocusedAndActiveState to be clearer about its

Reviewed by Adele.

  • Interfaces/IWebViewPrivate.idl:
  • WebView.cpp: (WebViewWndProc): Removed some FIXMEs that we no longer want to fix because the current design is better. (WebView::updateActiveState): This is now just a method of WebView, not any of its public interfaces. (WebView::updateFocusedAndActiveState): Performs the tasks that the old IWebViewPrivate::updateActiveState performed.
  • WebView.h:


Updated for method renames

Reviewed by Adele.

  • DumpRenderTree/mac/FrameLoadDelegate.mm: (-[FrameLoadDelegate webView:didCommitLoadForFrame:]):
  • DumpRenderTree/mac/LayoutTestControllerMac.mm: (LayoutTestController::setMainFrameIsFirstResponder): (LayoutTestController::setWindowIsKey):
  • DumpRenderTree/mac/UIDelegate.mm: (-[UIDelegate webViewFocus:]):
  • DumpRenderTree/win/FrameLoadDelegate.cpp: (FrameLoadDelegate::didCommitLoadForFrame):


Reviewed by Adele.

  • platform/win/Skipped: Removed a fixed test, and a test that passes for me locally.
06:21 Changeset [29626] by ap@webkit.org

Fix plugin-related tests in Debug_Internal configuration, which are failing because of CRT version mismatch
between DRT and TestNetscapePlugin.

03:57 Changeset [29625] by hausmann@webkit.org

Coding style fixes and added a comment about the order of includes in the PCH.

03:30 Changeset [29624] by hausmann@webkit.org

Marius Storm-Olsen <marius@trolltech.com>

Add use of precompiled header, when building inside Qt.

Compiling WebKit was taking forever; 17 minutes on my machine for _one_ build! Adding the PCH at least brings it down to 12 minutes for one build, for me.

02:55 Changeset [29623] by hausmann@webkit.org

Fix fast/forms/button-state-restore.html

Similar to the fix for fast/forms/form-post-urlencoded.html transform POST
requests to data urls into GET.

02:55 Changeset [29622] by hausmann@webkit.org

Fix LayoutTests/fast/cookies/local-file-can-set-cookies.html

In WebCore::cookies() don't return the full raw form but only the name=value
part. This fixes the getter part of the above test. The above test also
requires a parsing fix in Qt 4.4's QNetworkCookie to fully pass.

02:55 Changeset [29621] by hausmann@webkit.org

Fix fast/dom/Window/window-resize.html

In DRT connect the page's geometryChangeRequest signal to a slot that
sets the geometry of the view widget.

02:54 Changeset [29620] by hausmann@webkit.org

Fix return type conversions from Qt slots to JS values.

This also fixes fast/dom/open-and-close-by-DOM.html, which called

When constructing the QVariant that holds the return type we cannot
use the QVarian(Type) constuctor as that will create a null variant.
We have to use the QVariant(Type, void *) constructor instead, just
like in QMetaObject::read() for example.

02:54 Changeset [29619] by hausmann@webkit.org

Fix svg/custom/path-getTotalLength.svg

Path::apply creates a PathElement and its points array on the stack,
to fill it in from the QPainterPath data and then use the platform
independent path applier functions to calculate properties such as
the length. For converting a QPainterPath::CurveToElement we need
three points in the path element. However we allocated only two
on the stack and as a result we got memory corruption and the
failing test.

02:54 Changeset [29618] by hausmann@webkit.org

Fix LayoutTests/fast/dom/document-attribute-js-null.html

Don't crash when trying to get/set cookies without a frameloader.

02:54 Changeset [29617] by hausmann@webkit.org

Fix fast/dom/xmlhttprequest-get.xhtml

For local file requests remove the content length and the last-modified
headers in the response.

02:53 Changeset [29616] by hausmann@webkit.org

Fix fast/forms/form-post-urlencoded.html.

Post requests on files don't really make sense, but for
fast/forms/form-post-urlencoded.html we still need to retrieve the file,
which means we map it to a Get instead.

02:37 Changeset [29615] by hausmann@webkit.org

Simon Hausmann <hausmann@webkit.org>

Make QNetworkReplyHandler::abort() more robust against multiple invocations.

During DRT runs I see cancel() being called on the same handle multiple times. Guard
against this a bit better by setting m_reply to 0 after we called abort() on it.

02:37 Changeset [29614] by hausmann@webkit.org

Holger Hans Peter Freyther <holger.freyther@trolltech.com>

  • Ask the WebCore::IconDatabase only if our URL is not empty. Otherwise we will see a crash in a HashSet.
  • It is crashing there because the StringImpl of an empty String is 0.
  • We avoid this crash by checking for isEmpty() in WebKit as there is no use to ask the iconDatabase for an empty string. We will fallback to the defaultIcon.
02:37 Changeset [29613] by hausmann@webkit.org

Holger Hans Peter Freyther <holger.freyther@trolltech.com>

  • httpBody() can return 0 and other ports (cf/mac) check for this condition
  • Looking at the cf/mac implementation we might need to call setHTTPBody somewhere as well.
01:46 Changeset [29612] by hausmann@webkit.org

Prasanth Ullattil <prasanth.ullattil@trolltech.com>

Fix compilation in Win64(3): Due to the size of size_t cast the return value explicitly to double() to make sure the right Value() constructor is called.

01:45 Changeset [29611] by hausmann@webkit.org

Prasanth Ullattil <prasanth.ullattil@trolltech.com>

Fix compilation on Win64(2): Implemented currentThreadStackBase on X86-64 on Windows

01:45 Changeset [29610] by hausmann@webkit.org

Prasanth Ullattil <prasanth.ullattil@trolltech.com>

Fix compilation on Win64(1): Define WTF_PLATFORM_X86_64 correctly on Win64.

01:37 Changeset [29609] by hausmann@webkit.org
  • Remove our windowClipRect reimplementation and instead have our own Widget::invalidate implementation that is invalidating IntRect(0, 0, width(), height()) without trying to clip it (in contrast to Widget::invalidateRect)
01:36 Changeset [29608] by hausmann@webkit.org
  • Change the coordinate transformation in the PlatformMouseEvent handlers
  • We want to convert from coordinates of the containing window to our local position on the scrollbar.
01:36 Changeset [29607] by hausmann@webkit.org
  • Make the qDebug more usable. Do not have an additional newline and print the untranslated coordinates as well.
01:36 Changeset [29606] by hausmann@webkit.org
  • Dead code, remove it
01:36 Changeset [29605] by hausmann@webkit.org
  • Coding-Style fixes.
01:35 Changeset [29604] by hausmann@webkit.org
  • Coding-Style fix


20:05 Changeset [29603] by ggaren@apple.com

Reviewed by Darin Adler.

Fixed: lots of WebCore leaks reported when quitting Safari

If we're quitting with a GC still scheduled, do the GC before quitting.
That way, WebCore's leak counters won't count objects that were
scheduled for GC.

  • bindings/js/GCController.cpp: (WebCore::GCController::~GCController): (WebCore::GCController::garbageCollectNow):
  • bindings/js/GCController.h:
19:29 Changeset [29602] by alp@webkit.org

2008-01-17 Alp Toker <alp@atoker.com>

Reviewed by Oliver Hunt.

gdk_screen_get_font_options() returns NULL if no default options are
set so we always have to NULL check to avoid crashes later on since
Cairo doesn't accept NULL font options.

  • platform/graphics/gtk/FontPlatformDataGtk.cpp: (WebCore::FontPlatformData::FontPlatformData):
17:58 Changeset [29601] by antti@apple.com

Reviewed by Adele.

Windows fix for <rdar://problem/5605682>
Disallow streaming protocols for media elements
and <rdar://problem/5668711>
Limit the container and codec types that the <video> tag supports

  • Disable unsupported QuickTime tracks types.
  • Disallow streaming protocols (for now).
17:14 Changeset [29600] by sfalken@apple.com


Build fix.

  • WebKit.vcproj/WebKit.make:


Build fix.

  • Drosera/DroseraWin.make:
17:14 Changeset [29599] by slewis@apple.com

2008-01-17 Stephanie <slewis@apple.com>


Move some new failing tests to the skipped list

  • platform/win/Skipped:
16:34 Changeset [29598] by sfalken@apple.com

Added Vista crash logging information.

Reviewed by Adam.

  • quality/crashlogs.html:
16:21 Changeset [29597] by oliver@apple.com

Support smart copy and paste during drag and drop

Reviewed by Alice

In order for the drag and drop tests in Windows DRT to pass
we need to support smart cut and paste operations during
drag and drop on windows.

There is no layout test as drag and drop is still unsupported
on windows. Once supported smart drag/drop is tested by existing

16:10 Changeset [29596] by sullivan@apple.com

Reviewed by Darin

  • fixed <rdar://problem/5692068> -1 WebFrameView world leaks reported after closing view source window
  • WebView/WebFrameView.mm: (-[WebFrameView initWithCoder:]): override to bump the global WebFrameView count
15:58 Changeset [29595] by darin@apple.com
  • Scripts/run-webkit-tests: Fixed a bug number.
13:33 Changeset [29594] by oliver@apple.com

<rdar://problem/5692940> Crash when attempting to get text properties in SVG with no renderer

Reviewed by Anders

We use the element renderer to calculate the text element bounds,
however there was no check against the possibility of the text dimension
properties being requested on a element with no renderer (eg. unattached,
display: none).

13:05 Changeset [29593] by andersca@apple.com

Reviewed by Oliver.

CrashTracer: [USER] 1302 crashes in Safari at com.apple.WebCore: WTF::Vector<char, 0ul>::reserveCapacity + 78

When loading full-frame plug-ins, disable buffering data for the main resource loader. Otherwise, this can cause us
to crash when loading large files such as movies in the browser. We already do this for embedded plug-ins.

  • WebCore.base.exp:
  • loader/DocumentLoader.h: (WebCore::DocumentLoader::mainResourceLoader): New accessor method.

  • loader/PluginDocument.cpp: (WebCore::PluginTokenizer::writeRawData): Disable buffering for the main resource loader.

  • loader/ResourceLoader.cpp: (WebCore::ResourceLoader::setShouldBufferData):
  • loader/ResourceLoader.h: Have this free the buffer when disabling buffering.
12:45 Changeset [29592] by antti@apple.com

Fix Windows build.

  • kjs/regexp_object.cpp: (KJS::regExpProtoFuncToString):
12:39 Changeset [29591] by aroben@apple.com

More Qt/GTK+ build fixing.

  • platform/gtk/ScrollViewGtk.cpp:
  • platform/qt/ScrollViewQt.cpp:
12:06 Changeset [29590] by ap@webkit.org

Reviewed by Darin.

<rdar://problem/5692566> fast/encoding/mailto-always-utf-8.html fails when run after

Test: fast/dom/Window/window-property-shadowing_.html

  • loader/FrameLoader.cpp: (WebCore::FrameLoader::clear): Clear the frame name, too.
11:50 Changeset [29589] by ap@webkit.org

Reviewed by Adam Roben.

run-webkit-tests complains about missing FindSafari.exe

  • Scripts/webkitdirs.pm: Append _debug as appropriate.
11:27 Changeset [29588] by weinig@apple.com

Reviewed by Darin.

Fix for http://bugs.webkit.org/show_bug.cgi?id=16901
Convert remaining JS function objects to use the new PrototypeFunction class

  • Moves Boolean, Function, RegExp, Number, Object and Global functions to their own static function implementations so that they can be used with the PrototypeFunction class. SunSpider says this is 1.003x as fast.
  • kjs/JSGlobalObject.cpp: (KJS::JSGlobalObject::reset):
  • kjs/array_object.h:
  • kjs/bool_object.cpp: (KJS::BooleanInstance::BooleanInstance): (KJS::BooleanPrototype::BooleanPrototype): (KJS::booleanProtoFuncToString): (KJS::booleanProtoFuncValueOf): (KJS::BooleanObjectImp::BooleanObjectImp): (KJS::BooleanObjectImp::implementsConstruct): (KJS::BooleanObjectImp::construct): (KJS::BooleanObjectImp::callAsFunction):
  • kjs/bool_object.h: (KJS::BooleanInstance::classInfo):
  • kjs/error_object.cpp: (KJS::ErrorPrototype::ErrorPrototype): (KJS::errorProtoFuncToString):
  • kjs/error_object.h:
  • kjs/function.cpp: (KJS::globalFuncEval): (KJS::globalFuncParseInt): (KJS::globalFuncParseFloat): (KJS::globalFuncIsNaN): (KJS::globalFuncIsFinite): (KJS::globalFuncDecodeURI): (KJS::globalFuncDecodeURIComponent): (KJS::globalFuncEncodeURI): (KJS::globalFuncEncodeURIComponent): (KJS::globalFuncEscape): (KJS::globalFuncUnEscape): (KJS::globalFuncKJSPrint): (KJS::PrototypeFunction::PrototypeFunction):
  • kjs/function.h:
  • kjs/function_object.cpp: (KJS::FunctionPrototype::FunctionPrototype): (KJS::functionProtoFuncToString): (KJS::functionProtoFuncApply): (KJS::functionProtoFuncCall):
  • kjs/function_object.h:
  • kjs/number_object.cpp: (KJS::NumberPrototype::NumberPrototype): (KJS::numberProtoFuncToString): (KJS::numberProtoFuncToLocaleString): (KJS::numberProtoFuncValueOf): (KJS::numberProtoFuncToFixed): (KJS::numberProtoFuncToExponential): (KJS::numberProtoFuncToPrecision):
  • kjs/number_object.h: (KJS::NumberInstance::classInfo): (KJS::NumberObjectImp::classInfo): (KJS::NumberObjectImp::):
  • kjs/object_object.cpp: (KJS::ObjectPrototype::ObjectPrototype): (KJS::objectProtoFuncValueOf): (KJS::objectProtoFuncHasOwnProperty): (KJS::objectProtoFuncIsPrototypeOf): (KJS::objectProtoFuncDefineGetter): (KJS::objectProtoFuncDefineSetter): (KJS::objectProtoFuncLookupGetter): (KJS::objectProtoFuncLookupSetter): (KJS::objectProtoFuncPropertyIsEnumerable): (KJS::objectProtoFuncToLocaleString): (KJS::objectProtoFuncToString):
  • kjs/object_object.h:
  • kjs/regexp_object.cpp: (KJS::RegExpPrototype::RegExpPrototype): (KJS::regExpProtoFuncTest): (KJS::regExpProtoFuncExec): (KJS::regExpProtoFuncCompile): (KJS::regExpProtoFuncToString):
  • kjs/regexp_object.h:
11:23 Changeset [29587] by mitz@apple.com

Name the test for a recent bug fix.

11:06 Changeset [29586] by aroben@apple.com

Qt/GTK+ build fix.

  • platform/gtk/ScrollViewGtk.cpp: (WebCore::ScrollView::ScrollViewPrivate::isActive):
  • platform/qt/ScrollViewQt.cpp: (WebCore::ScrollView::ScrollViewPrivate::isActive):
10:55 Changeset [29585] by mitz@apple.com

Reviewed by Dave Hyatt.

  • make more test pass on Windows by using @font-face to force font fallback to match Mac OS X.
  • editing/deleting/5144139-2.html:
  • fast/encoding/invalid-UTF-8.html:
  • fast/events/updateLayoutForHitTest.html:
  • fast/forms/select-visual-hebrew.html:
  • fast/forms/select-writing-direction-natural.html:
  • fast/forms/visual-hebrew-text-field.html:
  • fast/text/in-rendered-text-rtl.html:
  • fast/text/international/bidi-L2-run-reordering.html:
  • fast/text/international/bidi-LDB-2-CSS.html:
  • fast/text/international/bidi-LDB-2-HTML.html:
  • fast/text/international/bidi-LDB-2-formatting-characters.html:
  • fast/text/international/bidi-european-terminators.html:
  • fast/text/international/bidi-ignored-for-first-child-inline.html:
  • fast/text/international/bidi-innertext.html:
  • fast/text/international/bidi-listbox-atsui.html:
  • fast/text/international/bidi-listbox.html:
  • fast/text/international/bidi-menulist.html:
  • fast/text/international/bidi-override.html:
  • fast/text/international/resources: Added.
  • fast/text/international/resources/Mac-compatible-font-fallback.css: Added.
  • fast/text/international/rtl-caret.html:
  • platform/mac/editing/deleting/5144139-2-expected.txt:
  • platform/win/Skipped:
09:46 Changeset [29584] by aroben@apple.com
  • platform/win/Skipped: Added another failure.
09:46 Changeset [29583] by aroben@apple.com

Trigger activation changes at the right time by listening for WM_NCACTIVATE

This is the final part of <rdar://5006915> Inactive look for Aqua

WebView now listens to messages sent to its top-level parent window.
When the top-level parent receives a WM_NCACTIVATE message, WebView
recalculates whether it is contained within the current active window.

Reviewed by Darin.

  • Interfaces/IWebViewPrivate.idl: (IWebViewPrivate::windowAncestryDidChange): Added. WebKit clients should call this when they change the parent window chain of a WebView.
  • WebView.cpp: (WebView::WebView): Initialize new member. (findTopLevelParent): Added. (WebViewWndProc):
    • Separated activation handling from focus handling, now that activation handling is taken care of by updateActiveState exclusively.
    • Compare top-level parents in our WM_KILLFOCUS handler so that we really know if focus is staying inside our top-level window.
    • Update our active state on WM_WINDOWPOSCHANGED.
    • Added a WM_TIMER handler.

(WebView::initWithFrame): Call windowAncestryDidChange after setting
up our HWND as a child of the host window.
(WebView::windowReceivedMessage): Added. Update our active state when
our top-level parent receives a WM_NCACTIVATE message.
(WebView::updateActiveStateSoon): Added.
(WebView::setHostWindow): Call windowAncestryDidChange after changing
the host window.
(WebView::updateActiveState): We are active if our top-level parent is
the same as the top-level parent of the active window.
(WebView::windowAncestryDidChange): Added. Recalculates our top-level
parent and registers as a listener for the new top-level parent's

  • WebView.h: Made WebView and WindowMessageListener so that it can utilize WindowMessageBroadcaster to listen to its top-level parent's messages.
09:45 Changeset [29582] by aroben@apple.com

Update scroll bars/form controls when FocusController::isActive changes


Update scroll bars/form controls when FocusController::isActive changes

Part of <rdar://5006915> Inactive look for Aqua controls

Reviewed by Darin.

All tests pass.

  • page/FocusController.cpp: (WebCore::FocusController::setActive): Update control tints when the active state changes.
  • page/FrameView.cpp: (WebCore::FrameView::updateControlTints): On Windows, we have to ask ScrollView to paint so that the outermost scroll bars will paint. On Mac, the outermost scroll bars are taken care of by NSScroller.
  • platform/PopupMenu.h: Updated for ScrollBarClient changes.
  • platform/ScrollBar.h: Added a new ScrollBarClient method.
  • platform/win/PlatformScrollBarSafari.cpp: (WebCore::PlatformScrollbar::paint): Invalidate when updating control tints so that we can paint with the new tint later. (WebCore::PlatformScrollbar::paintButton): Pass the active state down to SafariTheme. (WebCore::PlatformScrollbar::paintTrack): Ditto. (WebCore::PlatformScrollbar::paintThumb): Ditto.
  • platform/win/ScrollViewWin.cpp: (WebCore::ScrollView::ScrollViewPrivate::isActive): Added. (WebCore::ScrollView::paint): Pass paint calls on down if we're updating control tints so the scroll bars can invalidate.
  • rendering/RenderLayer.cpp: (WebCore::RenderLayer::isActive): Added.
  • rendering/RenderLayer.h:
  • rendering/RenderListBox.cpp: (WebCore::RenderListBox::isActive): Added.
  • rendering/RenderListBox.h:
  • rendering/RenderTheme.cpp: (WebCore::RenderTheme::isActive): Added.
  • rendering/RenderTheme.h:
  • rendering/RenderThemeSafari.cpp: (WebCore::RenderThemeSafari::determineState): Pass the active state down to SafariTheme.


Updated for ScrollBarClient changes

Reviewed by Darin.

  • WebScrollBar.h: (WebScrollBar::isActive): Added.
09:44 Changeset [29581] by aroben@apple.com

Move focused/active state from Frame to SelectionController/FocusController


Move focused/active state from Frame to SelectionController/FocusController

This is the first part of <rdar://5006915> Inactive look for Aqua

The following methods were moved/renamed:

  • Frame::setIsActive -> FocusController::setActive
  • Frame::isActive -> SelectionController::isActiveAndFocused
  • Frame::setWindowHasFocus -> SelectionController::setFocused

Active state is now correctly a Page-level concept.

The Mac parts of this patch were written by Darin.

Reviewed by Darin.

All tests pass.

  • WebCore.base.exp: Updated for method renames.
  • css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::checkOneSelector): Ditto.
  • editing/SelectionController.cpp: (WebCore::SelectionController::SelectionController): Initialize new member. (WebCore::SelectionController::focusedOrActiveStateChanged): New private method. Most of this code came from Frame::setIsActive. (WebCore::SelectionController::pageActivationChanged): Added. (WebCore::SelectionController::setFocused): Added. Replaces Frame::setWindowHasFocus. (WebCore::SelectionController::isFocusedAndActive): Added. Replaces Frame::isActive.
  • editing/SelectionController.h:
  • page/FocusController.cpp: (WebCore::FocusController::FocusController): Initialize new member. (WebCore::FocusController::setFocusedFrame): Changed to just call SelectionController::setFocused, since active state has doesn't change when the focused frame changes. (WebCore::FocusController::setActive): Added. Replaces Frame::setIsActive.
  • page/FocusController.h: (WebCore::FocusController::isActive): Added.
  • page/Frame.cpp: (WebCore::Frame::setDocument): Updated for method renames. (WebCore::Frame::setFocusedNodeIfNeeded): Ditto. (WebCore::Frame::updateSecureKeyboardEntryIfActive): Ditto. (WebCore::FramePrivate::FramePrivate): Removed initialization of removed members.
  • page/Frame.h:
  • page/FramePrivate.h:
  • page/mac/WebCoreFrameBridge.h: Removed -selectionColor.
  • page/mac/WebCoreFrameBridge.mm: Ditto.
  • rendering/RenderListBox.cpp: (WebCore::RenderListBox::paintItemForeground): Updated for method renames. (WebCore::RenderListBox::paintItemBackground): Ditto.
  • rendering/RenderObject.cpp: (WebCore::RenderObject::selectionBackgroundColor): Ditto. (WebCore::RenderObject::selectionForegroundColor): Ditto.
  • rendering/RenderTextControl.cpp: (WebCore::RenderTextControl::capsLockStateMayHaveChanged): Ditto.
  • rendering/RenderTheme.cpp: (WebCore::RenderTheme::isFocused): Ditto.


Updated for renames/removal of WebCore methods.

Reviewed by Darin.

  • Plugins/WebPluginController.mm: (-[WebPluginController webPlugInContainerSelectionColor]): Changed to ask isFocusedAndActive directly, instead of going through the frame bridge.
  • WebView/WebHTMLView.mm: (-[WebHTMLView _updateActiveState]): Updated for method renames.


Updated for changes to WebCore methods

Focus and active state are now handled (somewhat) separately. Future
patches will further separate these concepts.

Reviewed by Darin.

  • WebView.cpp: (WebViewWndProc): Updated for method renames. (WebView::updateActiveState): Only change the active state here. Focus is handled inside WM_SETFOCUS and WM_KILLFOCUS message handlers.


Updated for WebCore method renames.

Reviewed by Darin.

  • WebView.cpp: (wxWebView::OnSetFocus): (wxWebView::OnKillFocus): (wxWebView::OnActivate):
08:52 Mobile edited by dacarson@gmail.com
08:37 Mobile edited by dacarson@gmail.com
08:20 Changeset [29580] by sfalken@apple.com


Rubber-stamped by Jon Honeycutt.

  • DumpRenderTree/win/DumpRenderTree.vcproj:
08:06 Mobile edited by dacarson@gmail.com
08:03 Mobile edited by dacarson@gmail.com
07:54 Changeset [29579] by hausmann@webkit.org
  • Make the nice 'safari' feature work on our port. When viewing a single image, clicking on the image will zoom it.
  • It seems like our platform can only determine the size of the image once it is completely loaded. Call m_doc->imageChanged on the last chunk of data as well.
07:53 Changeset [29578] by hausmann@webkit.org

Minor documentation fixes

07:51 Changeset [29577] by hausmann@webkit.org

Fix form elements not focusing correctly after the qt widget lost its focus.

When receiving a focus out event notify the focus controller. Otherwise its
m_focusedFrame variable remains unchanged and setFocusedFrame on a focusIn
event shortcuts and doesn't call setActive(true).

07:44 Changeset [29576] by hausmann@webkit.org

Lots of updates to the documentation.

06:06 Changeset [29575] by hausmann@webkit.org

Added a urlChanged signals to QWebFrame and QWebView.

06:05 Changeset [29574] by hausmann@webkit.org

Fixed docs and sanity checks in QWebSettings::setIconDatabaseEnabled

06:04 Changeset [29573] by hausmann@webkit.org

Added QWebView::createWindow() which is forwarded from QWebPage::createWindow() for convenience.

06:03 Changeset [29572] by hausmann@webkit.org

Set the library version of QtWebKit to the Qt version.

06:03 Changeset [29571] by hausmann@webkit.org

add a 0 pointer check.

Fixes a crash in the demo web browser.

05:03 Changeset [29570] by hausmann@webkit.org

Fix QWebFrame::title().

For the titleChanged() signal we use the documentloader's title. For the property we have to use the same
instead of Document::title() as the latter is not trimmed and not suited for a window caption.

05:01 Changeset [29569] by hausmann@webkit.org

Re-enable gzip compression as accepted encoding, now that the bug is fixed in Qt 4.4's network module.

04:07 Changeset [29568] by hausmann@webkit.org

2008-01-17 Simon Hausmann <hausmann@webkit.org>

Another Windows build fix, setCookies accidentially had a const
Document pointer.

03:48 Changeset [29567] by hausmann@webkit.org

2008-01-17 Simon Hausmann <hausmann@webkit.org>

MSVC Windows build fix. Forward declaring Document in CookieJar.h
seems not enough for MSVC.

03:37 Changeset [29566] by hausmann@webkit.org


Add a document parameter to WebCore::cookies, setCookies and cookiesEnabled.

02:45 Changeset [29565] by hausmann@webkit.org

Windows build fix.

02:04 Changeset [29564] by hausmann@webkit.org

Fix linking on MinGW and at least one MSVC platform by having gmtimeQt in the correct namespace.

02:01 Changeset [29563] by hausmann@webkit.org

Don't link QtWebKit against libQtXml when building against Qt 4.4.

This is not necessary anymore since QXmlStream has been moved into QtCore.

01:49 Changeset [29562] by hausmann@webkit.org

Follow QWidget::keyPressEvent advice and call parents.

Without this, Back does not work in Qtopia, for example.

01:49 Changeset [29561] by hausmann@webkit.org

Fix compilation on arm

01:48 Changeset [29560] by hausmann@webkit.org

Fix compilation against Qt 4.3 after the recent KURL <> QUrl conversion fixes.

01:48 Changeset [29559] by hausmann@webkit.org

Fix compilation against Qt 4.4 without files that are specific for the Qt 4.3 build.

Signed-off-by: Holger

01:46 Changeset [29558] by hausmann@webkit.org

Fixes compilation with MinGW.

Neither localtime_r nor localtime_s are available on MingW, so instead of
calling back to the thread-unsafe localtime use QDateTime instead.

Signed-off-by: Simon Hausmann <hausmann@webkit.org>

01:44 Changeset [29557] by hausmann@webkit.org

Fixes compilation with QT_NO_DRAGANDDROP

01:16 Changeset [29556] by hausmann@webkit.org

Fix compilation

01:04 Changeset [29555] by mitz@apple.com


Reviewed by Dave Hyatt.

  • fix determinePitch for segmented fonts

Covered by and existing test.

  • platform/graphics/FontFallbackList.cpp: (WebCore::FontFallbackList::determinePitch): If the primary font is segmented, treat as fixed pitch only if it has only one segment and that segment is fixed-pitch.


Reviewed by Dave Hyatt.

  • update results for fixing determinePitch for segmented fonts
  • platform/mac/fast/css/font-face-implicit-local-font-expected.txt:
00:27 Changeset [29554] by sfalken@apple.com

Add preprocessor define accidently dropped in my unification,
and required by some builds. Fixes an issue that caused both
debug and release DLLs to be loaded.

Rubber-stamped by Jon Honeycutt.

  • win/tools/vsprops/debug_internal.vsprops:


22:20 Changeset [29553] by hyatt@apple.com


Fix for http://bugs.webkit.org/show_bug.cgi?id=16611

Make sure vertical-align length values are offset from their parents rather than being absolute to the

Reviewed by olliej

Added fast/css/vertical-align-lengths.html

  • rendering/RenderObject.cpp: (WebCore::RenderObject::getVerticalPosition):


Fix for http://bugs.webkit.org/show_bug.cgi?id=16611

Reviewed by olliej

  • ChangeLog:
  • fast/css/vertical-align-lengths.html: Added.
  • platform/mac/fast/css/vertical-align-lengths-expected.checksum: Added.
  • platform/mac/fast/css/vertical-align-lengths-expected.png: Added.
  • platform/mac/fast/css/vertical-align-lengths-expected.txt: Added.
22:13 Changeset [29552] by mitz@apple.com


Reviewed by Dave Hyatt.

  • fix for @font-face rules with unicode-range: always use a local font where not explicitly overlaid.

Test: fast/css/font-face-implicit-local-font.html

  • css/CSSFontSelector.cpp: (WebCore::CSSFontSelector::addFontFaceRule): Changed to insert an implicit @font-face rule with the local font the matches the family and description before any explicit @font-face rules that overlay specific ranges of the same font.
  • css/CSSSegmentedFontFace.h: (WebCore::CSSSegmentedFontFace::numRanges): Addded.


Reviewed by Dave Hyatt.

  • add test for @font-face rules with unicode-range: always use a local font where not explicitly overlaid.
  • fast/css/font-face-implicit-local-font.html: Added.
  • platform/mac-leopard/fast/css/font-face-implicit-local-font-expected.checksum: Added.
  • platform/mac-leopard/fast/css/font-face-implicit-local-font-expected.png: Added.
  • platform/mac/fast/css/font-face-implicit-local-font-expected.txt: Added.
18:53 Changeset [29551] by sfalken@apple.com

<rdar://problem/5097419> Cursor flickers when over window resizer

Reviewed by Sam.

  • WebView.cpp: (WebViewWndProc): Don't set the resize cursor when over the non-border resize area.
18:27 Changeset [29550] by alp@webkit.org

2008-01-16 Alp Toker <alp@atoker.com>

Reviewed by Mark Rowe.

[GTK] API: Should this entry point be called go_back rather than go_backward?

Obsolete 'backward' terminology in API in favour of 'back'. Introduce
step-based back/forward functions.

Document more functions.

17:11 Changeset [29549] by antti@apple.com

Fix Tiger build.

  • platform/graphics/mac/MediaPlayerPrivateQTKit.mm: (WebCore::MediaPlayerPrivate::disableUnsupportedTracks):
16:45 Changeset [29548] by antti@apple.com

Add tests for unsupported types to Windows skip list for now.

  • platform/win/Skipped:
16:34 Changeset [29547] by antti@apple.com


Reviewed by Adele.

OS X fix for <rdar://problem/5605682>
Disallow streaming protocols for media elements
and <rdar://problem/5668711>
Limit the container and codec types that the <video> tag supports

  • Disable unsupported QuickTime tracks types.
  • Disallow streaming protocols (for now).
  • Set QTMovie QTMoviePreventExternalURLLinksAttribute and QTSecurityPolicyNoCrossSiteAttribute to limit QuickTime's access to external resources.

Windows patch coming up.

Tests: media/broken-video.html


  • platform/graphics/mac/MediaPlayerPrivateQTKit.h:
  • platform/graphics/mac/MediaPlayerPrivateQTKit.mm: (WebCore::MediaPlayerPrivate::createQTMovie): (WebCore::MediaPlayerPrivate::updateStates): (WebCore::MediaPlayerPrivate::disableUnsupportedTracks):


Reviewed by Adele.

Tests for <rdar://problem/5605682>
Disallow streaming protocols for media elements
and <rdar://problem/5668711>
Limit the container and codec types that the <video> tag supports

  • test that rtsp: protocol is disabled (for now).
  • test that QuickTime files with unsupported track types are handled correctly
  • test that broken video file produces an error
  • media/broken-video-expected.txt: Added.
  • media/broken-video.html: Added.
  • media/content/garbage.mp4: Added.
  • media/content/unsupported_track.mov: Added.
  • media/unsupported-rtsp-expected.txt: Added.
  • media/unsupported-rtsp.html: Added.
  • media/unsupported-tracks-expected.txt: Added.
  • media/unsupported-tracks.html: Added.
16:15 Changeset [29546] by alp@webkit.org

2008-01-16 Rodney Dawes <dobey@wayofthemonkey.com>

Reviewed by Alp Toker.

Add shared plugins directory to INCLUDE path

Add the plugins directory to INCLUDEPATH

  • GNUmakefile.am:
  • WebCore.pro:
15:59 Changeset [29545] by sfalken@apple.com

Use recommended security-related compiler settings.

Reviewed by Adam.

  • win/tools/vsprops/common.vsprops:
15:54 Changeset [29544] by ggaren@apple.com

Reviewed by Sam Weinig.

Added a debug counter for SQL transactions. This helped me debug an SQL

  • bindings/js/JSCustomSQLTransactionCallback.cpp: (WebCore::): (WebCore::JSCustomSQLTransactionCallbackCounter::~JSCustomSQLTransactionCallbackCounter): (WebCore::JSCustomSQLTransactionCallback::JSCustomSQLTransactionCallback): (WebCore::JSCustomSQLTransactionCallback::~JSCustomSQLTransactionCallback):
  • bindings/js/JSCustomSQLTransactionCallback.h:
  • bindings/js/kjs_window.cpp: Removed a silly comment.
15:36 Changeset [29543] by sullivan@apple.com

Reviewed by Adam and Dan

  • cleaned up some existing logging
  • WebView/WebHTMLView.mm: (-[WebHTMLView setNeedsDisplay:]): add method name to log, use "YES" and "NO" instead of (int)flag (-[WebHTMLView setNeedsLayout:]): ditto (-[WebHTMLView setNeedsToApplyStyles:]): ditto
15:16 Changeset [29542] by mjs@apple.com


Reviewed by Maciej & Darin.

Fixes Bug 16868: Gmail crash

and Bug 16871: Crash when loading apple.com/startpage



Adds ActivationImp tear-off for cross-window eval() and fixes an
existing garbage collection issue exposed by the ActivationImp tear-off
patch (r29425) that can occur when an ExecState's m_callingExec is
different than its m_savedExec.

  • kjs/ExecState.cpp: (KJS::ExecState::mark):
  • kjs/function.cpp: (KJS::GlobalFuncImp::callAsFunction):


Reviewed by Maciej.

Added a test that checks whether ActivationImp tear-off occurs before
a cross-window eval(). Relevant to

Bug 16868: Gmail crash


  • fast/js/window-eval-tearoff-expected.txt: Added.
  • fast/js/window-eval-tearoff.html: Added.
14:31 Changeset [29541] by weinig@apple.com

Reviewed by Oliver.

Clean up MathObjectImp, it needed a little scrubbing.

  • kjs/math_object.cpp: (KJS::MathObjectImp::MathObjectImp): (KJS::MathObjectImp::getOwnPropertySlot): (KJS::MathObjectImp::getValueProperty): (KJS::mathProtoFuncACos): (KJS::mathProtoFuncASin): (KJS::mathProtoFuncATan): (KJS::mathProtoFuncATan2): (KJS::mathProtoFuncCos): (KJS::mathProtoFuncExp): (KJS::mathProtoFuncLog): (KJS::mathProtoFuncSin): (KJS::mathProtoFuncSqrt): (KJS::mathProtoFuncTan):
  • kjs/math_object.h: (KJS::MathObjectImp::classInfo): (KJS::MathObjectImp::):
14:13 Changeset [29540] by hyatt@apple.com

Update layout tests after fix for <rdar://problem/5681647>.

  • platform/mac/tables/mozilla/bugs/bug101674-expected.txt:
  • platform/mac/tables/mozilla/bugs/bug2973-expected.txt:
  • platform/mac/tables/mozilla/bugs/bug57828-2-expected.txt:
  • platform/mac/tables/mozilla_expected_failures/bugs/97619-expected.txt:
13:56 Changeset [29539] by hyatt@apple.com


Fix for http://bugs.webkit.org/show_bug.cgi?id=14846, cell padding can't be changed dynamically.

Reviewed by Eric Seidel

Added fast/table/dynamic-cellpadding.html

  • html/HTMLTableElement.cpp: (WebCore::HTMLTableElement::parseMappedAttribute):
  • rendering/RenderTable.cpp: (WebCore::RenderTable::setCellPadding):
  • rendering/RenderTable.h:


Reviewed by Eric Seidel


  • fast/table/dynamic-cellpadding.html: Added.
  • platform/mac/fast/table/dynamic-cellpadding-expected.checksum: Added.
  • platform/mac/fast/table/dynamic-cellpadding-expected.png: Added.
  • platform/mac/fast/table/dynamic-cellpadding-expected.txt: Added.
13:53 Changeset [29538] by weinig@apple.com

Reviewed by Geoffrey Garen.

Rename Lexer variable bol to atLineStart.

  • kjs/lexer.cpp: (KJS::Lexer::Lexer): (KJS::Lexer::setCode): (KJS::Lexer::nextLine): (KJS::Lexer::lex):
  • kjs/lexer.h:
13:50 Changeset [29537] by weinig@apple.com

Reviewed by Geoffrey Garen and Anders Carlsson.

Remove uses of KJS_PURE_ECMA as we don't ever build with it defined,
and we have many features that are not included in the ECMA spec.

  • kjs/lexer.cpp: (KJS::Lexer::Lexer): (KJS::Lexer::setCode): (KJS::Lexer::nextLine): (KJS::Lexer::lex):
  • kjs/lexer.h:
  • kjs/string_object.cpp:
  • kjs/string_object.h:
13:27 Changeset [29536] by hyatt@apple.com

Fix for <rdar://problem/5681647> Item pages on http://www.stendmarsofa.com/ hang Safari

This regression was caused by an attempt to implement a WinIE quirk in RenderBlock::calcInlinePrefWidths.
The original patch introduced pathological O(n2) behavior into this function even when the quirk didn't need
to apply. In addition the quirk was only partially implemented (the full quirk did not care what was adjacent
to images and also needed bidi.cpp patched, since the quirk applies both when computing pref widths and when
laying out).

This new patch rewrites the quirk to be complete. The original test case attached to the bug that tested a variety
of image/text combinations now fully matches WinIE.

Reviewed by Beth

Added fast/table/unbreakable-images-quirk.html

  • rendering/RenderBlock.cpp: (WebCore::RenderBlock::calcInlinePrefWidths):
  • rendering/bidi.cpp: (WebCore::RenderBlock::findNextLineBreak):
13:24 Changeset [29535] by hyatt@apple.com

I don't know what happened here. It did not commit with my checkin.

13:22 Changeset [29534] by aroben@apple.com

Windows build fix after r29488

  • DumpRenderTree/win/TestNetscapePlugin/TestNetscapePlugin.vcproj: Build into a subdirectory of $WebKitOutputDir\bin to match where DRT expects to find the plugin.
13:20 Changeset [29533] by hyatt@apple.com

Reviewed by Beth.

<rdar://problem/5681647> Item pages on http://www.stendmarsofa.com/ hang Safari

  • fast/table/unbreakable-images-quirk.html: Added.
  • platform/mac/fast/table/unbreakable-images-quirk-expected.checksum: Added.
  • platform/mac/fast/table/unbreakable-images-quirk-expected.png: Added.
  • platform/mac/fast/table/unbreakable-images-quirk-expected.txt: Added.
13:13 Changeset [29532] by jhoneycutt@apple.com

2008-01-16 Rodney Dawes <dobey@wayofthemonkey.com>

Reviewed by Jon Honeycutt

Move isPluginBlacklisted to PluginPackageWin.cpp, to avoid
a circular dependency on PluginDatabaseWin
Remove the getFileVersion method, and just check the versions directly
in isPluginBlacklisted, as it was the only caller


  • plugins/win/PluginDatabaseWin.cpp:
  • plugins/win/PluginDatabaseWin.h:
  • plugins/win/PluginPackageWin.cpp:
  • plugins/win/PluginPackageWin.h:
09:14 Changeset [29531] by mitz@apple.com

Reviewed by Adam Roben.

  • copied Windows expected results for svg/hixie/viewbox/preserveAspectRatio/001.xml from Tiger
  • platform/win/svg: Added.
  • platform/win/svg/hixie: Added.
  • platform/win/svg/hixie/viewbox: Added.
  • platform/win/svg/hixie/viewbox/preserveAspectRatio: Added.
  • platform/win/svg/hixie/viewbox/preserveAspectRatio/001-expected.txt: Copied from LayoutTests/platform/mac/svg/hixie/viewbox/preserveAspectRatio/001-expected.txt.
04:07 Changeset [29530] by alp@webkit.org

Update svn:ignore properties for autotools build

Reviewed by Alp Toker.

Ignore files placed in the source tree by the autotools build (these
files are generated even during an out-of-tree build).

02:34 Changeset [29529] by hausmann@webkit.org

Removed a whole bunch of notImplemented() warnings.

I don't want to hide the real warnings in lots of things that
I am by now pretty certain we won't need.

Signed-off-by: Simon Hausmann <simon.hausmann@trolltech.com>

02:18 Changeset [29528] by hausmann@webkit.org
  • Set the cursor on the containingWindow() instead of the nativeWidget()
  • This should be safe even with plugins as the cursor is set on the mouse events.

Signed-Off-By: Lars

02:18 Changeset [29527] by hausmann@webkit.org

Fix crash when bringing up the context menu on maps.google.com.

If the website provides its own context menu then we don't have a ContextMenu pointer.

02:18 Changeset [29526] by hausmann@webkit.org

Don't crash when receiving all sorts of events on a default constructed QWebView without a page.

02:18 Changeset [29525] by hausmann@webkit.org

Improve the sqlite3 dependency when building WebKit inside Qt.

Build sqlite3 into QtWebKit if a system sqlite3 development package
can't be found.

Signed-off-by: Lars

02:17 Changeset [29524] by hausmann@webkit.org

Implement GraphicsContext::clipOut and fix transparency layers.

Transparency layers where broken in two ways: It always used the
complete device rect as the size of the layer pixmap and the pixmaps
where not correctly initialized to transparent.

This fixes the worst drawing errors in the Inspector and makes drawing it
10 times faster.

02:17 Changeset [29523] by hausmann@webkit.org

Made the url property read-write.

02:17 Changeset [29522] by hausmann@webkit.org

Don't crash when showing a default initialized QWebView that has no page/frame yet.

02:17 Changeset [29521] by hausmann@webkit.org

Trivially implement the themed search field by mapping it to a text field

Also add a bunch of notImplemented warnings for other places where we don't
have an implementatin in RenderTheme.

02:02 ApplicationsGtk edited by alp@atoker.com
Add another feed reader (diff)
01:57 BuildingGtk edited by alp@atoker.com
Link to the archived GTK+/qmake build instructions (diff)
01:56 Changeset [29520] by hausmann@webkit.org

Change hoveringOverLink implementation to have less issues.

  • Currently we only compare a pointer. In the worst case we could delete the Element we have pointed to and a new one gets the same address. But even if that doesn't happen the WebCore::Element is mutable and JavaScript could change the URL, Title or Content. So we have to compare all these three attributes.
  • This does not seem to be a performance impact.
01:55 Changeset [29519] by hausmann@webkit.org
  • Follow the EventHandlerWin.cpp and always return true in the handlers.
  • Match the windows implementation more closely as well.
  • This is fixing "selection" bugs with the Web Inspector
01:55 Changeset [29518] by hausmann@webkit.org
  • Move the hoverElement from QWebFrame to QWebPage. As it is only used there.
01:54 Changeset [29517] by hausmann@webkit.org

EventHandler changes/fixes in QWebPage:


Send the event always to the mainFrame of the QWebPage.

-contextMenuEvent, key{Press,Release}Event:

Send the event to the focused frame.

This is following the Windows port and fixes a issue with the
Web Inspector where we were sending the events to a wrong frame.

It is guaranteed that the mainFrame will always have an eventHandler
and frameView set. There is no need to check for this in QWebPage.

01:52 Changeset [29516] by hausmann@webkit.org
  • Add core and kit functions to QWebFramePrivate to convert from QWebFrame to WebCore::Frame and vice versa.
01:38 Changeset [29515] by hausmann@webkit.org

Fix crashes in the new networking code.

When the ResourceLoader cancels the handle we have to make sure not to access
the resource handle afterwards again.

01:38 Changeset [29514] by hausmann@webkit.org

add conversion methods from and to QUrl to KURL.

Use them in the places I found at the moment. Fixes a bug
where form data was encoded twice.
Also fix QWebSettings to take a QUrl for the user style sheet

Signed-off-by: Simon

01:37 Changeset [29513] by hausmann@webkit.org
  • Make the InspectorClientView inherit from QWebView instead of QWidget. This way paintEvent, mouse{Press,Release}Event and other events get forwarded to the QWebPage/WebInspector automatically.
00:18 Changeset [29512] by sfalken@apple.com

Build fix.

  • win/tools/vsprops/release.vsprops:
00:02 Changeset [29511] by darin@apple.com

Rubber-stamped by Maciej Stachowiak and Oliver Hunt.

  • fix <rdar://problem/5689748> REGRESSION: Cannot redirect to protocols handled by external applications

Put navigation policy delegate calls back for redirects.
Just rolled out the change where I took them out.

  • loader/MainResourceLoader.cpp: (WebCore::MainResourceLoader::callContinueAfterNavigationPolicy): (WebCore::MainResourceLoader::continueAfterNavigationPolicy): (WebCore::MainResourceLoader::willSendRequest):
  • loader/MainResourceLoader.h:


23:41 WikiStart edited by regsitesph@yahoo.com
22:54 Changeset [29510] by adele@apple.com

Reviewed by Sam.

Remove unused variable for old media control background drawing code.

  • rendering/RenderThemeMac.h:
  • rendering/RenderThemeMac.mm: (WebCore::RenderThemeMac::RenderThemeMac): (WebCore::RenderThemeMac::~RenderThemeMac):
22:46 Changeset [29509] by weinig@apple.com

Fix typos in ChangeLog

22:43 Changeset [29508] by weinig@apple.com


Reviewed by Geoffrey Garen.

Fix <rdar://problem/5595552> r27608 introduced a 20% increase in JS binary size, 4% increase in WebCore binary size

  • This changes the way JS functions that use Lookup tables are handled. Instead using one class per function, which allowed specialization of the virtual callAsFunction method, we now use on class, PrototypeFunction, which takes a pointer to a static function to use as the implementation. This significantly decreases the binary size of JavaScriptCore (about 145k on an Intel only build) while still keeping some of the speedup r27608 garnered (SunSpider says this is 1.005x as slow, which should leave some wiggle room from the original 1% speedup) and keeps the functions implementations in separate functions to help with optimizations.
  • JavaScriptCore.exp:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • kjs/array_object.cpp: (KJS::arrayProtoFuncToString): (KJS::arrayProtoFuncToLocaleString): (KJS::arrayProtoFuncJoin): (KJS::arrayProtoFuncConcat): (KJS::arrayProtoFuncPop): (KJS::arrayProtoFuncPush): (KJS::arrayProtoFuncReverse): (KJS::arrayProtoFuncShift): (KJS::arrayProtoFuncSlice): (KJS::arrayProtoFuncSort): (KJS::arrayProtoFuncSplice): (KJS::arrayProtoFuncUnShift): (KJS::arrayProtoFuncFilter): (KJS::arrayProtoFuncMap): (KJS::arrayProtoFuncEvery): (KJS::arrayProtoFuncForEach): (KJS::arrayProtoFuncSome): (KJS::arrayProtoFuncIndexOf): (KJS::arrayProtoFuncLastIndexOf):
  • kjs/array_object.h:
  • kjs/date_object.cpp: (KJS::DatePrototype::getOwnPropertySlot): (KJS::dateProtoFuncToString): (KJS::dateProtoFuncToUTCString): (KJS::dateProtoFuncToDateString): (KJS::dateProtoFuncToTimeString): (KJS::dateProtoFuncToLocaleString): (KJS::dateProtoFuncToLocaleDateString): (KJS::dateProtoFuncToLocaleTimeString): (KJS::dateProtoFuncValueOf): (KJS::dateProtoFuncGetTime): (KJS::dateProtoFuncGetFullYear): (KJS::dateProtoFuncGetUTCFullYear): (KJS::dateProtoFuncToGMTString): (KJS::dateProtoFuncGetMonth): (KJS::dateProtoFuncGetUTCMonth): (KJS::dateProtoFuncGetDate): (KJS::dateProtoFuncGetUTCDate): (KJS::dateProtoFuncGetDay): (KJS::dateProtoFuncGetUTCDay): (KJS::dateProtoFuncGetHours): (KJS::dateProtoFuncGetUTCHours): (KJS::dateProtoFuncGetMinutes): (KJS::dateProtoFuncGetUTCMinutes): (KJS::dateProtoFuncGetSeconds): (KJS::dateProtoFuncGetUTCSeconds): (KJS::dateProtoFuncGetMilliSeconds): (KJS::dateProtoFuncGetUTCMilliseconds): (KJS::dateProtoFuncGetTimezoneOffset): (KJS::dateProtoFuncSetTime): (KJS::dateProtoFuncSetMilliSeconds): (KJS::dateProtoFuncSetUTCMilliseconds): (KJS::dateProtoFuncSetSeconds): (KJS::dateProtoFuncSetUTCSeconds): (KJS::dateProtoFuncSetMinutes): (KJS::dateProtoFuncSetUTCMinutes): (KJS::dateProtoFuncSetHours): (KJS::dateProtoFuncSetUTCHours): (KJS::dateProtoFuncSetDate): (KJS::dateProtoFuncSetUTCDate): (KJS::dateProtoFuncSetMonth): (KJS::dateProtoFuncSetUTCMonth): (KJS::dateProtoFuncSetFullYear): (KJS::dateProtoFuncSetUTCFullYear): (KJS::dateProtoFuncSetYear): (KJS::dateProtoFuncGetYear):
  • kjs/date_object.h:
  • kjs/function.cpp: (KJS::PrototypeFunction::PrototypeFunction): (KJS::PrototypeFunction::callAsFunction):
  • kjs/function.h:
  • kjs/lookup.h: (KJS::HashEntry::): (KJS::staticFunctionGetter):
  • kjs/math_object.cpp: (KJS::mathProtoFuncAbs): (KJS::mathProtoFuncACos): (KJS::mathProtoFuncASin): (KJS::mathProtoFuncATan): (KJS::mathProtoFuncATan2): (KJS::mathProtoFuncCeil): (KJS::mathProtoFuncCos): (KJS::mathProtoFuncExp): (KJS::mathProtoFuncFloor): (KJS::mathProtoFuncLog): (KJS::mathProtoFuncMax): (KJS::mathProtoFuncMin): (KJS::mathProtoFuncPow): (KJS::mathProtoFuncRandom): (KJS::mathProtoFuncRound): (KJS::mathProtoFuncSin): (KJS::mathProtoFuncSqrt): (KJS::mathProtoFuncTan):
  • kjs/math_object.h:
  • kjs/string_object.cpp: (KJS::stringProtoFuncToString): (KJS::stringProtoFuncValueOf): (KJS::stringProtoFuncCharAt): (KJS::stringProtoFuncCharCodeAt): (KJS::stringProtoFuncConcat): (KJS::stringProtoFuncIndexOf): (KJS::stringProtoFuncLastIndexOf): (KJS::stringProtoFuncMatch): (KJS::stringProtoFuncSearch): (KJS::stringProtoFuncReplace): (KJS::stringProtoFuncSlice): (KJS::stringProtoFuncSplit): (KJS::stringProtoFuncSubstr): (KJS::stringProtoFuncSubstring): (KJS::stringProtoFuncToLowerCase): (KJS::stringProtoFuncToUpperCase): (KJS::stringProtoFuncToLocaleLowerCase): (KJS::stringProtoFuncToLocaleUpperCase): (KJS::stringProtoFuncLocaleCompare): (KJS::stringProtoFuncBig): (KJS::stringProtoFuncSmall): (KJS::stringProtoFuncBlink): (KJS::stringProtoFuncBold): (KJS::stringProtoFuncFixed): (KJS::stringProtoFuncItalics): (KJS::stringProtoFuncStrike): (KJS::stringProtoFuncSub): (KJS::stringProtoFuncSup): (KJS::stringProtoFuncFontcolor): (KJS::stringProtoFuncFontsize): (KJS::stringProtoFuncAnchor): (KJS::stringProtoFuncLink):
  • kjs/string_object.h:


Reviewed by Geoffrey Garen.

Fix <rdar://problem/5595552> r27608 introduced a 20% increase in JS binary size, 4% increase in WebCore binary size

  • Update JS Function implementations to use a static function based method. This decreases the binary size of an Intel only build by 1013.5K.
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/js/JSDOMWindowCustom.cpp: (WebCore::JSDOMWindow::customGetOwnPropertySlot):
  • bindings/js/JSEventTargetBase.cpp: (WebCore::jsEventTargetAddEventListener): (WebCore::jsEventTargetRemoveEventListener): (WebCore::jsEventTargetDispatchEvent): (WebCore::retrieveEventTargetAndCorrespondingNode):
  • bindings/js/JSEventTargetBase.h:
  • bindings/js/JSHTMLInputElementBase.cpp: (WebCore::jsHTMLInputElementBaseFunctionSetSelectionRange): (WebCore::JSHTMLInputElementBase::getOwnPropertySlot):
  • bindings/js/JSHTMLInputElementBase.h:
  • bindings/js/JSLocation.cpp: (WebCore::JSLocation::getOwnPropertySlot): (WebCore::jsLocationProtoFuncReplace): (WebCore::jsLocationProtoFuncReload): (WebCore::jsLocationProtoFuncAssign): (WebCore::jsLocationProtoFuncToString):
  • bindings/js/JSLocation.h:
  • bindings/js/JSXMLHttpRequest.cpp: (KJS::jsXMLHttpRequestPrototypeFunctionAbort): (KJS::jsXMLHttpRequestPrototypeFunctionGetAllResponseHeaders): (KJS::jsXMLHttpRequestPrototypeFunctionGetResponseHeader): (KJS::jsXMLHttpRequestPrototypeFunctionOpen): (KJS::jsXMLHttpRequestPrototypeFunctionSend): (KJS::jsXMLHttpRequestPrototypeFunctionSetRequestHeader): (KJS::jsXMLHttpRequestPrototypeFunctionOverrideMIMEType): (KJS::jsXMLHttpRequestPrototypeFunctionAddEventListener): (KJS::jsXMLHttpRequestPrototypeFunctionRemoveEventListener): (KJS::jsXMLHttpRequestPrototypeFunctionDispatchEvent):
  • bindings/js/JSXMLHttpRequest.h:
  • bindings/js/JSXSLTProcessor.cpp: (KJS::jsXSLTProcessorPrototypeFunctionImportStylesheet): (KJS::jsXSLTProcessorPrototypeFunctionTransformToFragment): (KJS::jsXSLTProcessorPrototypeFunctionTransformToDocument): (KJS::jsXSLTProcessorPrototypeFunctionSetParameter): (KJS::jsXSLTProcessorPrototypeFunctionGetParameter): (KJS::jsXSLTProcessorPrototypeFunctionRemoveParameter): (KJS::jsXSLTProcessorPrototypeFunctionClearParameters): (KJS::jsXSLTProcessorPrototypeFunctionReset):
  • bindings/js/JSXSLTProcessor.h:
  • bindings/js/kjs_events.cpp: (WebCore::jsClipboardPrototypeFunctionClearData): (WebCore::jsClipboardPrototypeFunctionGetData): (WebCore::jsClipboardPrototypeFunctionSetData): (WebCore::jsClipboardPrototypeFunctionSetDragImage):
  • bindings/js/kjs_events.h:
  • bindings/js/kjs_navigator.cpp: (KJS::pluginsFunctionRefresh): (KJS::navigatorProtoFuncJavaEnabled):
  • bindings/js/kjs_navigator.h:
  • bindings/js/kjs_window.cpp: (KJS::Window::getOwnPropertySlot): (KJS::windowProtoFuncAToB): (KJS::windowProtoFuncBToA): (KJS::windowProtoFuncOpen): (KJS::windowProtoFuncSetTimeout): (KJS::windowProtoFuncClearTimeout): (KJS::windowProtoFuncSetInterval): (KJS::windowProtoFuncAddEventListener): (KJS::windowProtoFuncRemoveEventListener): (KJS::windowProtoFuncShowModalDialog): (KJS::windowProtoFuncNotImplemented):
  • bindings/js/kjs_window.h:
  • bindings/scripts/CodeGenerator.pm:
  • bindings/scripts/CodeGeneratorJS.pm:
22:30 Changeset [29507] by adele@apple.com

Reviewed by Dan.

Fix for <rdar://problem/5682492> With the <video> element, the audio is heard when forwarding or rewinding a movie while it's playing

  • rendering/MediaControlElements.cpp: (WebCore::MediaControlSeekButtonElement::defaultEventHandler): Instead of pausing the media when you stop seeking on mouse up, pause the video when you first start seeking on mouse down.
21:23 Changeset [29506] by ggaren@apple.com

Reviewed by Adam Roben.

Some tweaks to our headerdoc, suggested by David Gatwood on the docs

  • API/JSBase.h:
  • API/JSObjectRef.h:
  • API/JSStringRef.h:
  • API/JSValueRef.h:
19:32 Changeset [29505] by alp@webkit.org


Rubber-stamped by Anders.

Make the HTTP backend configurable in the GTK+ port. curl is currently
the only option.

  • GNUmakefile.am:
  • WebKit.pri:
  • configure.ac:


Rubber-stamped by Anders.

Make the HTTP backend configurable in the GTK+ port. curl is currently
the only option.

  • wtf/Platform.h: Don't hard-code WTF_USE_CURL for GTK


Rubber-stamped by Anders.

Make the HTTP backend configurable in the GTK+ port. curl is currently
the only option.

  • GNUmakefile.am:
17:53 Changeset [29504] by adele@apple.com

Build fix.

  • rendering/RenderThemeSafari.cpp: Removing MediaBackgroundAppearance.
17:22 Changeset [29503] by weinig@apple.com

Reviewed by Beth Dakin.

Remove unneeded variable.

  • kjs/string_object.cpp: (KJS::StringProtoFuncSubstr::callAsFunction):
17:16 Changeset [29502] by weinig@apple.com

Reviewed by Darin.

Fix for <rdar://problem/5671040>
REGRESSION: 6% HTML iBench regression from r28722 (getElementsByClassName)

On my most consistent tests, this brings the HTML iBench from 1.46 -> 1.41,
which does not completely make up reported regression, but I was not able to
reproduce those findings either.

  • css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::matchRules): (WebCore::CSSStyleSelector::checkOneSelector):
  • dom/ClassNames.cpp: (WebCore::ClassNames::parseClassAttribute):
  • dom/ClassNames.h: (WebCore::ClassNames::contains): (WebCore::ClassNames::operator[]):
17:12 Changeset [29501] by adele@apple.com

Build fix. This time for real.

  • rendering/RenderThemeSafari.cpp:
16:53 Changeset [29500] by mitz@apple.com
  • updated Tiger results for <rdar://problem/5666926>
  • platform/mac/svg/hixie/viewbox/preserveAspectRatio/001-expected.txt:
16:46 Changeset [29499] by adele@apple.com

Build fix.

  • rendering/RenderThemeSafari.cpp:
16:43 Changeset [29498] by sfalken@apple.com

<rdar://problem/5663888> Cannot type into a JavaScript prompt created from a timer

Allow nested timers from javascript prompts to allow for WebView-based edit fields.

Reviewed by Darin.

  • WebChromeClient.cpp: (WebChromeClient::runJavaScriptPrompt):
16:37 Changeset [29497] by mitz@apple.com


Reviewed by Darin Adler.

  • fix <rdar://problem/5666926> svg/custom/use-css-no-effect-on-shadow-tree.svg is failing
  • svg/SVGPreserveAspectRatio.cpp: (WebCore::SVGPreserveAspectRatio::getCTM): Changed the arguments' type from float to double in order to make the values passed to scale() and translate() on Mac OS X and on Windows the same.
  • svg/SVGPreserveAspectRatio.h:


Reviewed by Darin Adler.

  • updated results for <rdar://problem/5666926> svg/custom/use-css-no-effect-on-shadow-tree.svg is failing
  • platform/mac-leopard/svg/hixie/viewbox/preserveAspectRatio/001-expected.txt:
  • platform/mac/svg/custom/use-css-no-effect-on-shadow-tree-expected.txt:
  • platform/mac/svg/hixie/links/001-expected.txt:
  • platform/win/Skipped:
14:50 Changeset [29496] by ggaren@apple.com

Reviewed by Andre Boule.

Fixed <rdar://problem/5667627> [WebCache empty] implementation should
not disable/enable the cache

Toggle the cache model instead -- toggling disable/enable just causes
the cache to forget about resources, not reclaim their memory.

  • Misc/WebCache.mm: (+[WebCache empty]):
  • WebView/WebView.mm:
  • WebView/WebViewInternal.h:
14:14 Changeset [29495] by ggaren@apple.com

Reviewed by Sam Weinig.

Fixed the waitUntilDone watchdog timer -- the old code never added the
timer to the run loop, so it didn't do anything.

  • DumpRenderTree/mac/LayoutTestControllerMac.mm: (LayoutTestController::setWaitToDump):
  • DumpRenderTree/win/LayoutTestControllerWin.cpp: (LayoutTestController::setWaitToDump):
13:47 Changeset [29494] by alp@webkit.org

2008-01-15 Alp Toker <alp@atoker.com>

GTK+/autotools build fix for GCC < 4. Use the -fvisibility compiler
flags only when they're available.

Additionally, use -fvisibility-inlines-hidden in both debug and
release builds when available to match the Mac build.

  • GNUmakefile.am:
  • configure.ac:
13:10 Changeset [29493] by ap@webkit.org

Reviewed by Darin.

<rdar://problem/5342813> REGRESSION: Safari encodes mailto URLs incorrectly

Test: fast/encoding/mailto-always-utf-8.html

  • platform/KURL.cpp: (WebCore::encodeRelativeString): Always use UTF-8 for mailto URLs.
12:37 Changeset [29492] by adele@apple.com


Reviewed by Adam and Antti.

WebCore part of fix for <rdar://problem/5619062> Add load progress indicator to video controls

  • WebCore.base.exp: Removed symbol for wkGetMediaControlBackgroundImageData. Added symbol for wkDrawMediaSliderTrack.
  • css/CSSPrimitiveValueMappings.h: (WebCore::CSSPrimitiveValue::CSSPrimitiveValue): Removed case for MediaBackgroundAppearance.
  • css/html4.css: Removed -webkit-appearance: media-background rule for the media panel element. Removed unnecessary margin for slider.
  • rendering/RenderStyle.h: (WebCore::): Removed MediaBackgroundAppearance.
  • html/HTMLMediaElement.cpp: (WebCore::HTMLMediaElement::initAndDispatchProgressEvent): Call updateMediaPlayer more frequently so the load progress control gets updated appropriately.
  • platform/mac/WebCoreSystemInterface.h: Removed wkGetMediaControlBackgroundImageData. Added wkDrawMediaSliderTrack.
  • platform/mac/WebCoreSystemInterface.mm: ditto.
  • rendering/RenderTheme.h: Removed paintMediaBackground. Added paintMediaSliderTrack.
  • rendering/RenderTheme.cpp: (WebCore::RenderTheme::paint): Call paintMediaSliderTrack for elements with MediaSliderAppearance.
  • rendering/RenderThemeMac.h: Removed paintMediaBackground. Added paintMediaSliderTrack.
  • rendering/RenderThemeMac.mm: (WebCore::RenderThemeMac::adjustSliderThumbSize): Added different sizes for the media slider thumb. (WebCore::RenderThemeMac::paintMediaSliderTrack): Added. Calls wkDrawMediaSliderTrack with the percentage the media has loaded.
  • rendering/RenderThemeSafari.cpp: ditto. (WebCore::RenderThemeSafari::adjustSliderThumbSize): (WebCore::RenderThemeSafari::paintMediaSliderTrack):
  • rendering/RenderThemeSafari.h:


Reviewed by Adam and Antti.

WebKit part of fix for <rdar://problem/5619062> Add load progress indicator to video controls

  • WebCoreSupport/WebSystemInterface.m: (InitWebCoreSystemInterface): Removed initialization for GetMediaControlBackgroundImageData. Added initialization for DrawMediaSliderTrack.


Reviewed by Adam and Antti.

Updated libraries for <rdar://problem/5619062> Add load progress indicator to video controls

  • WebKitSystemInterface.h:
  • libWebKitSystemInterfaceLeopard.a:
  • libWebKitSystemInterfaceTiger.a:
  • win/include/SafariTheme: Added.
  • win/include/SafariTheme/SafariThemeConstants.h: Added. Placeholder empty header until we release an updated WebKitSupportLibrary.


Reviewed by Adam and Antti.

Updated tests for <rdar://problem/5619062> Add load progress indicator to video controls

  • platform/mac/media/audio-controls-rendering-expected.checksum:
  • platform/mac/media/audio-controls-rendering-expected.png:
  • platform/mac/media/audio-controls-rendering-expected.txt:
  • platform/mac/media/video-controls-rendering-expected.checksum:
  • platform/mac/media/video-controls-rendering-expected.png:
  • platform/mac/media/video-controls-rendering-expected.txt:
  • platform/mac/media/video-display-toggle-expected.checksum:
  • platform/mac/media/video-display-toggle-expected.png:
  • platform/mac/media/video-display-toggle-expected.txt:
11:06 Changeset [29491] by mrowe@apple.com


11:04 Changeset [29490] by mrowe@apple.com

New tag.

07:39 BuildingQtOnLinux edited by joachim.tesch@gmail.com
Fixed libxslt1-dev Ubuntu package name (diff)
01:27 Changeset [29489] by ap@webkit.org

Reviewed by Mark Rowe.

Some logging channels weren't initialized from user defaults.

  • platform/mac/LoggingMac.mm: (WebCore::InitializeLoggingChannelsIfNecessary): Initialize LogPlatformLeaks, LogStorageAPI, LogMedia, LogPlugin.
00:50 Changeset [29488] by sfalken@apple.com


Use shared vsprops for most vcproj properties.

Reviewed by Darin.

  • JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj: Add missing Debug_Internal config.
  • JavaScriptCore.vcproj/WTF/WTF.vcproj: Add missing Debug_Internal config.
  • JavaScriptCore.vcproj/testkjs/testkjs.vcproj:


Use shared vsprops for most vcproj properties.

Reviewed by Darin.

  • WebCore.vcproj/QTMovieWin.vcproj:
  • WebCore.vcproj/WebCore.vcproj:
  • platform/graphics/win/QTMovieWin.cpp: (QTMovieWin::initializeQuickTime): Fix compiler warning.


Use shared vsprops for most vcproj properties.

Reviewed by Darin.

  • WebKit.vcproj/Interfaces.vcproj:
  • WebKit.vcproj/WebKit.vcproj:
  • WebKit.vcproj/WebKitGUID.vcproj: Add missing Debug_Internal config.


Use shared vsprops for most vcproj properties.

Reviewed by Darin.

  • win/tools/vsprops/common.vsprops:
  • win/tools/vsprops/debug.vsprops:
  • win/tools/vsprops/debug_internal.vsprops:
  • win/tools/vsprops/release.vsprops:


Use shared vsprops for most vcproj properties.

Reviewed by Darin.

  • Drosera/win/Drosera.vcproj/Drosera.vcproj:
  • DumpRenderTree/win/DumpRenderTree.vcproj:
  • DumpRenderTree/win/ImageDiff.vcproj:
  • DumpRenderTree/win/TestNetscapePlugin/TestNetscapePlugin.vcproj:
  • FindSafari/FindSafari.vcproj:


21:43 Changeset [29487] by eric@webkit.org

Reviewed by mjs.

Remove a couple more uses of DeprecatedString

No functional changes, thus no test case.

  • dom/Document.cpp: (WebCore::Document::write): (WebCore::Document::writeln): (WebCore::Document::recalcStyleSelector):
  • dom/Document.h:
21:41 Changeset [29486] by alp@webkit.org

2008-01-14 Pierre-Luc Beaudoin <pierre-luc.beaudoin@collabora.co.uk>

Reviewed by Alp Toker.

Build fix: missing symbols when compiling WebKit/Gtk+ with --enable-svg-filters

  • GNUmakefile.am:
  • svg/graphics/cairo/SVGResourceFilterCairo.cpp: Added. (WebCore::SVGResourceFilter::createPlatformData): (WebCore::SVGResourceFilter::prepareFilter): (WebCore::SVGResourceFilter::applyFilter):
19:59 Changeset [29485] by slewis@apple.com

2008-01-14 Stephanie <slewis@apple.com>

revert accidental character.

19:52 Changeset [29484] by slewis@apple.com

2008-01-14 Stephanie <slewis@apple.com>


add Quicktime PPC only leaks to Leopard exclude list. See <rdar://problem/5667132>

  • Scripts/run-webkit-tests:

add svg/css/glyph-orientation-rounding-test.xhtml to skip list. See <rdar://problem/5686552>

  • platform/mac-leopard/Skipped:
17:31 Changeset [29483] by eric@webkit.org

Reviewed by hyatt & eseidel.

This patch fixes an issue with addLineBoxRects not correctly calculating the
rects due to an off-by-one error in using box->end(). We were assuming that
end() gives the index past the last character, when in fact it gives the
index _of_ the last character.

Eric Seidel and I could not find a way to test this via DRT. This method is
only used by WebKit or Safari for displaying selection rects AFAICT.

  • rendering/RenderText.cpp: (WebCore::RenderText::addLineBoxRects):
17:03 Changeset [29482] by darin@apple.com

Reviewed by Geoff.

  • fix crash seen in layout tests
  • html/HTMLFrameSetElement.cpp: (WebCore::HTMLFrameSetElement::attach): Remove incorrect cast to HTMLElement* for parentNode(). The parent is either an HTMLElement or a Document, not necessarily an HTMLElement.
14:51 Changeset [29481] by darin@apple.com

Reviewed by Sam.

  • fix mistakes Sam noticed in my re-speed-up patch
  • dom/Element.cpp: (WebCore::Element::virtualHasTagName): Moved out of header file. No reason to make this inline.
  • dom/Element.h: Moved virtualHasTagName out of header file.
  • dom/Node.cpp: (WebCore::Node::virtualHasTagName): Moved out of header file. No reason to make this inline.
  • dom/Node.h: Removed incorrect "virtual" on hasTagName and moved virtualHasTagName out of header file.
  • platform/text/StringBuffer.h: Added. Has just the new StringBuffer class.
  • platform/text/StringImpl.h: Removed StringBuffer class.
  • loader/DocumentLoader.cpp: Added StringBuffer.h include.
  • platform/text/String.cpp: Ditto.
  • platform/text/StringImpl.cpp: Ditto.
  • platform/text/TextCodecLatin1.cpp: Ditto.
  • platform/text/TextCodecUTF16.cpp: Ditto.
  • platform/text/TextCodecUserDefined.cpp: Ditto.
  • WebCore.vcproj/WebCore.vcproj: Added StringBuffer.h.
  • WebCore.xcodeproj/project.pbxproj: Ditto.
14:35 Changeset [29480] by darin@apple.com
  • Scripts/do-webcore-rename: Queue up another rename.
13:05 Changeset [29479] by hyatt@apple.com

Clean up VS project file after graphics files moved.

12:13 Changeset [29478] by ggaren@apple.com

Reviewed by Sam Weinig.

Some cleanup to my last patch.

Removed one unused setter declaration and one unused setter definition.

Renamed DoNotCheckDomainSecurityOnRead to DoNotCheckDomainSecurityOnGet
because "get" is all over the IDL files, and "read" is not.

  • bindings/scripts/CodeGeneratorJS.pm:
  • page/DOMWindow.h: (WebCore::DOMWindow::defaultstatus):
  • page/DOMWindow.idl:
11:26 Changeset [29477] by mitz@apple.com

Rubber-stamped by Alice Liu.

  • remove reference to nonexistent file
  • WebCore.vcproj/WebCore.vcproj: Removed reference to SVGFont.h.
11:25 Changeset [29476] by ddkilzer@apple.com

Fix date; restore '<'.

11:11 Changeset [29475] by aroben@apple.com
  • JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj: Added some headers that were missing from the vcproj so their contents will be included in Find in Files.
11:02 Changeset [29474] by aroben@apple.com

Fix Bug 16871: Crash when loading apple.com/startpage


Patch written by Darin, reviewed by me.

  • kjs/ExecState.cpp: (KJS::ExecState::mark): Call ActivationImp::markChildren if our m_activation is on the stack. This is what ScopeChain::mark also does, but apparently in some cases it's possible for an ExecState's ActivationImp to not be in any ScopeChain.
10:38 Changeset [29473] by zecke@webkit.org
10:28 Changeset [29472] by kmccullough@apple.com


Reviewed by Oliver.

-<rdar://problem/5622667> REGRESSION (Leopard-ToT): Endless loading loop
trying to view techreport.com comments

  • We need to set values in the map, because if they are already in the map they will not be reset when we use add().
  • kjs/array_instance.cpp: (KJS::ArrayInstance::put):


Reviewed by Oliver.

  • <rdar://problem/5622667> REGRESSION (Leopard-ToT): Endless loading loop trying to view techreport.com comments
  • Any resetting of a value in an array of sufficient size, would cause the second value to be lost.
  • fast/js/array-reset-large-index-expected.txt: Added.
  • fast/js/array-reset-large-index.html: Added.
  • fast/js/resources/array-reset-large-index.js: Added.
10:24 Changeset [29471] by zecke@webkit.org
09:51 Changeset [29470] by darin@apple.com


Reviewed by Adam.

  • re-speed-up the page load test (my StringImpl change slowed it down)
  • wtf/RefCounted.h: (WTF::RefCounted::RefCounted): Allow derived classes to start with a reference count other than 0. Eventually everyone will want to start with a 1. This is a staged change. For now, there's a default of 0, and you can specify 1. Later, there will be no default and everyone will have to specify. And then later, there will be a default of 1. Eventually, we can take away even the option of starting with 0!
  • wtf/Vector.h: (WTF::Vector::Vector): Sped up creation of non-empty vectors by removing the overhead of first constructing something empty and then calling resize. (WTF::Vector::clear): Sped up the common case of calling clear on an empty vector by adding a check for that case. (WTF::Vector::releaseBuffer): Marked this function inline and removed a branch in the case of vectors with no inline capacity (normal vectors) by leaving out the code to copy the inline buffer in that case.


Reviewed by Adam.

  • re-speed-up the page load test (my StringImpl change slowed it down) <rdar://problem/5677241> 1.5% PLT regression from r29098

To reverse the slowdown I caused by changing StringImpl, I tightened it up,
and also did a little optimization in the HTML tokenizer and in other clients
of Vector.

  • WebCore.base.exp: Removed export of a now-inline function.
  • css/CSSParser.cpp: (WebCore::CSSParser::parseTransitionProperty): Removed use of DeprecatedString to get property ID. This could be sped up even more by writing a fast path to use a local Vector<char> rather than allocating a string. (WebCore::convertASCIIToFloat): Added. Allows numeric conversion without allocating a string object to hold the number. (WebCore::CSSParser::lex): Changed to call convertASCIIToFloat instead of DeprecatedString::toFloat.
  • dom/Element.h: (WebCore::Element::hasTagName): Made this non-virtual and inline if you have an Element*. It's still virtual if you have a Node*. (WebCore::Element::virtualHasTagName): Virtual version that makes the Node* case work.
  • dom/Node.h: (WebCore::Node::hasTagName): Made this non-virtual and inline so that Element can override it with an inline. This is the same technique we use for firstChild and lastChild. (WebCore::Node::virtualHasTagName): This is the private virtual that Element overrides.
  • dom/Text.cpp: (WebCore::Text::splitText): Clean up by using a RefPtr here instead of a PassRefPtr.
  • html/HTMLTokenizer.cpp: (WebCore::HTMLTokenizer::parseSpecial): Use the new advancePastNonNewline(), which is more efficient in cases where we know the character is not a newline and hence we don't have to update the line number. (WebCore::HTMLTokenizer::parseComment): Ditto. (WebCore::HTMLTokenizer::parseServer): Ditto. (WebCore::HTMLTokenizer::parseProcessingInstruction): Ditto. (WebCore::HTMLTokenizer::parseText): Ditto. (WebCore::HTMLTokenizer::parseEntity): Ditto. (WebCore::HTMLTokenizer::parseTag): Ditto. Also streamline the QuotedValue case so there's one less branch taken for non-punctuation characters since this code path is *so* hot. (WebCore::HTMLTokenizer::write): More of the same.
  • loader/Cache.cpp: (WebCore::Cache::lruListFor): Use Vector::grow instead of resize.
  • loader/DocumentLoader.cpp: (WebCore::canonicalizedTitle): Use StringBuffer instead of Vector<UChar>.
  • loader/TextResourceDecoder.cpp: (WebCore::TextResourceDecoder::checkForCSSCharset): Use Vector::grow instead of resize. (WebCore::TextResourceDecoder::checkForHeadCharset): Ditto. (WebCore::TextResourceDecoder::decode): Use Vector::grow and shrink instead of resize. (WebCore::TextResourceDecoder::flush): Use Vector::shrink instead of resize.
  • platform/KURL.cpp: (WebCore::KURL::decode_string): Use Vector::grow instead of resize.
  • platform/SharedBuffer.cpp: (WebCore::SharedBuffer::clear): Use Vector::shrink instead of resize.
  • platform/graphics/BitmapImage.cpp: (WebCore::BitmapImage::cacheFrame): Use Vector::grow instead of resize.
  • platform/network/FormData.cpp: (WebCore::FormData::appendData): Use Vector::grow instead of resize. (WebCore::FormData::flatten): Ditto.
  • platform/text/AtomicString.cpp: (WebCore::CStringTranslator::translate): Use a new StringImpl constructor made just for use by AtomicString. Avoids setting fields twice, and also preserves reference count behavior (which I changed for the other constructors, since they're entirely private and used only inside the class). (WebCore::UCharBufferTranslator::translate): Ditto.
  • platform/text/Base64.cpp: (WebCore::base64Encode): Use Vector::grow instead of resize. (WebCore::base64Decode): Use Vector::grow and shrink instead of resize.
  • platform/text/PlatformString.h: (WebCore::String::adopt): Added an overload for the new StringBuffer class. Also made both versions inline.
  • platform/text/SegmentedString.h: (WebCore::SegmentedString::advancePastNewline): Added. One less branch for case where the character is known to be a newline. (WebCore::SegmentedString::advancePastNonNewline): Added. Less code for case where the character is known not to be a newline.
  • platform/text/String.cpp: (WebCore::String::append): Use StringBuffer instead of Vector<UChar>. (WebCore::String::insert): Ditto. (WebCore::String::truncate): Ditto. (WebCore::String::remove): Ditto. (WebCore::String::format): Use Vector::grow instead of resize.
  • platform/text/StringImpl.cpp: (WebCore::StringImpl::StringImpl): Changed constructors to start with a refCount of 1 instead of 0, and made them all inline. Eliminates the WithOneRef constructor since they all behave this way now. The only exceptions are the constructors for AtomicString, which retain the old behavior. (WebCore::StringImpl::empty): Simplified, since we no longer need to use the special WithOneRef constructor. (WebCore::StringImpl::toCoordsArray): Use StringBuffer instead of Vector<UChar>. (WebCore::StringImpl::lower): Ditto. (WebCore::StringImpl::upper): Ditto. (WebCore::StringImpl::secure): Ditto. (WebCore::StringImpl::foldCase): Ditto. (WebCore::StringImpl::simplifyWhiteSpace): Ditto. Also change to use Vector::shrink instead of resize (since half of the function uses Vector<UChar>). (WebCore::StringImpl::capitalize): Use StringBuffer instead of Vector<UChar>. (WebCore::StringImpl::replace): Ditto. (WebCore::StringImpl::ascii): Streamlined a bit. (WebCore::StringImpl::createStrippingNullCharacters): Use StringBuffer insetad of Vector<UChar>. Took out checks for null characters and 0 length that aren't needed. Coded the check for null characters in a slightly more efficient way. Since this is so hot, didn't call adopt at all, putting the code right in here, including the call to the StringImpl constructor and adoptRef (for the fast case). (WebCore::StringImpl::adopt): Added a version for the new StringBuffer class. Removed the attempt to resize the buffer at the time we adopt based on measuring actual use and realizing that it's just a character here or there and not worth a call to fastRealloc. Changed to use adoptRef since the constructor now starts with a refCount of 1. (WebCore::StringImpl::create): Changed to use adoptRef since the constructor now starts with a refCount of 1. (WebCore::StringImpl::createWithTerminatingNullCharacter): Ditto. (WebCore::StringImpl::copy): Ditto. Also made non-inline since the constructor itself is now inline.
  • platform/text/StringImpl.h: Added a StringBuffer class that's useful for putting characters into a buffer before creating an immutable string. Not good at resizing the way Vector<UChar> is, so only useful for things that rarely need to be resized. Added a new AdoptBuffer constructor and empty constructor, but made all constructors private so they can be inlined and only used inside the StringImpl class. Added two new constructors for AtomicString. Made copy() no longer inline. Changed the type of the [] operator to unsigned instead of int and added an assertion. Made the hash functions inline.
  • platform/text/TextCodecICU.cpp: (WebCore::TextCodecICU::encode): Use Vector::grow instead of resize.
  • platform/text/TextCodecLatin1.cpp: (WebCore::TextCodecLatin1::decode): Use StringBuffer instead of Vector<UChar>. (WebCore::encodeComplexWindowsLatin1): Use Vector::grow instead of resize.
  • platform/text/TextCodecUTF16.cpp: (WebCore::TextCodecUTF16::decode): Use StringBuffer instead of Vector<UChar>.
  • platform/text/TextCodecUserDefined.cpp: (WebCore::TextCodecUserDefined::decode): Use StringBuffer instead of Vector<UChar>. (WebCore::encodeComplexUserDefined): Use Vector::grow instead of resize.
  • platform/text/TextEncoding.cpp: (WebCore::TextEncoding::encode): Use Vector::grow instead of resize.
  • platform/text/TextStream.cpp: (WebCore::TextStream::operator<<): Use Vector::grow instead of resize.
  • platform/text/mac/TextCodecMac.cpp: (WebCore::TextCodecMac::encode): Use Vector::grow instead of resize.
  • rendering/AutoTableLayout.cpp: (WebCore::AutoTableLayout::insertSpanCell): Use Vector::grow instead of resize.
  • rendering/RenderFrameSet.h: (WebCore::FrameEdgeInfo::FrameEdgeInfo): Allocate vectors with the correct initial size instead of calling resize on them after allocating empty.
  • rendering/RenderListMarker.cpp: (WebCore::RenderListMarker::paint): Use Vector::grow instead of resize.
  • rendering/RenderStyle.cpp: Removed CursorList::operator==.
  • rendering/RenderStyle.h: (WebCore::CursorList::operator==): Implemented using the Vector ==. (WebCore::CursorList::operator!=): Ditto.
  • rendering/RenderTable.cpp: (WebCore::RenderTable::splitColumn): Use Vector::grow instead of resize. (WebCore::RenderTable::appendColumn): Ditto.
  • rendering/RenderTableSection.cpp: (WebCore::RenderTableSection::ensureRows): Use Vector::grow instead of resize.
  • rendering/bidi.cpp: (WebCore::addMidpoint): Use Vector::grow instead of resize.
  • xml/XPathNodeSet.h: (WebCore::XPath::NodeSet::clear): Use Vector::shrink instead of resize.
09:47 Changeset [29469] by darin@apple.com
  • Scripts/run-webkit-tests: More ignore list tweaking.
09:45 Changeset [29468] by darin@apple.com
  • Scripts/run-webkit-tests: Add another leak to the ignore list.
09:03 Changeset [29467] by aroben@apple.com
  • platform/win/Skipped: Fixed a typo pointed out by Alexey.
08:44 Changeset [29466] by aroben@apple.com
  • platform/win/Skipped: Added some intermittent failures.
08:35 Changeset [29465] by aroben@apple.com
  • platform/win/Skipped: Put back a failing test.
07:39 Changeset [29464] by mitz@apple.com

Reviewed by Adam Roben.

  • try to fix failure in fast/dom/Window/window-onFocus.html seen on the build bots
  • DumpRenderTree/win/DumpRenderTree.cpp: (resetWebViewToConsistentStateBeforeTesting): Focus the web view.
07:36 Changeset [29463] by ap@webkit.org

Re-added two tests that weren't failing for me, but fail on the buildbot.

  • platform/win/Skipped:
07:20 Changeset [29462] by ap@webkit.org

Added fast/frames/frame-name-reset.html, which crashes, and sometimes freezes buildbot.

  • platform/win/Skipped:
06:15 Changeset [29461] by ap@webkit.org

Removed some more tests, moved one to a better place.

  • platform/win/Skipped:
04:33 Changeset [29460] by ap@webkit.org

Remove a test that doesn't fail for me - let's see what the bot thinks.

  • platform/win/Skipped: Removed http/tests/xmlhttprequest/XMLHttpRequestException.html.
01:12 Changeset [29459] by ap@webkit.org

Reviewed by David Kilzer.

array.splice() with 1 element not working

Test: fast/js/array-splice.html

  • kjs/array_object.cpp: (KJS::ArrayProtoFuncSplice::callAsFunction): Implement this Mozilla extension, and fix some other edge cases.
Note: See TracTimeline for information about the timeline view.