Timeline



Jan 28, 2009:

11:38 PM Changeset in webkit [40353] by ggaren@apple.com
  • 9 edits in trunk

WebCore:

2009-01-28 Geoffrey Garen <ggaren@apple.com>

Reviewed by Sam Weinig.


Merged FrameLoadTypeReloadAllowingStaleData with FrameLoadTypeReload.


Technically, selecting View->Text Encoding->[Non-Default Encoding] on
a page with frames may now be slightly slower than it used to be. Oh well.

  • loader/FrameLoader.cpp: (WebCore::isBackForwardLoadType): (WebCore::FrameLoader::restoreDocumentState): Subbed in FrameLoadTypeReload.

(WebCore::FrameLoader::loadURLIntoChildFrame): No need to account for
non-back-forward navigations anymore.

(WebCore::FrameLoader::canCachePage):
(WebCore::FrameLoader::logCanCachePageDecision):
(WebCore::FrameLoader::reloadWithOverrideEncoding):
(WebCore::FrameLoader::transitionToCommitted):
(WebCore::FrameLoader::loadItem): Subbed in FrameLoadTypeReload.

  • loader/FrameLoader.h: Renamed reloadAllowingStaleData => reloadWithOverrideEncoding, since that's what it actually does.

WebKit/mac:

2009-01-28 Geoffrey Garen <ggaren@apple.com>

Reviewed by Sam Weinig.

Updated for WebCore rename.


  • WebView/WebView.mm: (-[WebView setCustomTextEncodingName:]):

WebKit/win:

2009-01-28 Geoffrey Garen <ggaren@apple.com>

Reviewed by Sam Weinig.

Updated for WebCore rename.


  • WebView.cpp: (WebView::setCustomTextEncodingName):
10:55 PM Changeset in webkit [40352] by hyatt@apple.com
  • 7 edits in trunk/WebCore

2009-01-28 David Hyatt <hyatt@apple.com>

Move hit testing and painting of lines from RenderFlow into RenderLineBoxList.

Reviewed by Oliver Hunt

  • rendering/RenderBlock.cpp: (WebCore::RenderBlock::paintContents): (WebCore::RenderBlock::hitTestContents):
  • rendering/RenderFlow.cpp:
  • rendering/RenderFlow.h:
  • rendering/RenderInline.cpp: (WebCore::RenderInline::paint): (WebCore::RenderInline::nodeAtPoint):
  • rendering/RenderLineBoxList.cpp: (WebCore::RenderLineBoxList::paint): (WebCore::RenderLineBoxList::hitTest):
  • rendering/RenderLineBoxList.h:
10:38 PM Changeset in webkit [40351] by mrowe@apple.com
  • 4 edits in trunk

Versioning.

10:24 PM Changeset in webkit [40350] by mrowe@apple.com
  • 1 copy in branches/Safari-6528

New branch.

9:59 PM Changeset in webkit [40349] by mrowe@apple.com
  • 4 edits in branches/Safari-3-2-branch

Versioning.

9:58 PM Changeset in webkit [40348] by mrowe@apple.com
  • 1 copy in tags/Safari-5525.28.2

New tag.

8:41 PM Changeset in webkit [40347] by hyatt@apple.com
  • 2 edits in trunk/WebCore

2009-01-28 David Hyatt <hyatt@apple.com>

Fix SVG pixel test regressions. I wish I could say that I understand this fix, but I don't. For
some reason the original code returned 0 for RenderSVGInlineText::yPos() and somehow my literal
replacement of yPos() with the body of that method changed the results. I am completely baffled,
but all SVG pixel tests pass again when I just take the code out.

Reviewed by Oliver Hunt

  • rendering/RenderSVGInlineText.cpp: (WebCore::RenderSVGInlineText::computeAbsoluteRectForRange):
7:53 PM Changeset in webkit [40346] by ddkilzer@apple.com
  • 2 edits in trunk/WebKit/mac

Add missing declaration for -[NSURL(WebNSURLExtras) _webkit_isFileURL]

Reviewed by Dan Bernstein.

  • Misc/WebNSURLExtras.h: (-[NSURL(WebNSURLExtras) _webkit_isFileURL]): Added missing declaration after the implementation was added in r9258.
6:24 PM Changeset in webkit [40345] by weinig@apple.com
  • 4 edits in trunk

JavaScriptCore:

2009-01-28 Sam Weinig <sam@webkit.org>

Reviewed by Gavin Barraclough.

Fix for <rdar://problem/6525537>
Hang occurs when closing Installer window (iTunes, Aperture)

JavaScriptGlue:

2009-01-28 Sam Weinig <sam@webkit.org>

Reviewed by Gavin Barraclough.

Fix for <rdar://problem/6525537>
Hang occurs when closing Installer window (iTunes, Aperture)

  • JSUtils.cpp: (getThreadGlobalObject): Use the shared JSGlobalData instance.
6:11 PM Changeset in webkit [40344] by hyatt@apple.com
  • 9 edits in trunk/WebCore

2009-01-28 David Hyatt <hyatt@apple.com>

Move dirtyLineBoxes from RenderFlow to RenderInline and RenderBlock.

Reviewed by Oliver Hunt

  • rendering/RenderBlock.cpp: (WebCore::RenderBlock::dirtyLineBoxes):
  • rendering/RenderBlock.h:
  • rendering/RenderFlow.cpp:
  • rendering/RenderFlow.h:
  • rendering/RenderInline.cpp: (WebCore::RenderInline::dirtyLineBoxes):
  • rendering/RenderInline.h:
  • rendering/RenderLineBoxList.cpp: (WebCore::RenderLineBoxList::dirtyLineBoxes):
  • rendering/RenderLineBoxList.h:
5:50 PM Changeset in webkit [40343] by hyatt@apple.com
  • 2 edits in trunk/WebCore

2009-01-28 David Hyatt <hyatt@apple.com>

Back out my change to scrollWidth/Height from an earlier checkin since it broke stuff. The current
behavior is not correct, but this will need to be investigated before being changed again.

  • rendering/RenderBox.cpp: (WebCore::RenderBox::scrollWidth): (WebCore::RenderBox::scrollHeight):
5:33 PM Changeset in webkit [40342] by hyatt@apple.com
  • 9 edits in trunk/WebCore

2009-01-28 David Hyatt <hyatt@apple.com>

Move paintOutline and paintOutlineWithLine from RenderFlow to RenderInline, since they only apply to inlines. Tighten up all of the code that
called paintOutline to use RenderInline as the type instead of RenderFlow.

Reviewed by cpst

  • rendering/InlineFlowBox.cpp: (WebCore::InlineFlowBox::paint):
  • rendering/RenderBlock.cpp: (WebCore::RenderBlock::paintObject): (WebCore::RenderBlock::addContinuationWithOutline): (WebCore::RenderBlock::paintContinuationOutlines):
  • rendering/RenderFlow.cpp: (WebCore::RenderFlow::paintLines):
  • rendering/RenderFlow.h:
  • rendering/RenderInline.cpp: (WebCore::RenderInline::paintOutline): (WebCore::RenderInline::paintOutlineForLine):
  • rendering/RenderInline.h:
  • rendering/RenderObject.cpp: (WebCore::RenderObject::paintOutline):
  • rendering/RenderObject.h: (WebCore::RenderObject::PaintInfo::PaintInfo):
4:49 PM Changeset in webkit [40341] by darin@chromium.org
  • 1 edit
    3 adds in trunk/LayoutTests

2009-01-28 Darin Fisher <darin@chromium.org>

Fixing bustage.

https://bugs.webkit.org/show_bug.cgi?id=18835
Add missing layout test results.

  • platform/mac/editing/spelling/spelling-linebreak-expected.checksum: Added.
  • platform/mac/editing/spelling/spelling-linebreak-expected.png: Added.
  • platform/mac/editing/spelling/spelling-linebreak-expected.txt: Added.
4:34 PM Changeset in webkit [40340] by mrowe@apple.com
  • 4 edits in trunk

Versioning.

4:26 PM Changeset in webkit [40339] by weinig@apple.com
  • 2 edits in trunk/JavaScriptCore

2009-01-28 Sam Weinig <sam@webkit.org>

Reviewed by Geoff Garen.

Initial patch by Mark Rowe.

<rdar://problem/6519356>
REGRESSION (r36006): "out of memory" alert running dromaeo on Windows

Report the cost of the ArrayStorage vector more accurately/often.

  • runtime/JSArray.cpp: (JSC::JSArray::JSArray): Report the extra cost even for a filled array because JSString using the single character optimization and immediates wont increase the cost themselves. (JSC::JSArray::putSlowCase): Update the cost when increasing the size of the array. (JSC::JSArray::increaseVectorLength): Ditto.
4:11 PM Changeset in webkit [40338] by mrowe@apple.com
  • 1 copy in tags/Safari-6528.11

New tag.

4:01 PM Changeset in webkit [40337] by darin@chromium.org
  • 2 edits in trunk/WebCore

2009-01-28 Darin Fisher <darin@chromium.org>

Reviewed by Eric Seidel.

https://bugs.webkit.org/show_bug.cgi?id=23596
XMLHttpRequest.cpp no longer compiles without USE(JSC)

3:59 PM Changeset in webkit [40336] by darin@chromium.org
  • 2 edits in trunk/WebCore

2009-01-28 Darin Fisher <darin@chromium.org>

Reviewed by Darin Adler.

https://bugs.webkit.org/show_bug.cgi?id=23597
Make it possible to compile Database.cpp when USE(JSC) is not defined

  • storage/Database.cpp: (WebCore::Database::Database):
3:49 PM Changeset in webkit [40335] by mitz@apple.com
  • 2 edits in trunk/WebCore

Reviewed by Darin Adler.

  • fix <rdar://problem/6077047> REGRESSION (r34544): Custom icon does not appear in address field on first visit to any site
  • loader/icon/IconLoader.cpp: (WebCore::IconLoader::finishLoading): Changed to set the icon data only after establishing a mapping from the page URL(s) to the icon. Doing things the other way around resulted in the data not being cached in the icon-URL to IconRecord map (because there was no interested page at the time) and subsequently having to be fetched asynchronously from the database when the page-to-icon mapping was established.
3:44 PM Changeset in webkit [40334] by hyatt@apple.com
  • 7 edits in trunk/WebCore

2009-01-28 David Hyatt <hyatt@apple.com>

Move addFocusRingRects from RenderFlow down into RenderBlock and RenderInline.

Reviewed by Oliver Hunt

  • rendering/RenderBlock.cpp: (WebCore::RenderBlock::addFocusRingRects):
  • rendering/RenderBlock.h:
  • rendering/RenderFlow.cpp:
  • rendering/RenderFlow.h:
  • rendering/RenderInline.cpp: (WebCore::RenderInline::addFocusRingRects):
  • rendering/RenderInline.h:
3:18 PM Changeset in webkit [40333] by hyatt@apple.com
  • 5 edits in trunk/WebCore

2009-01-28 David Hyatt <hyatt@apple.com>

Move localCaretRect from RenderFlow into RenderBlock, since it only applied to blocks anyway and
was misplaced from the start.

Reviewed by anttik

  • rendering/RenderBlock.cpp: (WebCore::RenderBlock::localCaretRect):
  • rendering/RenderBlock.h:
  • rendering/RenderFlow.cpp:
  • rendering/RenderFlow.h:
2:54 PM Changeset in webkit [40332] by weinig@apple.com
  • 13 edits
    3 adds in trunk

JavaScriptCore:

2009-01-28 Sam Weinig <sam@webkit.org>

Reviewed by Geoff Garen.

Fix for <rdar://problem/6129678>
REGRESSION (Safari 3-4): Local variable not accessible from Dashcode console or variables view

Iterating the properties of activation objects accessed through the WebKit debugging
APIs was broken by forced conversion of JSActivation to the global object. To fix this,
we use a proxy activation object that acts more like a normal JSObject.

  • debugger/DebuggerActivation.cpp: Added. (JSC::DebuggerActivation::DebuggerActivation): (JSC::DebuggerActivation::mark): (JSC::DebuggerActivation::className): (JSC::DebuggerActivation::getOwnPropertySlot): (JSC::DebuggerActivation::put): (JSC::DebuggerActivation::putWithAttributes): (JSC::DebuggerActivation::deleteProperty): (JSC::DebuggerActivation::getPropertyNames): (JSC::DebuggerActivation::getPropertyAttributes): (JSC::DebuggerActivation::defineGetter): (JSC::DebuggerActivation::defineSetter): (JSC::DebuggerActivation::lookupGetter): (JSC::DebuggerActivation::lookupSetter):
  • debugger/DebuggerActivation.h: Added. Proxy JSActivation object for Debugging.
  • runtime/JSActivation.h: (JSC::JSActivation::isActivationObject): Added.
  • runtime/JSObject.h: (JSC::JSObject::isActivationObject): Added.

WebCore:

2009-01-28 Sam Weinig <sam@webkit.org>

Reviewed by Geoff Garen.

Add forwarding header.

  • ForwardingHeaders/debugger/DebuggerActivation.h: Added.

WebKit/mac:

2009-01-28 Sam Weinig <sam@webkit.org>

Reviewed by Geoff Garen.

Fix for <rdar://problem/6129678>
REGRESSION (Safari 3-4): Local variable not accessible from Dashcode console or variables view

  • WebView/WebScriptDebugDelegate.mm: (-[WebScriptCallFrame scopeChain]): Wrap JSActivations in DebuggerActivations.
2:47 PM Changeset in webkit [40331] by ggaren@apple.com
  • 1 edit
    49 adds in trunk/LayoutTests

2009-01-28 Geoffrey Garen <ggaren@apple.com>

Reviewed by Sam Weinig.


Added layout tests for how many history items are created during a
redirect. (Many of these results are expected failures for now.)

  • http/tests/history: Added.
  • http/tests/history/redirect-200-refresh-0-seconds-expected.txt: Added.
  • http/tests/history/redirect-200-refresh-0-seconds.pl: Added.
  • http/tests/history/redirect-200-refresh-2-seconds-expected.txt: Added.
  • http/tests/history/redirect-200-refresh-2-seconds.pl: Added.
  • http/tests/history/redirect-301-expected.txt: Added.
  • http/tests/history/redirect-301.pl: Added.
  • http/tests/history/redirect-302-expected.txt: Added.
  • http/tests/history/redirect-302.pl: Added.
  • http/tests/history/redirect-303-expected.txt: Added.
  • http/tests/history/redirect-303.pl: Added.
  • http/tests/history/redirect-307-expected.txt: Added.
  • http/tests/history/redirect-307.pl: Added.
  • http/tests/history/redirect-js-document-location-0-seconds-expected.txt: Added.
  • http/tests/history/redirect-js-document-location-0-seconds.html: Added.
  • http/tests/history/redirect-js-document-location-2-seconds-expected.txt: Added.
  • http/tests/history/redirect-js-document-location-2-seconds.html: Added.
  • http/tests/history/redirect-js-document-location-before-load-expected.txt: Added.
  • http/tests/history/redirect-js-document-location-before-load.html: Added.
  • http/tests/history/redirect-js-location-0-seconds-expected.txt: Added.
  • http/tests/history/redirect-js-location-0-seconds.html: Added.
  • http/tests/history/redirect-js-location-2-seconds-expected.txt: Added.
  • http/tests/history/redirect-js-location-2-seconds.html: Added.
  • http/tests/history/redirect-js-location-assign-0-seconds-expected.txt: Added.
  • http/tests/history/redirect-js-location-assign-0-seconds.html: Added.
  • http/tests/history/redirect-js-location-assign-2-seconds-expected.txt: Added.
  • http/tests/history/redirect-js-location-assign-2-seconds.html: Added.
  • http/tests/history/redirect-js-location-assign-before-load-expected.txt: Added.
  • http/tests/history/redirect-js-location-assign-before-load.html: Added.
  • http/tests/history/redirect-js-location-before-load-expected.txt: Added.
  • http/tests/history/redirect-js-location-before-load.html: Added.
  • http/tests/history/redirect-js-location-href-0-seconds-expected.txt: Added.
  • http/tests/history/redirect-js-location-href-0-seconds.html: Added.
  • http/tests/history/redirect-js-location-href-2-seconds-expected.txt: Added.
  • http/tests/history/redirect-js-location-href-2-seconds.html: Added.
  • http/tests/history/redirect-js-location-href-before-load-expected.txt: Added.
  • http/tests/history/redirect-js-location-href-before-load.html: Added.
  • http/tests/history/redirect-js-location-replace-0-seconds-expected.txt: Added.
  • http/tests/history/redirect-js-location-replace-0-seconds.html: Added.
  • http/tests/history/redirect-js-location-replace-2-seconds-expected.txt: Added.
  • http/tests/history/redirect-js-location-replace-2-seconds.html: Added.
  • http/tests/history/redirect-js-location-replace-before-load-expected.txt: Added.
  • http/tests/history/redirect-js-location-replace-before-load.html: Added.
  • http/tests/history/redirect-meta-refresh-0-seconds-expected.txt: Added.
  • http/tests/history/redirect-meta-refresh-0-seconds.html: Added.
  • http/tests/history/redirect-meta-refresh-2-seconds-expected.txt: Added.
  • http/tests/history/redirect-meta-refresh-2-seconds.html: Added.
  • http/tests/history/resources: Added.
  • http/tests/history/resources/redirect-target.html: Added.
2:43 PM Changeset in webkit [40330] by ggaren@apple.com
  • 2 edits in trunk/WebKitTools

2009-01-28 Geoffrey Garen <ggaren@apple.com>

Build fix for GTK.

  • DumpRenderTree/gtk/LayoutTestControllerGtk.cpp: (LayoutTestController::webHistoryItemCount):
2:36 PM Changeset in webkit [40329] by ggaren@apple.com
  • 5 edits in trunk/WebKitTools

2009-01-28 Geoffrey Garen <ggaren@apple.com>

Reviewed by Sam Weinig.


Added support for querying how many history items were created during a
layout test.

  • DumpRenderTree/LayoutTestController.cpp: (getWebHistoryItemCountCallback): (LayoutTestController::staticValues):
  • DumpRenderTree/LayoutTestController.h:
  • DumpRenderTree/mac/LayoutTestControllerMac.mm: (LayoutTestController::webHistoryItemCount):
  • DumpRenderTree/win/LayoutTestControllerWin.cpp: (LayoutTestController::webHistoryItemCount):
2:35 PM Changeset in webkit [40328] by hyatt@apple.com
  • 1 edit in trunk/WebCore/WebCore.xcodeproj/project.pbxproj

Fix build bustage.

1:58 PM Changeset in webkit [40327] by hyatt@apple.com
  • 1 edit in trunk/WebCore/rendering/RenderLineBoxList.h

Fix build bustage in release builds.

1:48 PM Changeset in webkit [40326] by hyatt@apple.com
  • 8 edits in trunk/WebCore

2009-01-28 David Hyatt <hyatt@apple.com>

Move createInlineBox out of RenderFlow and down into RenderInline and RenderBlock.

Reviewed by Beth Dakin

  • rendering/RenderBlock.cpp: (WebCore::RenderBlock::createInlineBox):
  • rendering/RenderBlock.h:
  • rendering/RenderFlow.cpp:
  • rendering/RenderFlow.h:
  • rendering/RenderInline.cpp: (WebCore::RenderInline::createInlineBox):
  • rendering/RenderInline.h:
  • rendering/bidi.cpp:
1:18 PM Changeset in webkit [40325] by adachan@apple.com
  • 4 edits in branches/Safari-3-2-branch/WebCore

Merge the rest of r33579.

Reviewed by Steve Falkenburg.

  • platform/network/cf/ResourceHandleCFNet.cpp: (WebCore::makeFinalRequest):
  • platform/network/cf/ResourceRequestCFNet.cpp: (WebCore::ResourceRequest::doUpdatePlatformRequest):
  • platform/network/win/CookieJarWin.cpp: (WebCore::setCookies): (WebCore::cookies): (WebCore::cookiesEnabled):
12:56 PM Changeset in webkit [40324] by hyatt@apple.com
  • 5 edits in trunk/WebCore

2009-01-28 David Hyatt <hyatt@apple.com>

Move calcMargins from RenderFlow to RenderInline, since it was only ever called on RenderInlines.

Reviewed by Oliver Hunt

  • rendering/RenderFlow.cpp:
  • rendering/RenderFlow.h:
  • rendering/RenderInline.h: (WebCore::RenderInline::calcMargins):
  • rendering/bidi.cpp: (WebCore::RenderBlock::layoutInlineChildren):
12:48 PM Changeset in webkit [40323] by hyatt@apple.com
  • 16 edits
    2 adds in trunk/WebCore

2009-01-28 David Hyatt <hyatt@apple.com>

Refactor the first and last line box member variables from RenderFlow. Encapsulate them into a new class called RenderLineBoxList that manages all modifications to
the list. This change will make it easier to give RenderInline and RenderBlock separate versions of the line box list without having to duplicate very much code.

Reviewed by Oliver Hunt

  • GNUmakefile.am:
  • WebCore.pro:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • WebCoreSources.bkl:
  • rendering/InlineFlowBox.cpp: (WebCore::InlineFlowBox::deleteLine): (WebCore::InlineFlowBox::removeLineBoxFromRenderObject): (WebCore::InlineFlowBox::extractLine): (WebCore::InlineFlowBox::extractLineBoxFromRenderObject): (WebCore::InlineFlowBox::attachLine): (WebCore::InlineFlowBox::attachLineBoxToRenderObject):
  • rendering/InlineFlowBox.h:
  • rendering/RenderBlock.cpp: (WebCore::RenderBlock::deleteLineBoxTree):
  • rendering/RenderFlow.cpp: (WebCore::RenderFlow::destroy): (WebCore::RenderFlow::dirtyLineBoxes): (WebCore::RenderFlow::createInlineBox):
  • rendering/RenderFlow.h: (WebCore::RenderFlow::RenderFlow): (WebCore::RenderFlow::lineBoxes): (WebCore::RenderFlow::firstLineBox): (WebCore::RenderFlow::lastLineBox):
  • rendering/RenderLineBoxList.cpp: Added. (WebCore::RenderLineBoxList::~RenderLineBoxList): (WebCore::RenderLineBoxList::appendLineBox): (WebCore::RenderLineBoxList::deleteLineBoxTree): (WebCore::RenderLineBoxList::extractLineBox): (WebCore::RenderLineBoxList::attachLineBox): (WebCore::RenderLineBoxList::removeLineBox): (WebCore::RenderLineBoxList::deleteLineBoxes): (WebCore::RenderLineBoxList::checkConsistency):
  • rendering/RenderLineBoxList.h: Added. (WebCore::RenderLineBoxList::RenderLineBoxList): (WebCore::RenderLineBoxList::firstLineBox): (WebCore::RenderLineBoxList::lastLineBox): (WebCore::RenderLineBoxList::checkConsistency):
  • rendering/RenderSVGInline.cpp: (WebCore::RenderSVGInline::createInlineBox):
  • rendering/RenderSVGText.cpp: (WebCore::RenderSVGText::createInlineBox):
  • rendering/RootInlineBox.cpp: (WebCore::RootInlineBox::removeLineBoxFromRenderObject): (WebCore::RootInlineBox::extractLineBoxFromRenderObject): (WebCore::RootInlineBox::attachLineBoxToRenderObject):
  • rendering/RootInlineBox.h:
  • rendering/bidi.cpp: (WebCore::RenderBlock::layoutInlineChildren):
12:46 PM Changeset in webkit [40322] by ddkilzer@apple.com
  • 3 edits in trunk/WebCore

Clean up FontPlatformData constructor

Reviewed by David Hyatt.

  • platform/graphics/mac/FontPlatformData.h: Updated copyright. (WebCore::FontPlatformData::FontPlatformData): Provide readable names for constructor arguments and reformat member variables.
  • platform/graphics/mac/FontPlatformDataMac.mm: Updated copyright. (WebCore::FontPlatformData::FontPlatformData): Provide readable names for constructor arguments and reformat member variables.
12:37 PM Changeset in webkit [40321] by darin@chromium.org
  • 3 edits in trunk/WebCore

2009-01-28 Tony Chang <tony@chromium.org>

Reviewed by David Hyatt.

https://bugs.webkit.org/show_bug.cgi?id=23593
Compile fixes for RenderThemeChromiumMac and RenderThemeChromiumWin.
This is a follow up for hyatt's RenderBox changes.

  • rendering/RenderThemeChromiumMac.mm: (WebCore::RenderThemeChromiumMac::baselinePosition):
  • rendering/RenderThemeChromiumWin.cpp: (WebCore::RenderThemeChromiumWin::paintMenuList):
12:26 PM Changeset in webkit [40320] by ddkilzer@apple.com
  • 2 edits in trunk

Fixed ChangeLog dates.

12:07 PM Changeset in webkit [40319] by ddkilzer@apple.com
  • 6 edits in trunk

Bug 23490: Remove initialRefCount argument from RefCounted class

<https://bugs.webkit.org/show_bug.cgi?id=23490>

Reviewed by Darin Adler.

JavaScriptCore:

RefCountedBase now always starts with a ref count of 1, so there
is no need to pass the initialRefCount into the class anymore.

  • wtf/ByteArray.h: (WTF::ByteArray::ByteArray): Removed call to RefCounted(1).
  • wtf/RefCounted.h: (WTF::RefCountedBase::RefCountedBase): Changed to start with a ref count of 1. (WTF::RefCounted::RefCounted): Removed initialRefCount argument and removed call to RefCounted(1).

WebKit/wx:

FrameLoaderClientWx is no longer a RefCounted class.

  • WebKitSupport/FrameLoaderClientWx.cpp: (WebCore::FrameLoaderClientWx::FrameLoaderClientWx): Removed call to the RefCounted<FrameLoaderClientWx>(0) super constructor.
  • WebKitSupport/FrameLoaderClientWx.h: Don't include RefCounted.h and stop inheriting from RefCounted<FrameLoaderClientWx>.
11:40 AM Changeset in webkit [40318] by Simon Fraser
  • 5 edits
    8 adds in trunk

2009-01-28 Simon Fraser <Simon Fraser>

Reviewed by Dave Hyatt

https://bugs.webkit.org/show_bug.cgi?id=23582

Fix assertions when inline elements have both opacity (or something
else that creates a RenderLayer), and transform by ensuring that
setHasTransform() is only called for non-inline or replaced elements.
We also have to ensure that RenderReplicas will get transforms applied
to them by lying about them being replaced.

Tests: fast/transforms/transform-on-inline.html

fast/transforms/transform-table-row.html

  • rendering/RenderBox.cpp: (WebCore::RenderBox::styleDidChange):
  • rendering/RenderReplica.cpp: (WebCore::RenderReplica::RenderReplica):
  • rendering/RenderTableRow.h: (WebCore::RenderTableRow::requiresLayer):
11:38 AM Changeset in webkit [40317] by darin@chromium.org
  • 3 edits
    1 add in trunk

2009-01-28 Hironori Bono <hbono@chromium.org>

Reviewed by Justin Garcia.

https://bugs.webkit.org/show_bug.cgi?id=18835
Spelling underlines disappear when they shouldn't

The WebCore::InsertLineBreakCommand::doApply() function splits a text node
without copying existing markers. To fix this bug, change code which
manually splits a text node into a CompositeEditCommand::splitTextNode() call.

Test: editing/spelling/spelling-linebreak.html

  • editing/InsertLineBreakCommand.cpp: (WebCore::InsertLineBreakCommand::doApply):
11:31 AM Changeset in webkit [40316] by hyatt@apple.com
  • 9 edits in trunk/WebCore

2009-01-28 David Hyatt <hyatt@apple.com>

Move the m_lineHeight member variable out of RenderFlow and down into RenderBlock and RenderInline. Shift the line height computation into RenderStyle so
that it isn't repeated in three places.

Reviewed by Sam Weinig

  • rendering/RenderBlock.cpp: (WebCore::RenderBlock::RenderBlock): (WebCore::RenderBlock::lineHeight):
  • rendering/RenderBlock.h:
  • rendering/RenderFlow.cpp:
  • rendering/RenderFlow.h: (WebCore::RenderFlow::RenderFlow):
  • rendering/RenderInline.cpp: (WebCore::RenderInline::RenderInline): (WebCore::RenderInline::lineHeight):
  • rendering/RenderInline.h:
  • rendering/RenderObject.cpp: (WebCore::RenderObject::lineHeight):
  • rendering/style/RenderStyle.h: (WebCore::InheritedFlags::computedLineHeight):
11:19 AM Changeset in webkit [40315] by darin@chromium.org
  • 4 edits in trunk/WebCore

2009-01-28 Zachary Kuznia <zork@chromiuum.org>

Reviewed by Sam Weinig.

https://bugs.webkit.org/show_bug.cgi?id=22070
Add an option to allow scripts to close windows.

  • page/Settings.cpp: (WebCore::Settings::Settings): (WebCore::Settings::setAllowScriptsToCloseWindows):
  • page/Settings.h: (WebCore::Settings::allowScriptsToCloseWindows):
10:52 AM Changeset in webkit [40314] by darin@chromium.org
  • 2 edits in trunk/WebCore

2009-01-28 Adam Langley <agl@google.com>

Reviewed by Sam Weinig.

https://bugs.webkit.org/show_bug.cgi?id=23573
Make PlatformWidget on chromium an intptr_t to match changes made in Chromium

  • platform/chromium/PlatformWidget.h:
9:39 AM Changeset in webkit [40313] by hyatt@apple.com
  • 2 edits in trunk/WebCore

2009-01-28 David Hyatt <hyatt@apple.com>

Fix for

<rdar://problem/6531287> REGRESSION: CrashTracer: [USER] 12 crashes in Safari at com.apple.WebCore • WebCore::RenderBlock::removeFloatingObject + 59

My tightening up of markAllDescendantsWithFloatsForLayout exposed a buggy check in that code that could
lead to a bad cast.

  • rendering/RenderBlock.cpp: (WebCore::RenderBlock::markAllDescendantsWithFloatsForLayout):
9:30 AM Changeset in webkit [40312] by hyatt@apple.com
  • 29 edits in trunk/WebCore

2009-01-27 David Hyatt <hyatt@apple.com>

https://bugs.webkit.org/show_bug.cgi?id=23576

Work towards eliminating RenderFlow from the tree.


Move the m_continuation variable down from RenderFlow into RenderInline and RenderBlock. Since a block can only have an inline continuation following it, the type
of the member and methods reflect this (inlineContinuation() and m_inlineContinuation). Since an inline can have either a block or an inline continuation following it,
a base class of RenderBox* is used for the type of object returned (in anticipation of the removal of RenderFlow).


Since moving the continuation variable down into the subclasses increased the size of RenderInline and RenderBlock by 4 bytes, this patch also moves all of the bitfield
members of RenderFlow up to RenderObject. Since they fit within the available bits on RenderObject, this patch actually results in a net savings of 4 bytes on RenderInlines
and RenderBlocks!


One bitfield member was eliminated rather than moved: m_firstLine. This was really more of a state variable used during line layout only, so I removed it as a member
and just passed firstLine down to various methods as needed. Doing so uncovered some potential bugs where the first line state was not being respected when querying for
line offsets.

Continuations have been completely hidden from all files except for RenderFlow, RenderBlock and RenderInline. All of the code that referenced continuations directly
from base classes has been refactored to use virtual methods on RenderBlock and RenderInline instead.


RenderFlow still has a common addChildWithContinuation method that is used by both blocks and inlines. Since refactoring that method will be pretty tricky, I've held
off on that for a later patch.

Reviewed by Oliver Hunt

  • html/HTMLAnchorElement.cpp: (WebCore::HTMLAnchorElement::isKeyboardFocusable):
  • page/AccessibilityRenderObject.cpp: (WebCore::AccessibilityRenderObject::anchorElement): (WebCore::AccessibilityRenderObject::boundingBoxRect):
  • rendering/InlineFlowBox.cpp: (WebCore::InlineFlowBox::determineSpacingForFlowBoxes): (WebCore::InlineFlowBox::paint):
  • rendering/RenderBlock.cpp: (WebCore::RenderBlock::RenderBlock): (WebCore::RenderBlock::~RenderBlock): (WebCore::RenderBlock::destroy): (WebCore::RenderBlock::addChildToFlow): (WebCore::RenderBlock::makeChildrenNonInline): (WebCore::RenderBlock::removeChild): (WebCore::RenderBlock::layoutBlock): (WebCore::RenderBlock::expandsToEncloseOverhangingFloats): (WebCore::RenderBlock::collapseMargins): (WebCore::RenderBlock::determineHorizontalPosition): (WebCore::RenderBlock::setCollapsedBottomMargin): (WebCore::RenderBlock::layoutOnlyPositionedObjects): (WebCore::RenderBlock::paintObject): (WebCore::RenderBlock::addContinuationWithOutline): (WebCore::RenderBlock::setSelectionState): (WebCore::RenderBlock::shouldPaintSelectionGaps): (WebCore::RenderBlock::fillSelectionGaps): (WebCore::RenderBlock::leftSelectionOffset): (WebCore::RenderBlock::rightSelectionOffset): (WebCore::RenderBlock::leftOffset): (WebCore::RenderBlock::leftRelOffset): (WebCore::RenderBlock::rightOffset): (WebCore::RenderBlock::rightRelOffset): (WebCore::RenderBlock::lineWidth): (WebCore::RenderBlock::lowestPosition): (WebCore::RenderBlock::rightmostPosition): (WebCore::RenderBlock::leftmostPosition): (WebCore::RenderBlock::getClearDelta): (WebCore::RenderBlock::nodeAtPoint): (WebCore::RenderBlock::offsetForContents): (WebCore::RenderBlock::availableWidth): (WebCore::RenderBlock::setDesiredColumnCountAndWidth): (WebCore::RenderBlock::desiredColumnWidth): (WebCore::RenderBlock::desiredColumnCount): (WebCore::RenderBlock::columnRects): (WebCore::RenderBlock::layoutColumns): (WebCore::RenderBlock::adjustPointToColumnContents): (WebCore::RenderBlock::adjustRectForColumns): (WebCore::RenderBlock::absoluteRects): (WebCore::RenderBlock::absoluteQuads): (WebCore::RenderBlock::rectWithOutlineForRepaint): (WebCore::RenderBlock::hoverAncestor): (WebCore::RenderBlock::updateDragState): (WebCore::RenderBlock::outlineStyleForRepaint): (WebCore::RenderBlock::childBecameNonInline): (WebCore::RenderBlock::updateHitTestResult):
  • rendering/RenderBlock.h: (WebCore::RenderBlock::rightOffset): (WebCore::RenderBlock::leftOffset): (WebCore::RenderBlock::inlineContinuation): (WebCore::RenderBlock::setInlineContinuation):
  • rendering/RenderBox.cpp: (WebCore::RenderBox::absoluteRects): (WebCore::RenderBox::absoluteQuads): (WebCore::RenderBox::addFocusRingRects): (WebCore::RenderBox::containingBlockWidth):
  • rendering/RenderBox.h: (WebCore::RenderBox::collapsedMarginBottom): (WebCore::RenderBox::childBecameNonInline):
  • rendering/RenderContainer.cpp: (WebCore::RenderContainer::updateBeforeAfterContentForContainer): (WebCore::RenderContainer::removeLeftoverAnonymousBlock):
  • rendering/RenderFlexibleBox.cpp: (WebCore::RenderFlexibleBox::layoutVerticalBox):
  • rendering/RenderFlow.cpp: (WebCore::nextContinuation): (WebCore::RenderFlow::continuationBefore): (WebCore::RenderFlow::addChildWithContinuation): (WebCore::RenderFlow::addChild): (WebCore::RenderFlow::destroy): (WebCore::RenderFlow::addFocusRingRects):
  • rendering/RenderFlow.h: (WebCore::RenderFlow::RenderFlow):
  • rendering/RenderInline.cpp: (WebCore::RenderInline::RenderInline): (WebCore::RenderInline::destroy): (WebCore::RenderInline::inlineContinuation): (WebCore::RenderInline::styleDidChange): (WebCore::RenderInline::addChildToFlow): (WebCore::RenderInline::cloneInline): (WebCore::RenderInline::splitInlines): (WebCore::RenderInline::splitFlow): (WebCore::RenderInline::positionForCoordinates): (WebCore::RenderInline::rectWithOutlineForRepaint): (WebCore::RenderInline::updateDragState): (WebCore::RenderInline::childBecameNonInline): (WebCore::RenderInline::updateHitTestResult):
  • rendering/RenderInline.h: (WebCore::RenderInline::isRenderInline): (WebCore::RenderInline::continuation): (WebCore::RenderInline::setContinuation):
  • rendering/RenderListItem.cpp: (WebCore::RenderListItem::positionListMarker):
  • rendering/RenderListMarker.cpp: (WebCore::RenderListMarker::RenderListMarker): (WebCore::RenderListMarker::setSelectionState):
  • rendering/RenderListMarker.h:
  • rendering/RenderObject.cpp: (WebCore::RenderObject::RenderObject): (WebCore::RenderObject::repaintAfterLayoutIfNeeded): (WebCore::RenderObject::rectWithOutlineForRepaint): (WebCore::RenderObject::handleDynamicFloatPositionChange): (WebCore::RenderObject::updateDragState): (WebCore::RenderObject::updateHitTestResult): (WebCore::RenderObject::getTextDecorationColors): (WebCore::RenderObject::adjustRectForOutlineAndShadow):
  • rendering/RenderObject.h: (WebCore::RenderObject::isInlineBlockOrInlineTable): (WebCore::RenderObject::childrenInline): (WebCore::RenderObject::setChildrenInline): (WebCore::RenderObject::hasColumns): (WebCore::RenderObject::setHasColumns): (WebCore::RenderObject::cellWidthChanged): (WebCore::RenderObject::setCellWidthChanged): (WebCore::RenderObject::isInlineContinuation): (WebCore::RenderObject::hoverAncestor): (WebCore::RenderObject::outlineStyleForRepaint): (WebCore::RenderObject::setHasMarkupTruncation): (WebCore::RenderObject::hasMarkupTruncation): (WebCore::RenderObject::selectionState): (WebCore::RenderObject::setSelectionState): (WebCore::RenderObject::hasSelectedChildren): (WebCore::RenderObject::isTopMarginQuirk): (WebCore::RenderObject::isBottomMarginQuirk): (WebCore::RenderObject::setTopMarginQuirk): (WebCore::RenderObject::setBottomMarginQuirk):
  • rendering/RenderReplaced.cpp: (WebCore::RenderReplaced::RenderReplaced): (WebCore::RenderReplaced::setSelectionState):
  • rendering/RenderReplaced.h: (WebCore::RenderReplaced::canBeSelectionLeaf):
  • rendering/RenderTable.cpp: (WebCore::RenderTable::calcWidth):
  • rendering/RenderTableCell.cpp: (WebCore::RenderTableCell::updateWidth): (WebCore::RenderTableCell::layout):
  • rendering/RenderText.cpp: (WebCore::RenderText::RenderText): (WebCore::RenderText::localCaretRect): (WebCore::RenderText::setSelectionState):
  • rendering/RenderText.h: (WebCore::RenderText::canBeSelectionLeaf):
  • rendering/RenderView.cpp: (WebCore::RenderView::updateHitTestResult):
  • rendering/RenderView.h:
  • rendering/RootInlineBox.cpp: (WebCore::RootInlineBox::selectionTop):
  • rendering/bidi.cpp: (WebCore::RenderBlock::createLineBoxes): (WebCore::RenderBlock::constructLine): (WebCore::RenderBlock::computeHorizontalPositionsForLine): (WebCore::RenderBlock::layoutInlineChildren): (WebCore::RenderBlock::determineStartPosition): (WebCore::RenderBlock::skipTrailingWhitespace): (WebCore::RenderBlock::skipLeadingWhitespace): (WebCore::RenderBlock::fitBelowFloats): (WebCore::RenderBlock::findNextLineBreak): (WebCore::RenderBlock::checkLinesForTextOverflow):
8:39 AM Changeset in webkit [40311] by treat@webkit.org
  • 9 edits in trunk

Reviewed by Nikolas Zimmermann and George Staikos.

https://bugs.webkit.org/show_bug.cgi?id=23557
Allow option of hit testing frame content without clipping to the visible
viewport.

8:26 AM Changeset in webkit [40310] by Simon Hausmann
  • 2 edits in trunk/WebCore

2009-01-28 Simon Hausmann <simon.hausmann@nokia.com>

Reviewed by Holger Freyther.

Fix the build with Qt on Windows.

Make sure that the QTWEBKIT_EXPORT macro becomes the Q_DECL_EXPORT macro
instead of the import macro when building the dll, by defining
QT_MAKEDLL.

SystemTimeWin.cpp is needed on Windows for userIdleTime(), which for the
other Qt platforms comes from TemporaryLinkStubs.cpp.

5:42 AM Changeset in webkit [40309] by ariya@webkit.org
  • 2 edits in trunk/WebKit/qt

2009-01-28 Ariya Hidayat <ariya.hidayat@trolltech.com>

Rubber-stamped by Simon Hausmann.

Provide default implementations of JavaScript dialog boxes like in
most web browsers, i.e. indicate that is from JavaScript and show the
frame URL.

  • Api/qwebpage.cpp: (QWebPage::javaScriptAlert): (QWebPage::javaScriptConfirm): (QWebPage::javaScriptPrompt):
5:19 AM Changeset in webkit [40308] by ariya@webkit.org
  • 2 edits in trunk/WebCore

2009-01-28 Ariya Hidayat <ariya.hidayat@trolltech.com>

Reviewed by Simon Hausmann.

[Qt] Speed-up clipping: avoid calling expensive QPainter::clipRegion().
Beside, the check is not necessary since QPainter::setClipRect() will
work just fine if there is no clip region yet.

  • platform/graphics/qt/GraphicsContextQt.cpp: (WebCore::GraphicsContext::clip):
12:19 AM Changeset in webkit [40307] by darin@chromium.org
  • 2 edits
    2 adds in trunk/WebCore

2009-01-28 Darin Fisher <darin@chromium.org>

Reviewed by Darin Adler.

https://bugs.webkit.org/show_bug.cgi?id=23546
Upstream GoogleURL implementation of KURL

  • platform/KURL.h:
  • platform/KURLGoogle.cpp: Added.
  • platform/KURLGooglePrivate.h: Added.

Jan 27, 2009:

8:08 PM Changeset in webkit [40306] by andersca@apple.com
  • 2 edits in trunk/WebKit/mac

2009-01-27 Anders Carlsson <andersca@apple.com>

Reviewed by Oliver Hunt.

Fix two bugs with Core Animation based plug-ins.


  1. The plug-in view was marked as opaque even though it's not. (This would leave garbage in the plug-in view).
  2. The plug-in layer needs to have autoresizing turned on.


  • Plugins/WebNetscapePluginView.mm: (-[WebNetscapePluginView setLayer:]):
5:54 PM Changeset in webkit [40305] by Darin Adler
  • 2 edits in trunk/WebCore

2009-01-27 Darin Adler <Darin Adler>

Reviewed by Sam Weinig.

REGRESSION (r40234): Launching iTunes from a link displays a
"Safari can't find the Internet plug-in" sheet in Safari
rdar://problem/6533678

  • rendering/RenderPartObject.cpp: (WebCore::havePlugin): Put the check for empty string in here. (WebCore::serviceTypeForClassId): Only return activeXType() if we have a plug-in that can handle that type. While it might be logical to return an Active X type for any <object> with a classId in it, even if we don't have a plug-in that implements Active X, existing clients, such as Safari, don't expect that.
5:10 PM Changeset in webkit [40304] by mitz@apple.com
  • 2 edits in trunk/WebCore

Reviewed by Steve Falkenburg.

  • fix <rdar://problem/6524351> Text looks bad when font smoothing is forced off
  • platform/graphics/win/FontCGWin.cpp: (WebCore::Font::drawGlyphs): Changed to use GDI rather than Core Graphics if the client has turned font smoothing off.
3:05 PM Changeset in webkit [40303] by Simon Fraser
  • 17 edits in trunk/WebCore

2009-01-27 Simon Fraser <Simon Fraser>

Reviewed by Dave Hyatt

https://bugs.webkit.org/show_bug.cgi?id=23360

Use the new container-relative repaint methods to compute
post-layout repaints, and repaints using RenderLayer's
cached repaintRect() relative to that container, rather than
using absolute coords.

Replaced lots of boilerplate old/new rect code in various
layout methods with a stack-based LayoutRepainter class, and
fixed a bug in RenderTable which set didFullRepaint to
'true' every time.

2:40 PM Changeset in webkit [40302] by beidson@apple.com
  • 6 edits in trunk/WebCore

2009-01-27 Brady Eidson <beidson@apple.com>

Reviewed by Darin Adler

<rdar://problem/3541409> - More groundwork and cleanup for CachedFrames

  • history/CachedFrame.cpp: (WebCore::CachedFrame::CachedFrame): Make the savePlatformDataToCachedFrame() client call here, and add the code for caching subframes. (WebCore::CachedFrame::clear):
  • history/CachedFrame.h: Change to be RefCounted (WebCore::CachedFrame::create): (WebCore::CachedFrame::url):
  • history/CachedPage.cpp: (WebCore::CachedPage::CachedPage): (WebCore::CachedPage::restore):
  • history/CachedPage.h: (WebCore::CachedPage::document): (WebCore::CachedPage::documentLoader): (WebCore::CachedPage::view): (WebCore::CachedPage::url): (WebCore::CachedPage::domWindow): (WebCore::CachedPage::cachedMainFrame):
  • loader/FrameLoader.cpp: (WebCore::FrameLoader::cachePageForHistoryItem): Move the platform data saving into the CachedFrame itself.
2:09 PM Changeset in webkit [40301] by zecke@webkit.org
  • 2 edits in trunk/LayoutTests

2009-01-27 Holger Hans Peter Freyther <zecke@selfish.org>

Rubber stamped by Darin Adler.

Get the build bot green as discussed on the mailinglist. There is
only one crash after unloading a page with plugins. For the remaining
failing tests DumpRenderTree needs to be looked at.

  • platform/gtk/Skipped:
1:54 PM Changeset in webkit [40300] by Simon Fraser
  • 13 edits in trunk/WebCore

2009-01-27 Simon Fraser <Simon Fraser>

Reviewed by Dave Hyatt

Flip the arguments of computeRectForRepaint() from

computeRectForRepaint(IntRect&, RenderBox* repaintContainer, bool)

to

computeRectForRepaint(RenderBox* repaintContainer, IntRect&, bool)

1:44 PM Changeset in webkit [40299] by ddkilzer@apple.com
  • 2 edits in trunk/WebCore

Add missing header guards to AccessibilityObjectWrapper.h

Reviewed by Anders Carlsson.

  • page/mac/AccessibilityObjectWrapper.h: Added missing header guards.
1:28 PM Changeset in webkit [40298] by Simon Fraser
  • 5 edits in trunk/WebCore

2009-01-27 Simon Fraser <Simon Fraser>

Reviewed by Dave Hyatt

https://bugs.webkit.org/show_bug.cgi?id=23567

Fix crash of svg/custom/stop-crash.svg testcase because of
infinite recursion, as I missed replacing absoluteClippedOverflowRect()
with clippedOverflowRectForRepaint() in RenderSVGGradientStop.

Also fix a missed conversion in RenderTableCol, and add a couple
of comments.

11:24 AM Changeset in webkit [40297] by adele@apple.com
  • 2 edits in trunk/WebCore

2009-01-27 Adele Peterson <adele@apple.com>

RS by Dave Hyatt

Use the textfield appearance for search fields in themeWin.css so the border/background
styling will work correctly on these fields.

  • css/themeWin.css:
10:45 AM Changeset in webkit [40296] by mitz@apple.com
  • 2 edits in trunk/WebCore
  • build fix
  • bindings/js/JSHTMLInputElementCustom.cpp: (WebCore::JSHTMLInputElement::setSelectionStart): (WebCore::JSHTMLInputElement::setSelectionEnd): (WebCore::JSHTMLInputElement::setSelectionRange):
10:26 AM Changeset in webkit [40295] by mitz@apple.com
  • 2 edits in trunk/WebCore
  • build fix
  • platform/graphics/Gradient.cpp: (WebCore::Gradient::setSpreadMethod):
9:30 AM Changeset in webkit [40294] by Dimitri Glazkov
  • 4 edits in trunk/WebCore

2009-01-27 Paul Godavari <paul@chromium.org>

Reviewed by Eric Seidel.

https://bugs.webkit.org/show_bug.cgi?id=23561
Explicitly send the MIME type from an image dragged from a web
page to the desktop, to Chromium so that it can properly generate
a file name.

  • platform/chromium/ChromiumDataObject.cpp: (WebCore::ChromiumDataObject::clear): (WebCore::ChromiumDataObject::hasData):
  • platform/chromium/ChromiumDataObject.h:
  • platform/chromium/ClipboardChromium.cpp: (WebCore::writeImageToDataObject):
9:24 AM Changeset in webkit [40293] by Dimitri Glazkov
  • 6 edits in trunk

WebCore:

2009-01-27 Mads Ager <ager@chromium.org>

Reviewed by Darin Adler.

https://bugs.webkit.org/show_bug.cgi?id=23300
Follow Firefox in throwing exceptions when using selection
functions on HTMLInputElements that cannot have selection.

This requires custom setSelectionRange, setSelectionStart and
setSelectionEnd implementations, but it gets rid of the custom
getOwnPropertySlot.

  • bindings/js/JSHTMLInputElementCustom.cpp: (WebCore::JSHTMLInputElement::selectionStart): (WebCore::JSHTMLInputElement::selectionEnd): (WebCore::JSHTMLInputElement::setSelectionRange):
  • html/HTMLInputElement.idl:

LayoutTests:

2009-01-27 Mads Ager <ager@chromium.org>

Reviewed by Darin Adler.

https://bugs.webkit.org/show_bug.cgi?id=23300
Update test of selection functions on HTMLInputElements to expect
the selection functions to throw exceptions when used on buttons.
This is consistent with the Firefox behavior.

  • fast/forms/selection-functions-expected.txt:
  • fast/forms/selection-functions.html:
9:13 AM Changeset in webkit [40292] by Dimitri Glazkov
  • 16 edits in trunk/WebCore

2009-01-27 Evan Stade <estade@chromium.org>

Reviewed by Nikolas Zimmermann.

https://bugs.webkit.org/show_bug.cgi?id=23435
Make spreadMethod a member of Gradient rather than GraphicsContext.
Implement spreadMethod for Skia.

  • platform/graphics/Gradient.cpp: (WebCore::Gradient::Gradient):
  • platform/graphics/Gradient.h: (WebCore::Gradient::setSpreadMethod): (WebCore::Gradient::spreadMethod):
  • platform/graphics/GraphicsContext.cpp:
  • platform/graphics/GraphicsContext.h:
  • platform/graphics/GraphicsContextPrivate.h:
  • platform/graphics/GraphicsTypes.h: (WebCore::):
  • platform/graphics/cairo/GradientCairo.cpp: (WebCore::Gradient::platformGradient):
  • platform/graphics/cairo/GraphicsContextCairo.cpp: (WebCore::GraphicsContext::fillPath): (WebCore::GraphicsContext::strokePath):
  • platform/graphics/qt/GradientQt.cpp: (WebCore::Gradient::platformGradient):
  • platform/graphics/qt/GraphicsContextQt.cpp: (WebCore::GraphicsContext::fillPath): (WebCore::GraphicsContext::strokePath):
  • platform/graphics/skia/GradientSkia.cpp: (WebCore::Gradient::platformGradient):
  • svg/SVGLinearGradientElement.cpp: (WebCore::SVGLinearGradientElement::buildGradient):
  • svg/SVGRadialGradientElement.cpp: (WebCore::SVGRadialGradientElement::buildGradient):
  • svg/graphics/SVGPaintServerGradient.cpp: (WebCore::SVGPaintServerGradient::SVGPaintServerGradient): (WebCore::SVGPaintServerGradient::setup): (WebCore::SVGPaintServerGradient::externalRepresentation):
  • svg/graphics/SVGPaintServerGradient.h:
8:03 AM Changeset in webkit [40291] by ariya@webkit.org
  • 2 edits in trunk/WebCore

2009-01-27 Ariya Hidayat <ariya.hidayat@trolltech.com>

Rubber-stamped by Simon Hausmann.

http://www.qtsoftware.com/developer/task-tracker/index_html?id=238662&method=entry

[Qt] Map function keys F1 to F24.

  • platform/qt/PlatformKeyboardEventQt.cpp: (WebCore::windowsKeyCodeForKeyEvent):
7:26 AM Changeset in webkit [40290] by ariya@webkit.org
  • 2 edits in trunk/WebKit/qt

2009-01-27 Ariya Hidayat <ariya.hidayat@trolltech.com>

Reviewed by Simon Hausmann.

http://www.qtsoftware.com/developer/task-tracker/index_html?id=238391&method=entry

[Qt] If QPainter fails to start on a QPrinter instance, do not
continue printing.

  • Api/qwebframe.cpp: (QWebFrame::print):
12:05 AM Changeset in webkit [40289] by beidson@apple.com
  • 26 edits in trunk

WebCore:

2009-01-27 Brady Eidson <beidson@apple.com>

Reviewed by Dan Bernstein

Rework FrameLoaderClient to work on a CachedFrame basis instead of CachedPage

  • WebCore.base.exp:
  • history/CachedPage.cpp:
  • history/CachedPage.h: (WebCore::CachedPage::cachedMainFrame):
  • loader/EmptyClients.h: (WebCore::EmptyFrameLoaderClient::savePlatformDataToCachedFrame): (WebCore::EmptyFrameLoaderClient::transitionToCommittedFromCachedFrame):
  • loader/FrameLoader.cpp: (WebCore::FrameLoader::restoreDocumentState): (WebCore::FrameLoader::commitProvisionalLoad): (WebCore::FrameLoader::transitionToCommitted): (WebCore::FrameLoader::cachePageForHistoryItem):
  • loader/FrameLoaderClient.h:

WebKit/gtk:

2009-01-27 Brady Eidson <beidson@apple.com>

Reviewed by Dan Bernstein

Rework FrameLoaderClient to work on a CachedFrame basis instead of CachedPage

  • WebCoreSupport/FrameLoaderClientGtk.cpp: (WebKit::FrameLoaderClient::savePlatformDataToCachedFrame): (WebKit::FrameLoaderClient::transitionToCommittedFromCachedFrame):
  • WebCoreSupport/FrameLoaderClientGtk.h:

WebKit/mac:

2009-01-27 Brady Eidson <beidson@apple.com>

Reviewed by Dan Bernstein

Rework FrameLoaderClient to work on a CachedFrame basis instead of CachedPage

  • History/WebHistoryItem.mm:
  • WebCoreSupport/WebFrameLoaderClient.h:
  • WebCoreSupport/WebFrameLoaderClient.mm: (WebFrameLoaderClient::savePlatformDataToCachedFrame): (WebFrameLoaderClient::transitionToCommittedFromCachedFrame):
  • WebKit.order:

WebKit/qt:

2009-01-27 Brady Eidson <beidson@apple.com>

Reviewed by Dan Bernstein

Rework FrameLoaderClient to work on a CachedFrame basis instead of CachedPage

  • WebCoreSupport/FrameLoaderClientQt.cpp: (WebCore::FrameLoaderClientQt::savePlatformDataToCachedFrame): (WebCore::FrameLoaderClientQt::transitionToCommittedFromCachedFrame):
  • WebCoreSupport/FrameLoaderClientQt.h:

WebKit/win:

2009-01-27 Brady Eidson <beidson@apple.com>

Reviewed by Dan Bernstein

Rework FrameLoaderClient to work on a CachedFrame basis instead of CachedPage

  • WebCoreSupport/WebFrameLoaderClient.cpp: (WebFrameLoaderClient::savePlatformDataToCachedFrame): (WebFrameLoaderClient::transitionToCommittedFromCachedFrame):
  • WebCoreSupport/WebFrameLoaderClient.h:
  • WebFrame.cpp:
  • WebFrame.h:

WebKit/wx:

2009-01-27 Brady Eidson <beidson@apple.com>

Reviewed by Dan Bernstein

Rework FrameLoaderClient to work on a CachedFrame basis instead of CachedPage

  • WebKitSupport/FrameLoaderClientWx.cpp: (WebCore::FrameLoaderClientWx::savePlatformDataToCachedFrame): (WebCore::FrameLoaderClientWx::transitionToCommittedFromCachedFrame):
  • WebKitSupport/FrameLoaderClientWx.h:

Jan 26, 2009:

10:58 PM Changeset in webkit [40288] by Simon Fraser
  • 33 edits in trunk/WebCore

2009-01-26 Simon Fraser <Simon Fraser>

Reviewed by Dave Hyatt

https://bugs.webkit.org/show_bug.cgi?id=23360

Add variants of all the methods that compute dirty rects for repainting
with versions that compute those rects relative to some container
RenderBox that acts as a painting root.

8:40 PM Changeset in webkit [40287] by Simon Fraser
  • 7 edits in trunk

2009-01-26 Simon Fraser <Simon Fraser>

Reviewed by David Hyatt

Back out r40285, because it was checked in with no bug number, no
testcase, is rendering change that did not get thorough review,
and broke the Mac build.

7:49 PM Changeset in webkit [40286] by beidson@apple.com
  • 4 edits in trunk/WebCore

2009-01-26 Brady Eidson <beidson@apple.com>

Reviewed by Darin Adler

-Make the recently added back/forward cache logging much better by actually

walking the entire frame tree and indenting the resulting output.

-Fix a null-termination bug in HistoryItem tree logging

  • history/HistoryItem.cpp: (WebCore::HistoryItem::showTreeWithIndent):
  • loader/FrameLoader.cpp: (WebCore::pageCacheLogPrefix): (WebCore::pageCacheLog): (WebCore::FrameLoader::logCanCachePageDecision): (WebCore::FrameLoader::logCanCacheFrameDecision):
  • loader/FrameLoader.h:
7:06 PM Changeset in webkit [40285] by treat@webkit.org
  • 7 edits in trunk

Allow option of hit testing frame content without clipping to the visible
viewport.

6:44 PM Changeset in webkit [40284] by ddkilzer@apple.com
  • 5 edits in trunk/LayoutTests

Fix misspelling of "lowercase" in font-face-locally-installed.html

Reviewed by Dan Bernstein.

  • fast/css/font-face-locally-installed.html: Updated.
  • platform/mac/fast/css/font-face-locally-installed-expected.checksum: Updated.
  • platform/mac/fast/css/font-face-locally-installed-expected.png: Updated.
  • platform/mac/fast/css/font-face-locally-installed-expected.txt: Updated.
5:59 PM Changeset in webkit [40283] by andersca@apple.com
  • 1 edit in trunk/WebKit/mac/ChangeLog

Sam did _not_ review this

5:57 PM Changeset in webkit [40282] by adele@apple.com
  • 2 edits in trunk/JavaScriptCore

2009-01-26 Adele Peterson <adele@apple.com>

Build fix.

  • debugger/Debugger.cpp:
5:56 PM Changeset in webkit [40281] by andersca@apple.com
  • 4 edits in trunk/WebKit/mac

2009-01-26 Anders Carlsson <andersca@apple.com>

Reviewed by Sam Weinig.

Add the ability for plug-ins to make WebKit operate in "modal mode"


  • Plugins/Hosted/NetscapePluginHostProxy.h:
  • Plugins/Hosted/NetscapePluginHostProxy.mm: (WebKit::NetscapePluginHostProxy::NetscapePluginHostProxy): (WebKit::NetscapePluginHostProxy::pluginHostDied): If the plug-in crashes while we're modal, make sure to leave the modal mode.


(WebKit::NetscapePluginHostProxy::setModal):
(WKPCSetModal):

  • Plugins/Hosted/WebKitPluginClient.defs:
5:33 PM Changeset in webkit [40280] by sullivan@apple.com
  • 3 edits in trunk/WebKit/mac

2009-01-26 John Sullivan <sullivan@apple.com>

fixed <rdar://problem/6530053> REGRESSION (Leopard): Shift-tab in http authentication window gets
stuck in the Name field rather than cycling around

Reviewed by Dan Bernstein

  • Panels/English.lproj/WebAuthenticationPanel.nib/designable.nib:
  • Panels/English.lproj/WebAuthenticationPanel.nib/keyedobjects.nib: The two static text fields and the last button all had their "next key view" outlets set to the name field, which caused shift-tab from the name field to do the wrong thing. Fixed by making each selectable view have exactly one "next key view" set to it.
5:08 PM Changeset in webkit [40279] by barraclough@apple.com
  • 2 edits in trunk/JavaScriptCore

2009-01-26 Gavin Barraclough <barraclough@apple.com>

Reviewed by Darin Adler.

Fixes for eq null & neq null, on 64-bit JIT.
https://bugs.webkit.org/show_bug.cgi?id=23559

This patch degrades 64-bit JIT performance on some benchmarks,
due to the whole not-being-incorrect thing.

  • jit/JIT.cpp: (JSC::JIT::privateCompileMainPass):
4:45 PM Changeset in webkit [40278] by weinig@apple.com
  • 6 edits
    3 adds in trunk

WebCore:

2009-01-26 Sam Weinig <sam@webkit.org>

Reviewed by Dan Bernstein.

Fix for https://bugs.webkit.org/show_bug.cgi?id=18141
Acid3 tests 77 and 78 fail on reload due to SVG font race
<rdar://problem/6504899>

Match Opera's behavior of loading SVGFonts as soon as <font-face-uri>
tag is inserted into the document and not at the first use of the font
as is done for CSS web fonts.

This fixes a race condition noticeable by some in the Acid3 test that
happened because the onload event handler for an iframe containing a
<font-face-uri> with an external reference was not delayed by the pending
load of the font.

Test: http/tests/misc/SVGFont-delayed-load.html

  • svg/SVGFontFaceUriElement.cpp: (WebCore::SVGFontFaceUriElement::~SVGFontFaceUriElement): (WebCore::SVGFontFaceUriElement::parseMappedAttribute): Call loadFont if the href attribute changes. (WebCore::SVGFontFaceUriElement::insertedIntoDocument): Call loadFont. (WebCore::SVGFontFaceUriElement::loadFont): Force a load of the font specified in href attribute.
  • svg/SVGFontFaceUriElement.h:

LayoutTests:

2009-01-26 Sam Weinig <sam@webkit.org>

Reviewed by Dan Bernstein.

Test for https://bugs.webkit.org/show_bug.cgi?id=18141
Acid3 tests 77 and 78 fail on reload due to SVG font race
<rdar://problem/6504899>

  • http/tests/misc/SVGFont-delayed-load-expected.txt: Added.
  • http/tests/misc/SVGFont-delayed-load.html: Added.
  • http/tests/misc/resources/SVGFont-delayed-loader.svg: Added.
  • svg/custom/acid3-test-77.html:
  • svg/custom/resources/Acid3Font-loader.svg:
4:38 PM Changeset in webkit [40277] by andersca@apple.com
  • 4 edits in trunk/WebKit/mac

2009-01-26 Anders Carlsson <andersca@apple.com>

Reviewed by Sam Weinig.

Add the ability for a plug-in to show or hide the menu bar.


  • Plugins/Hosted/NetscapePluginHostProxy.h:
  • Plugins/Hosted/NetscapePluginHostProxy.mm: (WebKit::NetscapePluginHostProxy::NetscapePluginHostProxy): (WebKit::NetscapePluginHostProxy::pluginHostDied): (WebKit::NetscapePluginHostProxy::setMenuBarVisible): (WKPCSetMenuBarVisible):
  • Plugins/Hosted/WebKitPluginClient.defs:
4:09 PM Changeset in webkit [40276] by pol@apple.com
  • 13 edits in trunk/LayoutTests

2009-01-26 Pierre-Olivier Latour <pol@apple.com>

Updated the reference images for the video tests that rely on the H264 test movie,
as QuickTime 7.6 apparently slightly changed the results from the 7.5.5 version.

  • platform/mac/media/video-aspect-ratio-expected.checksum:
  • platform/mac/media/video-aspect-ratio-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-layer-crash-expected.checksum:
  • platform/mac/media/video-layer-crash-expected.png:
  • platform/mac/media/video-transformed-expected.checksum:
  • platform/mac/media/video-transformed-expected.png:
  • platform/mac/media/video-zoom-expected.checksum:
  • platform/mac/media/video-zoom-expected.png:
4:00 PM Changeset in webkit [40275] by timothy@apple.com
  • 2 edits in trunk/WebCore

Change Web Archive serialization back to the binary property list format.

<rdar://problem/6127865> Web archives saved with Safari 4 cannot be read by Safari 3

Reviewed by Brady Eidson.

  • loader/archive/cf/LegacyWebArchive.cpp: (WebCore::LegacyWebArchive::rawDataRepresentation):
3:57 PM Changeset in webkit [40274] by cwzwarich@webkit.org
  • 8 edits
    1 add in trunk

2009-01-26 Cameron Zwarich <cwzwarich@uwaterloo.ca>

Reviewed by Gavin Barraclough.

Bug 23552: Dashcode evaluator no longer works after making ExecStates actual call frames
<https://bugs.webkit.org/show_bug.cgi?id=23552>
<rdar://problem/6398839>

Dashcode will crash when using the evaluator because it saves a global call
frame, even after global code has finished executing, and then uses this as
a launching pad to execute new JS in the evaluator. The fix is to detect
when Dashcode is attempting to do this and execute code from a global call
frame instead.

JavaScriptCore:

  • JavaScriptCore.exp:
  • debugger/Debugger.cpp: (JSC::evaluateInGlobalCallFrame): Added so that WebScriptCallFrame can evaluate JS starting from a global call frame.
  • debugger/Debugger.h:

WebKit/mac:

  • ForwardingHeaders/runtime/Protect.h: Added.
  • WebView/WebScriptDebugDelegate.mm: (-[WebScriptCallFrame _initWithGlobalObject:debugger:caller:debuggerCallFrame:]): Added debugger, a WebScriptDebugger* argument. (-[WebScriptCallFrame evaluateWebScript:]): Detect when Dashcode is using a stale WebScriptCallFrame to execute new JS and evaluate it starting from the global object's global call frame instead.
  • WebView/WebScriptDebugger.h: (WebScriptDebugger::globalObject): Added. (WebScriptDebugger::globalCallFrame): Added.
  • WebView/WebScriptDebugger.mm: (WebScriptDebugger::WebScriptDebugger): Initialize m_globalObject. (WebScriptDebugger::initGlobalCallFrame): Created as a clone of callEvent so that the global call frame can be saved immediately after being created. (WebScriptDebugger::callEvent): Pass 'this' as the debugger argument of WebScriptCallFrame's _initWithGlobalObject method.
3:27 PM Changeset in webkit [40273] by andersca@apple.com
  • 3 edits in trunk/WebKit/mac

2009-01-26 Anders Carlsson <andersca@apple.com>

Reviewed by Oliver Hunt.

Make WKPCInvoke a simpleroutine.


  • Plugins/Hosted/NetscapePluginHostProxy.mm: (WKPCInvoke):
  • Plugins/Hosted/WebKitPluginClient.defs:
3:16 PM Changeset in webkit [40272] by andersca@apple.com
  • 2 edits in trunk/WebCore

2009-01-26 Anders Carlsson <andersca@apple.com>

Fix 64-bit build.


  • WebCore.LP64.exp:
3:14 PM Changeset in webkit [40271] by Dimitri Glazkov
  • 7 edits
    2 moves in trunk/WebCore

2009-01-26 Dmitry Titov <dimich@chromium.org>

Reviewed by Alexey Proskuryakov.

https://bugs.webkit.org/show_bug.cgi?id=23511
Move DOMTimer from bindings/js to page/.
This was prepared by moving all JSC dependencies from DOMTimer
to ScheduledAction earlier, and helps unfork the Chromuim version
of the DOMTimer.

  • GNUmakefile.am:
  • WebCore.pro:
  • WebCore.scons:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • WebCoreSources.bkl:
  • bindings/js/DOMTimer.cpp: Removed.
  • bindings/js/DOMTimer.h: Removed.
  • page/DOMTimer.cpp: Copied from WebCore/bindings/js/DOMTimer.cpp.
  • page/DOMTimer.h: Copied from WebCore/bindings/js/DOMTimer.h.
3:07 PM Changeset in webkit [40270] by hyatt@apple.com
  • 4 edits in trunk/WebCore

2009-01-26 David Hyatt <hyatt@apple.com>

Eliminate rightmostPosition, lowestPosition and leftmostPosition from RenderFlow. Move the code into
RenderBlock's methods.

Reviewed by Eric Seidel

  • rendering/RenderBlock.cpp: (WebCore::RenderBlock::lowestPosition): (WebCore::RenderBlock::rightmostPosition): (WebCore::RenderBlock::leftmostPosition):
  • rendering/RenderFlow.cpp:
  • rendering/RenderFlow.h:
3:06 PM Changeset in webkit [40269] by darin@chromium.org
  • 3 edits in trunk/WebCore

2009-01-26 Darin Fisher <darin@chromium.org>

Reviewed by Eric Seidel.

https://bugs.webkit.org/show_bug.cgi?id=23553
Upstream changes from jcampan to fix chromium bugs 6692 and 6694.

  • platform/chromium/PopupMenuChromium.cpp: (WebCore::PopupListBox::setLoopSelectionNavigation): (WebCore::PopupListBox::PopupListBox): (WebCore::PopupContainer::setLoopSelectionNavigation): (WebCore::PopupListBox::handleKeyEvent): (WebCore::PopupListBox::paintRow): (WebCore::PopupListBox::clearSelection): (WebCore::PopupListBox::selectNextRow): (WebCore::PopupListBox::selectPreviousRow):
  • platform/chromium/PopupMenuChromium.h:
2:54 PM Changeset in webkit [40268] by Dimitri Glazkov
  • 1 edit in trunk/WebCore/WebCore.xcodeproj/project.pbxproj

Remove extraneous WebCore XCode project setting, introduced in previous commit.

2:52 PM Changeset in webkit [40267] by beidson@apple.com
  • 4 edits in trunk/WebCore

2009-01-26 Brady Eidson <beidson@apple.com>

Reviewed by Sam Weinig

Remove some historical CachedPage time stamp fluff.

  • history/CachedPage.cpp: (WebCore::CachedPage::CachedPage):
  • history/CachedPage.h: (WebCore::CachedPage::timeStamp):
  • loader/FrameLoader.cpp: (WebCore::FrameLoader::cachePageForHistoryItem):
2:45 PM Changeset in webkit [40266] by hyatt@apple.com
  • 8 edits in trunk/WebCore

2009-01-26 David Hyatt <hyatt@apple.com>

Move absoluteClippedOverflowRect, linesBoundingBox and borderBoundingBox from RenderFlow to RenderInline.

Reviewed by Eric Seidel

  • rendering/RenderBox.cpp: (WebCore::RenderBox::containingBlockHeightForPositioned):
  • rendering/RenderFlow.cpp:
  • rendering/RenderFlow.h:
  • rendering/RenderInline.cpp: (WebCore::RenderInline::linesBoundingBox): (WebCore::RenderInline::absoluteClippedOverflowRect):
  • rendering/RenderInline.h: (WebCore::RenderInline::borderBoundingBox):
  • rendering/RenderLayer.cpp: (WebCore::RenderLayer::updateLayerPosition):
  • rendering/RenderTreeAsText.cpp: (WebCore::operator<<):
2:40 PM Changeset in webkit [40265] by Dimitri Glazkov
  • 5 edits in trunk/WebCore

2009-01-26 Dimitri Glazkov <Dimitri Glazkov>

Reviewed by Eric Seidel.

https://bugs.webkit.org/show_bug.cgi?id=22650
Implement support for "Immutable" attribute to CodeGeneratorJS.pm, thus
allowing to explicitly mark methods as immutable (i.e. returning a new
instance rather than a reference to an existing instance).

  • bindings/js/JSSVGMatrixCustom.cpp: Removed custom methods.
  • bindings/scripts/CodeGeneratorJS.pm: Added check for Immutable

attribute when generating function call.

  • svg/SVGMatrix.idl: Replaced Custom attribute with Immutable on

methods.

2:29 PM Changeset in webkit [40264] by hyatt@apple.com
  • 22 edits in trunk/WebCore

2009-01-26 David Hyatt <hyatt@apple.com>

Eliminate isInlineFlow() now that a RenderBlock can never be an inline flow. isInlineFlow() is now
equivalent to isRenderInline(), so all calls to isInlineFlow() have been replaced with isRenderInline().

Reviewed by Eric Seidel

  • dom/Text.cpp: (WebCore::Text::rendererIsNeeded):
  • rendering/InlineFlowBox.cpp: (WebCore::InlineFlowBox::placeBoxesHorizontally): (WebCore::shouldDrawTextDecoration):
  • rendering/RenderBlock.cpp: (WebCore::RenderBlock::hitTestContents): (WebCore::InlineMinMaxIterator::next): (WebCore::RenderBlock::calcInlinePrefWidths):
  • rendering/RenderBlock.h: (WebCore::RenderBlock::isBlockFlow):
  • rendering/RenderBox.cpp: (WebCore::RenderBox::clientWidth): (WebCore::RenderBox::clientHeight): (WebCore::RenderBox::nodeAtPoint): (WebCore::RenderBox::imageChanged): (WebCore::RenderBox::offsetForPositionedInContainer): (WebCore::RenderBox::containingBlockWidthForPositioned): (WebCore::RenderBox::containingBlockHeightForPositioned):
  • rendering/RenderBox.h: (WebCore::RenderBox::width): (WebCore::RenderBox::height): (WebCore::RenderBox::size): (WebCore::RenderBox::frameRect):
  • rendering/RenderContainer.cpp: (WebCore::RenderContainer::updateBeforeAfterContentForContainer):
  • rendering/RenderFlow.cpp: (WebCore::RenderFlow::dirtyLinesFromChangedChild): (WebCore::RenderFlow::createInlineBox): (WebCore::RenderFlow::paintLines): (WebCore::RenderFlow::hitTestLines): (WebCore::RenderFlow::absoluteClippedOverflowRect): (WebCore::RenderFlow::lowestPosition): (WebCore::RenderFlow::rightmostPosition): (WebCore::RenderFlow::leftmostPosition):
  • rendering/RenderFlow.h: (WebCore::RenderFlow::borderBoundingBox):
  • rendering/RenderInline.h: (WebCore::RenderInline::isRenderInline):
  • rendering/RenderLayer.cpp: (WebCore::RenderLayer::updateLayerPosition): (WebCore::RenderLayer::intersectsDamageRect): (WebCore::RenderLayer::boundingBox):
  • rendering/RenderListItem.cpp: (WebCore::getParentOfFirstLineBox):
  • rendering/RenderObject.cpp: (WebCore::RenderObject::getAbsoluteRepaintRectWithOutline): (WebCore::RenderObject::styleWillChange): (WebCore::RenderObject::firstLineStyle):
  • rendering/RenderObject.h:
  • rendering/RenderSVGInline.cpp: (WebCore::RenderSVGInline::createInlineBox):
  • rendering/RenderSVGText.cpp: (WebCore::RenderSVGText::createInlineBox):
  • rendering/RenderTableRow.cpp: (WebCore::RenderTableRow::nodeAtPoint):
  • rendering/RenderTableSection.cpp: (WebCore::RenderTableSection::nodeAtPoint):
  • rendering/RenderText.cpp: (WebCore::isInlineFlowOrEmptyText):
  • rendering/RenderTreeAsText.cpp: (WebCore::operator<<):
  • rendering/bidi.cpp: (WebCore::bidiNext): (WebCore::bidiFirst): (WebCore::appendRunsForObject): (WebCore::RenderBlock::createLineBoxes): (WebCore::RenderBlock::computeHorizontalPositionsForLine): (WebCore::RenderBlock::layoutInlineChildren): (WebCore::inlineFlowRequiresLineBox): (WebCore::requiresLineBox): (WebCore::RenderBlock::skipTrailingWhitespace): (WebCore::RenderBlock::skipLeadingWhitespace): (WebCore::RenderBlock::findNextLineBreak):
2:27 PM Changeset in webkit [40263] by andersca@apple.com
  • 9 edits in trunk/WebKit/mac

2009-01-26 Anders Carlsson <andersca@apple.com>

Reviewed by Sam Weinig.

Implement using plug-in objects as constructors, and setting and getting properties from a plug-in object.


  • Plugins/Hosted/NetscapePluginHostProxy.mm: (WKPCBooleanAndDataReply):
  • Plugins/Hosted/NetscapePluginInstanceProxy.h: (WebKit::NetscapePluginInstanceProxy::Reply::): (WebKit::NetscapePluginInstanceProxy::BooleanAndDataReply::BooleanAndDataReply): Rename NPObjectInvokeReply to BooleanAndDataReply.


  • Plugins/Hosted/NetscapePluginInstanceProxy.mm: (WebKit::NetscapePluginInstanceProxy::addValueToArray): Fix a cut and paste error.


(WebKit::NetscapePluginInstanceProxy::demarshalValueFromArray):
Handle NPObjects.


  • Plugins/Hosted/ProxyInstance.h:
  • Plugins/Hosted/ProxyInstance.mm: (WebKit::ProxyField::valueFromInstance): (WebKit::ProxyField::setValueToInstance): Call the ProxyInstance method.


(WebKit::ProxyInstance::~ProxyInstance):
Release the NPObject.


(WebKit::ProxyInstance::supportsConstruct):
Ask the plug-in host if an instance supports construct.


(WebKit::ProxyInstance::fieldValue):
(WebKit::ProxyInstance::setFieldValue):
Call the plug-in host methods.


  • Plugins/Hosted/WebKitPluginHostTypes.h: Rename ObjectValueType to JSObjectValueType, and add NPObjectValueType.
1:53 PM Changeset in webkit [40262] by hyatt@apple.com
  • 1 edit in trunk/LayoutTests/platform/mac/fast/table/form-with-table-style-expected.txt

Land new layout tests now that display:compact support has been removed.

1:52 PM Changeset in webkit [40261] by hyatt@apple.com
  • 1 edit in trunk/LayoutTests/fast/leaks/001-expected.txt

Land new layout tests now that display:compact support has been removed.

1:51 PM Changeset in webkit [40260] by hyatt@apple.com
  • 1 edit in trunk/LayoutTests/platform/mac/fast/forms/form-hides-table-expected.txt

Land new layout tests now that display:compact support has been removed.

1:51 PM Changeset in webkit [40259] by hyatt@apple.com
  • 7 edits in trunk/LayoutTests/platform/mac/fast/compact

Land new layout tests now that display:compact support has been removed.

1:50 PM Changeset in webkit [40258] by hyatt@apple.com
  • 10 edits in trunk/WebCore

2009-01-26 David Hyatt <hyatt@apple.com>

Drop support for display:compact.

(1) display:compact is no longer part of CSS2.1.
(2) Shipping Safari has completely broken compact support with severely broken rendering
(all of the compact text just piles on top of the text in the inserted block and on top of itself as well).
(3) This has been broken in WebKit for years (ever since blocks converted to painting lines directly) without
anyone even noticing.

Reviewed by Eric Seidel

  • rendering/InlineFlowBox.cpp: (WebCore::InlineFlowBox::placeBoxesHorizontally):
  • rendering/RenderBlock.cpp: (WebCore::RenderBlock::handleSpecialChild): (WebCore::RenderBlock::handleRunInChild): (WebCore::RenderBlock::layoutBlockChildren): (WebCore::RenderBlock::paint): (WebCore::RenderBlock::paintObject): (WebCore::RenderBlock::nodeAtPoint): (WebCore::RenderBlock::positionForCoordinates): (WebCore::shouldCheckLines): (WebCore::getHeightForLineCount): (WebCore::RenderBlock::renderName):
  • rendering/RenderBlock.h:
  • rendering/RenderBox.cpp: (WebCore::RenderBox::sizesToIntrinsicWidth):
  • rendering/RenderBox.h: (WebCore::RenderBox::width): (WebCore::RenderBox::height): (WebCore::RenderBox::size): (WebCore::RenderBox::frameRect):
  • rendering/RenderFlow.cpp: (WebCore::RenderFlow::paintLines): (WebCore::RenderFlow::hitTestLines): (WebCore::RenderFlow::absoluteClippedOverflowRect): (WebCore::RenderFlow::linesBoundingBox):
  • rendering/RenderObject.h: (WebCore::RenderObject::isInline):
  • rendering/bidi.cpp: (WebCore::RenderBlock::computeHorizontalPositionsForLine): (WebCore::RenderBlock::layoutInlineChildren):
  • rendering/bidi.h: (WebCore::BidiRun::BidiRun):
1:44 PM Changeset in webkit [40257] by mrowe@apple.com
  • 2 edits in trunk/WebKit/mac

Fix the build.

Remove -Wformat=2 from the warning flags as newer versions of GCC emit
warnings about non-literal format strings for uses of our UI_STRING macro.

  • Configurations/Base.xcconfig:
1:42 PM Changeset in webkit [40256] by pol@apple.com
  • 2 edits in trunk/WebKitTools

2009-01-26 Pierre-Olivier Latour <pol@apple.com>

Tweaked again earlier fix, this time just to print a warning and not abort if
attempting to generate pixel results and Perian is installed.

https://bugs.webkit.org/show_bug.cgi?id=22615

  • Scripts/run-webkit-tests:
12:55 PM Changeset in webkit [40255] by darin@chromium.org
  • 2 edits in trunk/WebCore

2009-01-26 Adam Langley <agl@google.com>

Reviewed by Nikolas Zimmermann.

gtk2drawing: fix compiler warnings

g_object_set_data expects a gpointer as the last argument. Cast the

TRUE/FALSE values to avoid a warning.

gtk_tree_view_column_new doesn't return a GtkWidget.

  • platform/gtk/gtk2drawing.c: (setup_widget_prototype): (moz_gtk_get_combo_box_inner_button): (moz_gtk_get_combo_box_button_inner_widgets): (ensure_combo_box_widgets): (moz_gtk_get_combo_box_entry_inner_widgets): (moz_gtk_get_combo_box_entry_arrow): (ensure_combo_box_entry_widgets): (ensure_toolbar_widget): (ensure_menu_bar_item_widget): (ensure_menu_popup_widget): (ensure_menu_item_widget): (ensure_image_menu_item_widget): (ensure_menu_separator_widget): (ensure_check_menu_item_widget): (ensure_tree_header_cell_widget): (moz_gtk_entry_paint):
12:14 PM Changeset in webkit [40254] by hyatt@apple.com
  • 4 edits in trunk

2009-01-26 David Hyatt <hyatt@apple.com>

Change display:run-in handling so that we no longer reuse RenderBlock as though it is an inline flow.
Instead we create a new RenderInline, move the RenderBlock's children underneath it, and then set the
inline as the new element's renderer.

Reviewed by Dan Bernstein

  • rendering/RenderBlock.cpp: (WebCore::RenderBlock::handleRunInChild):
  • rendering/RenderInline.cpp: (WebCore::RenderInline::renderName):
11:43 AM Changeset in webkit [40253] by mrowe@apple.com
  • 5 edits in trunk/WebKit

Clean up after r40240.

Rubber-stamped by Sam Weinig.

  • WebKit.xcodeproj/project.pbxproj: Reinstate WebKitPluginHost.defs.
  • Configurations/Base.xcconfig: Don't dead code strip in debug builds for now as it leads to link errors.
  • Plugins/Hosted/HostedNetscapePluginStream.mm: Revert change that is no longer needed now that WebKitPluginHost.defs

is back in the build.

10:48 AM Changeset in webkit [40252] by Adam Roben
  • 2 edits in trunk/WebKit/win

Fix an assertion failure when Safari loads an error page

Reviewed by Alexey Proskuryakov.

  • WebFrame.cpp: (WebFrame::loadData): Use the two-argument version of KURL and MarshallingHelpers::BSTRToKURL, for reasons mentioned in r40248.
10:46 AM Changeset in webkit [40251] by christian@webkit.org
  • 2 edits in trunk/WebKitTools

2009-01-26 Christian Dywan <christian@twotoasts.de>

Rubber stamped by Holger Freyther.

  • GtkLauncher/main.c: (main): Initialize threads, which is required for libSoup.
8:46 AM Changeset in webkit [40250] by Simon Hausmann
  • 3 edits in trunk/WebKit/qt

2009-01-26 David Boddie <dboddie@trolltech.com>

Reviewed by Simon Hausmann.

Doc: qdoc fix for a link to a property and added a basic description of the offline caching and storage features from HTML 5.

8:44 AM Changeset in webkit [40249] by Dimitri Glazkov
  • 2 edits in trunk/WebCore

2009-01-26 Dimitri Glazkov <Dimitri Glazkov>

Reviewed by Darin Adler.

https://bugs.webkit.org/show_bug.cgi?id=23480
Add missing method stubs to BackForwardListChromium.

  • history/BackForwardListChromium.cpp: (WebCore::BackForwardList::backItem): (WebCore::BackForwardList::forwardItem):
7:19 AM Changeset in webkit [40248] by Adam Roben
  • 5 edits in trunk/WebKit/win

Fix an assertion on launch in KURL::KURL

All URL strings passed in to the WebKit API need to be passed to
MarshallingHelpers::BSTRToKURL so that they may be properly parsed.

Reviewed by Alexey Proskuryakov.

  • MarshallingHelpers.cpp: (MarshallingHelpers::BSTRToKURL): Changed to use the two-argument constructor for KURL so that the strings will be parsed rather than assumed to be in the correct encoding/form.
  • WebResource.cpp: (WebResource::initWithData):
  • WebURLResponse.cpp: (WebURLResponse::initWithURL):
  • WebView.cpp: (WebView::userAgentForURL): (WebView::copyURL): Changed to use MarshallingHelpers::BSTRToKURL instead of trying to do the work manually.
6:03 AM QtWebKitJournal edited by Simon Hausmann
(diff)
2:16 AM Changeset in webkit [40247] by Darin Adler
  • 3 edits in trunk/LayoutTests

2009-01-26 Darin Adler <Darin Adler>

Requested by David Hyatt.

  • platform/mac/fast/table/form-with-table-style-expected.checksum: Updated to reflect the progression; we now render things we used to fail to render.
  • platform/mac/fast/table/form-with-table-style-expected.png: Ditto.

Jan 25, 2009:

11:31 PM Changeset in webkit [40246] by Darin Adler
  • 2 edits in trunk/WebKit/gtk

2009-01-25 Darin Adler <Darin Adler>

Try to fix GTK build.

  • webkit/webkitwebview.cpp: Added include of FloatQuad.h.
11:29 PM Changeset in webkit [40245] by Darin Adler
  • 4 edits in trunk/WebKit

WebKit:

2009-01-25 Darin Adler <Darin Adler>

Try to fix full build on Mac Leopard.

  • WebKit.xcodeproj/project.pbxproj: Removed WebKitPluginClient.defs from the WebKit target. Maybe this is temporary, but I had to do it to get the full build to succeed.

WebKit/mac:

2009-01-25 Darin Adler <Darin Adler>

  • Plugins/Hosted/HostedNetscapePluginStream.mm: Added a missing extern "C".
11:26 PM Changeset in webkit [40244] by Darin Adler
  • 2 edits in trunk/WebKit/win

2009-01-25 Darin Adler <Darin Adler>

Try to fix Windows build.

  • WebView.cpp: Added FloatQuad.h.
11:14 PM Changeset in webkit [40243] by Darin Adler
  • 3 edits in trunk/WebCore

2009-01-25 Darin Adler <Darin Adler>

Try to fix Tiger buildbot.

  • WebCore.xcodeproj/project.pbxproj: Turn off cast-qual for WebDashboardRegion.m.
  • page/mac/WebDashboardRegion.m: (typeName): Added. (-[WebDashboardRegion description]): Use typeName. (-[WebDashboardRegion isEqual:]): Added comment.
10:42 PM Changeset in webkit [40242] by ap@webkit.org
  • 8 edits in trunk/WebCore

Reviewed by Darin Adler.

https://bugs.webkit.org/show_bug.cgi?id=23535
Strengthen debug checks in KURL

Covered (and prompted) by existing tests.

  • platform/KURL.cpp: (WebCore::checkEncodedString): Check that the first character of the URL is an allowed first scheme character, not just that it isn't a slash. (WebCore::KURL::KURL): Assert that parsing didn't affect the string (which must be the case because of parsing being idempotent).
  • page/SecurityOrigin.cpp: (WebCore::SecurityOrigin::create): Added a check for the URL being valid - if it is not, an empty security origin is created. (WebCore::SecurityOrigin::createFromString): Parse the string as URL, do not just convert it - it is not guaranteed to be properly encoded.
  • dom/Document.cpp: (WebCore::Document::updateBaseURL): As documentURI is an arbitrary string, it needs to be parsed into an URL, not just converted into one.
  • html/CanvasRenderingContext2D.cpp: (WebCore::CanvasRenderingContext2D::createPattern): Create the security origin with createFromString() instead of create(). I do not know where the string comes from and whether it might not be properly encoded, but this change can't hurt, and makes the code slightly more clear.
  • xml/XMLHttpRequest.cpp: (WebCore::XMLHttpRequest::accessControlCheck): Create the security origin with createFromString() instead of create(). The string comes from an HTTP response header, so it may not be a properly encoded URL.
  • loader/DocLoader.cpp: (WebCore::DocLoader::requestResource): Do not try to request using invalid URLs.
  • page/DOMWindow.cpp: (WebCore::DOMWindow::postMessage): Updated to call SecurityOrigin::createFromString() (no change in behavior).
9:13 PM Changeset in webkit [40241] by Darin Adler
  • 2 edits in trunk/WebKit/mac

2009-01-25 Darin Adler <Darin Adler>

Discussed with Mark Rowe; not sure he reviewed it.

  • Configurations/Base.xcconfig: Add all the same warnings as in WebCore except for -Wcast-qual and -Wunused-parameter, which both need to be off at least for now.
8:14 PM Changeset in webkit [40240] by mrowe@apple.com
  • 8 edits in trunk

Improve the consistency of settings in our .xcconfig files.

Rubber-stamped by Dan Bernstein.

7:40 PM Changeset in webkit [40239] by hyatt@apple.com
  • 1 edit in trunk/LayoutTests/platform/mac/fast/table/form-with-table-style-expected.txt

Land table/forms layout test progression.

7:38 PM Changeset in webkit [40238] by hyatt@apple.com
  • 9 edits
    4 adds in trunk

WebCore:

2009-01-25 David Hyatt <hyatt@apple.com>

Fix for https://bugs.webkit.org/show_bug.cgi?id=23524, lots of missing content in table sections.

The new table code created a bug involving markAllDescendantsWithFloatsForLayout, namely that it could
end up marking ancestors of a block as needing layout when that block was still in the process of
doing a layout.

The fix is to add a parameter to markAllDescendantsWithFloatsForLayout that says whether or not
we are "mid-layout." If this flag is set, then the method will make sure to do only local dirtying
of objects to avoid accidentally marking a clean ancestor as needing layout again.

Ultimately the second parameter to setNeedsLayout and setChildNeedsLayout should just be removed,
with a check of whether or not we are mid-layout being done by those methods instead.

Reviewed by Oliver Hunt

Added fast/repaint/dynamic-table-vertical-alignment-change.html

  • rendering/RenderBlock.cpp: (WebCore::RenderBlock::collapseMargins): (WebCore::RenderBlock::clearFloatsIfNeeded): (WebCore::RenderBlock::layoutBlockChildren): (WebCore::RenderBlock::markAllDescendantsWithFloatsForLayout):
  • rendering/RenderBlock.h:
  • rendering/RenderObject.cpp: (WebCore::RenderObject::removeFromObjectLists):
  • rendering/RenderObject.h:
  • rendering/RenderTableSection.cpp: (WebCore::RenderTableSection::layoutRows):

LayoutTests:

2009-01-25 David Hyatt <hyatt@apple.com>

Add layout test for https://bugs.webkit.org/show_bug.cgi?id=23524.

Reviewed by Oliver Hunt

  • fast/repaint/dynamic-table-vertical-alignment-change.html: Added.
  • platform/mac/fast/repaint/dynamic-table-vertical-alignment-change-expected.checksum: Added.
  • platform/mac/fast/repaint/dynamic-table-vertical-alignment-change-expected.png: Added.
  • platform/mac/fast/repaint/dynamic-table-vertical-alignment-change-expected.txt: Added.
7:02 PM Changeset in webkit [40237] by Darin Adler
  • 4 edits in trunk

JavaScriptCore:

2009-01-25 Darin Adler <Darin Adler>

Reviewed by Mark Rowe.

Bug 23352: Turn on more compiler warnings in the Mac build
https://bugs.webkit.org/show_bug.cgi?id=23352

Turn on the following warnings:

-Wcast-qual
-Wextra-tokens
-Wformat=2
-Winit-self
-Wmissing-noreturn
-Wpacked
-Wrendundant-decls

  • Configurations/Base.xcconfig: Added the new warnings. Switched to -Wextra instead of -W for clarity since we don't have to support the older versions of gcc that require the old -W syntax. Since we now use -Wformat=2, removed -Wformat-security. Also removed -Wno-format-y2k since we can have that one on now.

WebCore:

2009-01-25 Darin Adler <Darin Adler>

Reviewed by Mark Rowe.

Bug 23352: Turn on more compiler warnings in the Mac build
https://bugs.webkit.org/show_bug.cgi?id=23352

Turn on the following warnings:

-Wcast-qual
-Wextra-tokens
-Wformat=2
-Winit-self
-Wmissing-noreturn
-Wpacked
-Wrendundant-decls

  • Configurations/Base.xcconfig: Added the new warnings. Switched to -Wextra instead of -W for clarity since we don't have to support the older versions of gcc that require the old -W syntax. Since we now use -Wformat=2, removed -Wformat-security. Also removed -Wno-format-y2k since we can have that one on now.
5:32 PM Changeset in webkit [40236] by mitz@apple.com
  • 3 edits
    2 adds in trunk

WebCore:

Reviewed by Oliver Hunt.

  • fix <rdar://problem/6525618> REGRESSION (r39566): NewsFire crashes in string hashing code when opening a Digg RSS article

Test: fast/loader/null-request-after-willSendRequest.html

  • loader/FrameLoader.cpp: (WebCore::FrameLoader::loadItem): Null-check the request returned from the client's willSendRequest method.

LayoutTests:

Reviewed by Oliver Hunt.

  • test for <rdar://problem/6525618> REGRESSION (r39566): NewsFire crashes in string hashing code when opening a Digg RSS article
  • fast/loader/null-request-after-willSendRequest-expected.txt: Added.
  • fast/loader/null-request-after-willSendRequest.html: Added.
4:47 PM Changeset in webkit [40235] by hyatt@apple.com
  • 4 edits in trunk/WebCore

2009-01-25 David Hyatt <hyatt@apple.com>

Fix for <rdar://problem/6525392> REGRESSION (r40180): Scroll wheel events over text scroll the page
instead of the ancestor overflow (23525)


Make sure that we always call scroll() on the nearest enclosing RenderBox. No test case is possible
here, since wheel scrolling is currently untestable (the offset varies from machine to machine).

Reviewed by Dan Bernstein

  • page/EventHandler.cpp: (WebCore::scrollAndAcceptEvent): (WebCore::EventHandler::scrollOverflow):
  • rendering/RenderObject.cpp: (WebCore::RenderObject::enclosingBox):
  • rendering/RenderObject.h:
3:42 PM Changeset in webkit [40234] by Darin Adler
  • 2 edits in trunk/WebCore

2009-01-25 Darin Adler <Darin Adler>

Reviewed by Dan Bernstein.

Bug 23538: REGRESSION (r39969): Garbage text instead of blank content rendered when plug-ins are disabled
https://bugs.webkit.org/show_bug.cgi?id=23538
rdar://problem/6523719

I'm not sure how to make a regression test for this, since it depends on plug-ins being disabled.

The main problem here is that when plug-ins were disabled, the code ignored the classId attribute and
the <embed> element entirely. That resulted in a page treating a Flash document as plain HTML rather
than doing fallback.

  • rendering/RenderPartObject.cpp: (WebCore::createClassIdToTypeMap): Added. Broke this out into a separate function so we could get rid of an inelegant if statement. (WebCore::activeXType): Added. To avoid repeating the MIME type for ActiveX and possibly having a typo. (WebCore::havePlugin): Added. Helper function to make sure we don't forget the null check. (WebCore::serviceTypeForClassId): Give this function a return value since that's a more natural way to return a string than an "out" parameter. Fixed the logic to only prefer the ActiveX type over the type guessed from the classId when there actually is an ActiveX plug-in to use. The old function assumed there was one, which I presume right for Chrome on Windows when plug-ins are enabled, but wrong in many other cases, and wrong all the time for all clients on Mac. We don't want to assume either way. Use the new havePlugin function so we handle the case where pluginData is 0. (WebCore::shouldUseEmbedDescendant): Renamed. Simplified the comment. Changed to use serviceTypeForClassId instead of the old version that used an out parameter. Always use the <embed> if there isn't a plug-in that knows how to handle <object> elements. (WebCore::RenderPartObject::updateWidget): Removed null checks of pluginData. The two functions that use this data still need to be called; they still do something even if no plug-ins are present. And they have now been corrected to handle 0 properly.
1:19 PM Changeset in webkit [40233] by Darin Adler
  • 2 edits in trunk/WebCore

2009-01-25 Darin Adler <Darin Adler>

  • rendering/RenderMenuList.cpp: Fix build by adding back needed include.
1:11 PM Changeset in webkit [40232] by Darin Adler
  • 2 edits in trunk/JavaScriptCore

2009-01-25 Judit Jasz <jasy@inf.u-szeged.hu>

Reviewed by Darin Adler.


Compilation problem fixing
http://bugs.webkit.org/show_bug.cgi?id=23497

  • jit/JITCall.cpp: (JSC::JIT::compileOpCall): Use JSValuePtr::encode.
12:27 PM Changeset in webkit [40231] by Darin Adler
  • 5 edits in trunk

JavaScriptCore:

2009-01-25 Darin Adler <Darin Adler>

Reviewed by Sam Weinig.

Bug 23352: Turn on more compiler warnings in the Mac build
https://bugs.webkit.org/show_bug.cgi?id=23352

Fourth patch: Deal with the last few stray warnings.

  • parser/Parser.cpp: Only declare jscyyparse if it's not already declared. This makes both separate compilation and all-in-one compilation work with the -Wredundant-decls warning.

WebCore:

2009-01-25 Darin Adler <Darin Adler>

Reviewed by Sam Weinig.

Bug 23352: Turn on more compiler warnings in the Mac build
https://bugs.webkit.org/show_bug.cgi?id=23352

Fourth patch: Deal with the last few stray warnings.

  • rendering/RenderBlock.cpp: (WebCore::RenderBlock::firstLineBlock): Handle the const_cast a little better. Also make the local variable be a RenderBlock so the cast is closer to the code that guarantees it's correct.
  • rendering/SVGRenderTreeAsText.cpp: (WebCore::writeStyle): Put the enum into a local variable that's a built-in type before using it with TextStream, so we don't get a warning due to -Wsign-promo.
12:25 PM Changeset in webkit [40230] by Darin Adler
  • 4 edits in trunk/JavaScriptCore

2009-01-25 Darin Adler <Darin Adler>

Reviewed by Sam Weinig.

Bug 23352: Turn on more compiler warnings in the Mac build
https://bugs.webkit.org/show_bug.cgi?id=23352

Third patch: Use the noreturn attribute on functions that don't
return to prepare for the use of the -Wmissing-noreturn warning.

  • jit/JITCall.cpp: (JSC::unreachable): Added NO_RETURN.
  • jsc.cpp: (functionQuit): Ditto. (printUsageStatement): Ditto.
  • wtf/AlwaysInline.h: Added definition of NO_RETURN.
12:23 PM Changeset in webkit [40229] by Darin Adler
  • 43 edits in trunk

WebCore:

2009-01-25 Darin Adler <Darin Adler>

Reviewed by Sam Weinig.

Bug 23522: use checked casts for render tree
https://bugs.webkit.org/show_bug.cgi?id=23522

Step one: RenderText.

Also change set of RenderFlow* to be a ListHashSet as the comment in the
header indicated.

  • dom/CharacterData.cpp: (WebCore::CharacterData::setData): Use toRenderText. (WebCore::CharacterData::appendData): Ditto. (WebCore::CharacterData::insertData): Ditto. (WebCore::CharacterData::deleteData): Ditto. (WebCore::CharacterData::replaceData): Ditto.
  • dom/ContainerNode.cpp: (WebCore::ContainerNode::getUpperLeftCorner): Ditto. (WebCore::ContainerNode::getLowerRightCorner): Ditto.
  • dom/Position.cpp: (WebCore::nextRenderedEditable): Ditto. (WebCore::previousRenderedEditable): Ditto. (WebCore::Position::renderedOffset): Ditto. Also use function members instead of data members of InlineTextBox. (WebCore::Position::upstream): Ditto. (WebCore::Position::downstream): Ditto. (WebCore::Position::hasRenderedNonAnonymousDescendantsWithHeight): Ditto. (WebCore::Position::inRenderedText): Ditto. (WebCore::Position::isRenderedCharacter): Ditto. (WebCore::searchAheadForBetterMatch): Ditto. (WebCore::Position::getInlineBoxAndOffset): Ditto.
  • dom/Range.cpp: Added include of VisiblePosition.h now that it's no longer included in RenderObject.h.
  • dom/Text.cpp: (WebCore::Text::splitText): Use toRenderText. (WebCore::Text::recalcStyle): Ditto.
  • editing/CompositeEditCommand.cpp: (WebCore::CompositeEditCommand::deleteInsignificantText): Ditto.
  • editing/SelectionController.cpp: (WebCore::SelectionController::debugRenderer): Ditto.
  • editing/TextIterator.cpp: (WebCore::TextIterator::handleTextNode): Ditto. (WebCore::TextIterator::handleTextBox): Ditto. (WebCore::TextIterator::emitText): Ditto. (WebCore::SimplifiedBackwardsTextIterator::handleTextNode): Ditto.
  • editing/VisiblePosition.cpp: Added include of FloatQuad.h now that it's no longer included in RenderObject.h.
  • inspector/InspectorController.cpp: Ditto.
  • page/Frame.cpp: Ditto.
  • rendering/RenderBox.cpp: Ditto.
  • rendering/RenderInline.cpp: Ditto.
  • rendering/RenderPath.cpp: Ditto.
  • rendering/RenderSVGContainer.cpp: Ditto.
  • rendering/RenderSVGImage.cpp: Ditto.
  • rendering/RenderSVGInlineText.cpp: Ditto.
  • rendering/RenderSVGTSpan.cpp: Ditto.
  • rendering/RenderSVGText.cpp: Ditto.
  • rendering/RenderSVGTextPath.cpp: Ditto.
  • rendering/RenderTableCell.cpp: Ditto.
  • rendering/RenderView.cpp: Ditto.
  • editing/visible_units.cpp: (WebCore::startPositionForLine): Use function members instead of data members of InlineTextBox. (WebCore::endPositionForLine): Ditto. (WebCore::startOfParagraph): Use toRenderText. (WebCore::endOfParagraph): Ditto.
  • page/AccessibilityRenderObject.cpp: (WebCore::AccessibilityRenderObject::accessibilityIsIgnored): Use toRenderText.
  • rendering/InlineFlowBox.cpp: (WebCore::InlineFlowBox::placeBoxesHorizontally): Ditto.
  • rendering/InlineTextBox.cpp: (WebCore::InlineTextBox::deleteLine): Ditto. (WebCore::InlineTextBox::extractLine): Ditto. (WebCore::InlineTextBox::attachLine): Ditto. (WebCore::InlineTextBox::placeEllipsisBox): Ditto. (WebCore::InlineTextBox::paintDecoration): Ditto. (WebCore::InlineTextBox::paintCompositionUnderline): Ditto. (WebCore::InlineTextBox::offsetForPosition): Ditto. (WebCore::InlineTextBox::positionForOffset): Ditto.
  • rendering/InlineTextBox.h: Made most members private. Use toRenderText.
  • rendering/RenderArena.cpp: (WebCore::RenderArena::allocate): Use static_cast instead of C-style cast. (WebCore::RenderArena::free): Ditto.
  • rendering/RenderBlock.cpp: (WebCore::RenderBlock::addContinuationWithOutline): Use ListHashSet<RenderFlow*> instead of RenderFlowSequencedSet. (WebCore::RenderBlock::paintContinuationOutlines): Ditto. (WebCore::stripTrailingSpace): Ditto. (WebCore::RenderBlock::calcInlinePrefWidths): Ditto. (WebCore::RenderBlock::updateFirstLetter): Ditto.
  • rendering/RenderContainer.cpp: (WebCore::RenderContainer::addChild): Use toRenderText.
  • rendering/RenderFlow.cpp: (WebCore::RenderFlow::dirtyLinesFromChangedChild): Use ListHashSet<RenderFlow*> instead of RenderFlowSequencedSet. (WebCore::RenderFlow::paintLines): Ditto.
  • rendering/RenderMenuList.cpp: Removed some unneeded includes.
  • rendering/RenderMenuList.h: Added now-needed forward declaration of RenderText. Made more members private.
  • rendering/RenderObject.cpp: Updated includes. (WebCore::RenderObject::isEditable): Use toRenderText. (WebCore::RenderObject::positionForPoint): Made non-inline so we wouldn't have to include VisiblePosition.h in the header just for this.
  • rendering/RenderObject.h: Removed unneeded includes and forward declarations. Changed special vertical position values to be constants rather than an enum. Eliminated RenderFlowSequencedSet, and changed clients to use ListHashSet<RenderFlow*>.
  • rendering/RenderText.cpp: (WebCore::RenderText::findNextInlineTextBox): Use function members instead of data members of InlineTextBox. (WebCore::RenderText::positionForCoordinates): Ditto. (WebCore::isInlineFlowOrEmptyText): Use toRenderText. (WebCore::RenderText::previousCharacter): Use function members instead of data members of InlineTextBox. (WebCore::RenderText::position): Ditto. (WebCore::RenderText::caretMinOffset): Ditto. (WebCore::RenderText::caretMaxOffset): Ditto. (WebCore::RenderText::caretMaxRenderedOffset): Ditto.
  • rendering/RenderText.h: Added definition of toRenderText.
  • rendering/RenderTextControl.cpp: (WebCore::RenderTextControl::textWithHardLineBreaks): Use toRenderText.
  • rendering/RenderTreeAsText.cpp: (WebCore::operator<<): Use toRenderText and toRenderBox. (WebCore::writeTextRun): Ditto. (WebCore::write): Ditto.
  • rendering/bidi.cpp: (WebCore::InlineIterator::increment): Use toRenderText. (WebCore::InlineIterator::current): Ditto. (WebCore::checkMidpoints): Ditto. (WebCore::RenderBlock::computeHorizontalPositionsForLine): Ditto. (WebCore::RenderBlock::layoutInlineChildren): Ditto. (WebCore::RenderBlock::determineStartPosition): Ditto. (WebCore::shouldSkipWhitespaceAfterStartObject): Ditto. (WebCore::RenderBlock::findNextLineBreak): Ditto.

WebKit/mac:

2009-01-25 Darin Adler <Darin Adler>

Reviewed by Sam Weinig.

Bug 23522: use checked casts for render tree
https://bugs.webkit.org/show_bug.cgi?id=23522

Step one: RenderText.

  • WebView/WebRenderNode.mm: (copyRenderNode): Use toRenderText.
9:29 AM Changeset in webkit [40228] by Simon Hausmann
  • 3 edits in trunk/WebKit/qt

2009-01-25 Urs Wolfer <uwolfer@kde.org>

Reviewed by Simon Hausmann.

Add QWebPage::SelectAll to WebAction enum to select all content.

https://bugs.webkit.org/show_bug.cgi?id=22946

9:26 AM Changeset in webkit [40227] by Simon Hausmann
  • 2 edits in trunk/WebCore

2009-01-25 Thiago Macieira <thiago.macieira@nokia.com>

Reviewed by Simon Hausmann.

Fix gcc compiler warning (deprecated conversion from constant string to char*)

"" cannot be stored in a char*

9:22 AM Changeset in webkit [40226] by Simon Hausmann
  • 2 edits in trunk/WebKit/qt

2009-01-25 David Boddie <dboddie@trolltech.com>

Reviewed by Simon Hausmann.

Doc: Fixed the terminology used.

9:20 AM Changeset in webkit [40225] by Simon Hausmann
  • 2 edits in trunk/WebKit/qt

2009-01-25 Thiago Macieira <thiago.macieira@nokia.com>

Reviewed by Simon Hausmann.

Rename links from trolltech.com to qtsoftware.com

9:04 AM Changeset in webkit [40224] by Simon Hausmann
  • 2 edits in trunk/WebKit/qt

2009-01-25 Tor Arne Vestbø <tavestbo@trolltech.com>

Reviewed by Simon Hausmann.

Make QWebPage auto-test more robust by cleaning up generated files

Sometimes the auto-test may segfault, leaving behind files because the
call to cleanupTestCase() never happens, so we also clean up the files
at initTestCase() just to make sure we're running in a clean environment.

8:27 AM QtWebKitJournal edited by Simon Hausmann
(diff)
8:21 AM QtWebKitTodo edited by Simon Hausmann
(diff)
6:56 AM Changeset in webkit [40223] by Simon Hausmann
  • 2 edits in trunk/WebKit/qt

2008-12-20 Urs Wolfer <uwolfer@kde.org>

Reviewed by Simon Hausmann.

Fix: compile qwebhistory.h with pendantic comiler flag.

https://bugs.webkit.org/show_bug.cgi?id=22947

4:03 AM Changeset in webkit [40222] by ap@webkit.org
  • 1 edit in trunk/WebCore/ChangeLog

Remove a slightly misleading comment from ChangeLog - the issue is related to bug 23500, but not the same.

3:59 AM Changeset in webkit [40221] by ap@webkit.org
  • 12 edits
    2 adds in trunk

Reviewed by Darin Adler.

<rdar://problem/5954398> REGRESSION: 1.1% PLT regression from 33577 and 33578 (encoding fixes)

WebCore:

Changed single argument KURL constructors back to always expect an already encoded string,
eliminating extra conversions.

This is a rather unstable situation, as it is often unclear whether a given string is safe
to convert to KURL without resolving. I think that going forward, the solution is to try to
keep encoded URLs as KURL instances, and not as strings.

  • platform/KURL.h: Updated comments.
  • platform/KURL.cpp: (WebCore::KURL::KURL): In debug builds, verify that the passed string is ASCII-only. The intention is to verify that it is already parsed and encoded by KURL or equivalent code, but since encoding is scheme-dependent, such a verification would be quite complicated. Don't encode the string as UTF-8, as it supposed to be ASCII-only. Removed a hack that made strings beginning with "/" turn into "file:" URLs. I didn't find any reason for it to exist, but I saw several cases where this code path was taken inadvertently (see examples in LayoutTests/ChangeLog). (WebCore::KURL::setProtocol): Using a user-provided string without validation or encoding is clearly wrong here (e.g., the "protocol" can be set to a full URL, effectively replacing the old one), and an already encoded string is expected by parse(). In debug builds, non-ASCII input will make an assertion in parse() fail. Added a FIXME. (WebCore::KURL::setHost): Ditto. (WebCore::KURL::setPort): Ditto. (WebCore::KURL::setHostAndPort): Ditto. (WebCore::KURL::setUser): Ditto. (WebCore::KURL::setPass): Ditto. (WebCore::KURL::setRef): Ditto. (WebCore::KURL::setQuery): Ditto. (WebCore::KURL::setPath): Ditto. Note that problems described in bug 23500 mask some of the problems in release builds currently, as the incorrectly parsed URL is ignored. (WebCore::KURL::parse): Verify that the passed string is already encoded.
  • html/HTMLLinkElement.cpp: (WebCore::HTMLLinkElement::parseMappedAttribute): (WebCore::HTMLLinkElement::process):
  • html/HTMLLinkElement.h: Changed to avoid using invalid URLs (this was causing problems on DNS prefetch tests, see LayoutTests/ChangeLog).
  • loader/FrameLoader.cpp: (WebCore::FrameLoader::init): Create an empty KURL without indirection for a small speedup. (WebCore::FrameLoader::requestFrame): Resolve and encode javascript URLs properly, now that String to KURL conversion requires the string to be already encoded.
  • page/DOMWindow.cpp: (WebCore::DOMWindow::postMessage): Resolve and encode the origin. HTML5 seems a little unclear on how this should work (it talks about "either parsing it as a URL, or resolving it", and then somehow compares unaltered targetOrigin string to a security origin object), so I just made the code as close to what we already had as possible.

LayoutTests:

  • http/tests/misc/dns-prefetch-control-expected.txt:
  • http/tests/misc/dns-prefetch-control.html: Google documentation for DNS Prefetch makes use of net-path relative URLs (server-name), explaining that scheme is not necessary. This is of course true, but this test uses data: subframes, and data: is a non-hierachical scheme, so resolving such URLs fails, resulting in a KURL object that is not valid. WebKit used to ignore this, and tried to create a URL from this string again, now with a single argument KURL constructor, which resulted in a valid file: URL, which was successfully used! Both issues have been corrected in WebCore, so I had to change the test to no longer use relative net-path URLs.
  • http/tests/security/postMessage/invalid-origin-throws-exception-expected.txt:
  • http/tests/security/postMessage/invalid-origin-throws-exception.html: URLs that start with "/" are no longer converted to "file:" ones, so the results now match Firefox.
  • http/tests/uri/resolve-encoding-relative-expected.txt: Added.
  • http/tests/uri/resolve-encoding-relative.html: Added. Added a test to cover some cases of relative URL resolving that were not covered before. Expected results are taken from Firefox 3, and WebKit doesn't match in how fragments are encoded (we use document encoding, while Firefox uses UTF-8). Since fragments are not sent in HTTP requests, this is not too dangerous, but the Firefox behavior looks more consistent.

Jan 24, 2009:

4:34 PM Changeset in webkit [40220] by treat@webkit.org
  • 2 edits in trunk/WebKit/qt

Oops, fix the Qt build.

2:41 PM Changeset in webkit [40219] by eric.carlson@apple.com
  • 3 edits in trunk/LayoutTests

2009-01-24 Eric Carlson <eric.carlson@apple.com>

<video> controls visibility test needs to dump render tree as text because
the test does not always end at the same time, so the timeline slider thumb
is not always at the same position.

  • media/video-controls-visible-audio-only.html:
  • platform/mac/media/video-controls-visible-audio-only-expected.txt:
2:39 PM Changeset in webkit [40218] by treat@webkit.org
  • 4 edits in trunk/WebKit/qt

Add QWebFrame::renderContents() method which allows arbitary rendering
of any content region within the QWebFrame. It also does not draw any
scrollbars.

12:59 PM Changeset in webkit [40217] by Darin Adler
  • 3 edits in trunk/LayoutTests

2009-01-24 Darin Adler <Darin Adler>

Try to fix expected results for new video element test.

  • platform/mac/media/video-controls-visible-audio-only-expected.png: Landed new result generated on my machine.
  • platform/mac/media/video-controls-visible-audio-only-expected.txt: Ditto.
12:40 PM Changeset in webkit [40216] by Darin Adler
  • 2 edits in trunk/WebCore

2009-01-24 Darin Adler <Darin Adler>

Try to fix Qt build.

  • WebCore.pro: Added JSTextCustom.cpp.
7:10 AM Changeset in webkit [40215] by cmarrin@apple.com
  • 8 edits in trunk/WebCore

https://bugs.webkit.org/show_bug.cgi?id=23467

Change styleAvailable functionality to be a linked list
rather than scanning every CompositeAnimation for
Animations that are waiting for styleAvailable. This has
potential for large performance improvement in cases where
there are many animations firing at once. But it will also
help in my next fix, which is to synchronize software and
accelerated animations.

I also changed slightly when the beginAnimationUpdate and
endAnimationUpdate calls are made. But this has no real
effect on performance or behavior.

1:55 AM Changeset in webkit [40214] by oliver@apple.com
  • 2 edits in trunk/JavaScriptCore

Force inlining of Lexer::matchPunctuator

Reviewed by Maciej Stachowiak.

2.2% win when parsing jQuery, Mootools, Prototype, etc

1:39 AM Changeset in webkit [40213] by ap@webkit.org
  • 5 edits
    2 adds in trunk

Reviewed by Darin Adler.

<rdar://problem/6368059> REGRESSION: URL encoding problems on http://www.cineman.ch

Test: http/tests/xmlhttprequest/encode-request-url-2.html

  • platform/KURL.cpp: (WebCore::appendASCII): Added a helper function. (WebCore::KURL::KURL): Explicitly encode the URL to call two-argument parse() with better specified behavior. (WebCore::KURL::init): Ditto. This avoids trying to round-trip an URL encoded into a byte stream, but not yet transformed to ASCII-only using percent escapes. Since different parts of the byte stream can use different encodings, round-tripping is not possible. (WebCore::KURL::parse): Reverted an earlier change that made the single-argument version of this function convert the string to utf-8. I think that on the remanining code paths, it is correct to assume that the string is all ASCII, but I'm not yet confident enough to drop a FIXME warning.
12:05 AM Changeset in webkit [40212] by jmalonzo@webkit.org
  • 2 edits in trunk/WebCore

2009-01-24 Jan Michael Alonzo <jmalonzo@webkit.org>

Gtk build fix after r40170

  • GNUmakefile.am: Removed editing/RemoveNodeAttributeCommand.cpp and editing/RemoveNodeAttributeCommand.h
Note: See TracTimeline for information about the timeline view.