Timeline
May 10, 2007:
- 10:36 PM Changeset in webkit [21392] by
-
- 1 edit in trunk/LayoutTests/editing/selection/5195166-1.html
This tests behaves differently when it isn't run by itself because
of a bug. Filed it (13673) and added a workaround.
- 10:17 PM Changeset in webkit [21391] by
-
- 2 edits in trunk/WebCore
<rdar://problem/5015522> Bounds rectangle of unloaded images is
drawn briefly while loading
When the image is null and has no size, don't draw the grey
rectangles or alt text any more. Wait for an actual error to
occur with the image before we start showing alt text and borders.
(Images with no source set at all will continue to show alt text and
borders immediately.)
Reviewed by bradee-oh
- rendering/RenderImage.cpp: (WebCore::RenderImage::paint):
- 9:49 PM Changeset in webkit [21390] by
-
- 8 edits4 adds in trunk
LayoutTests:
Reviewed by Darin.
- repaint test and updated results for http://bugs.webkit.org/show_bug.cgi?id=13655 Incomplete repaint when text-shadow is used in a render layer with explicit height
- fast/repaint/layer-full-repaint-expected.checksum: Added.
- fast/repaint/layer-full-repaint-expected.png: Added.
- fast/repaint/layer-full-repaint-expected.txt: Added.
- fast/repaint/layer-full-repaint.html: Added.
- fast/repaint/repaint-resized-overflow-expected.checksum:
- fast/repaint/repaint-resized-overflow-expected.png:
WebCore:
Reviewed by Darin.
- fix http://bugs.webkit.org/show_bug.cgi?id=13655 Incomplete repaint when text-shadow is used in a render layer with explicit height
Test: fast/repaint/layer-full-repaint.html
Removed custom repaint logic from RenderLayer. repaintAfterLayoutIfNeeded()
knows how to do everything we need now. The only catch is that we cannot
rely on its "do a full repaint if the object needs layout" behavior, since
by the time we call it, the needs layout flag has been reset. The solution
is to cache the need for a full repaint in the layer.
- page/FrameView.cpp: (WebCore::FrameView::layout): Removed call to checkForRepaintOnResize().
- rendering/RenderLayer.cpp: (WebCore::RenderLayer::checkForRepaintOnResize): Removed. (WebCore::RenderLayer::RenderLayer): Replaced the m_repaintOverflowOnResize flag with a m_needsFullRepaint flag, which indicates that the layer needs to do a full repaint in the next call to updateLayerPositions(). (WebCore::RenderLayer::updateLayerPositions): Simplified the repaint logic. Either call repaintAfterLayoutIfNeeded() or do a full repaint, depending on m_needsFullRepaint.
- rendering/RenderLayer.h: (WebCore::RenderLayer::setNeedsFullRepaint):
- rendering/RenderObject.cpp: (WebCore::RenderObject::setNeedsLayout): Mark the layer for full repaint.
- 8:51 PM Changeset in webkit [21389] by
-
- 5 edits8 adds in trunk
LayoutTests:
Reviewed by ggaren
<rdar://problem/5195166> Incorrect proposedRange DOMRange passed to WebViewEditing delegate
- editing/selection/5195166-1-expected.checksum: Added.
- editing/selection/5195166-1-expected.png: Added.
- editing/selection/5195166-1-expected.txt: Added.
- editing/selection/5195166-1.html: Added.
- editing/selection/5195166-2-expected.checksum: Added.
- editing/selection/5195166-2-expected.png: Added.
- editing/selection/5195166-2-expected.txt: Added.
- editing/selection/5195166-2.html: Added.
WebCore:
Reviewed by ggaren
<rdar://problem/5195166> Incorrect proposedRange DOMRange passed to WebViewEditing delegate
In setModifyBias, we must cache the start and the end
because the calls to setBase and setExtent can modify
them (added a testcase).
The temporary SelectionController that we use in modify() to
produce the proposed range that will be passed to
shouldChangeSelectedDOMRange must have the same m_modifyBias
as the original SelectionController, or else when the
modification is performed, setModifyBias can swap the base
and the extent incorrectly (added a testcase).
Renamed m_modifyBias to m_lastChangeWasHorizontalExtension.
Renamed setModifyBias to willBeModified.
- editing/SelectionController.cpp: (WebCore::SelectionController::SelectionController): (WebCore::SelectionController::setSelection): (WebCore::SelectionController::willBeModified): (WebCore::SelectionController::modify):
- editing/SelectionController.h: (WebCore::SelectionController::setLastChangeWasHorizontalExtension):
- page/EventHandler.cpp: (WebCore::EventHandler::handleMousePressEventSingleClick): (WebCore::EventHandler::updateSelectionForMouseDragOverPosition):
- 7:09 PM Changeset in webkit [23354] by
-
- 2 edits in branches/WindowsMerge/WebKitWin
Reviewed by Darin Adler.
"IconDatabase::sharedIconDatabase()" => "iconDatabase()" for terseness.
- 7:01 PM Changeset in webkit [21388] by
-
- 11 edits in trunk
WebCore:
Reviewed by Darin Adler.
"IconDatabase::sharedIconDatabase()" => "iconDatabase()" for terseness,
in the style of WebCore::cache().
- WebCore.exp:
- history/HistoryItem.cpp: Removed retainIconInDatabase because calling "retain" in order to release something is really confusing and, now that iconDatabase() is more terse, we don't need this helper to shorten the syntax. (The isEmpty() check is also done by the database, so we don't need it either.)
(WebCore::IconDatabase::~IconDatabase): ASSERT that our destructor isn't
called. We're a singleton, so it's confusing to have tear-down code.
WebKit:
Reviewed by Darin Adler.
"IconDatabase::sharedIconDatabase()" => "iconDatabase()" for terseness.
- 5:39 PM Changeset in webkit [23353] by
-
- 2 edits in branches/WindowsMerge/WebCore
Reviewed by Hyatt.
- bridge/win/FrameWin.cpp: (WebCore::imageFromSelection): Updated to use selectionRect instead of visibleSelectionRect
- 5:26 PM Changeset in webkit [21387] by
-
- 24 edits4 adds in trunk
LayoutTests:
Reviewed by Hyatt.
Test for <rdar://problem/4100616> Doing a "find" in RSS doesn't scroll to result
- fast/overflow/scroll-nested-positioned-layer-in-overflow-expected.checksum: Added.
- fast/overflow/scroll-nested-positioned-layer-in-overflow-expected.png: Added.
- fast/overflow/scroll-nested-positioned-layer-in-overflow-expected.txt: Added.
- fast/overflow/scroll-nested-positioned-layer-in-overflow.html: Added.
WebCore:
Reviewed by Hyatt.
WebCore part of fix for <rdar://problem/4100616> Doing a "find" in RSS doesn't scroll to result
Test: fast/overflow/scroll-nested-positioned-layer-in-overflow.html
Merged visibleSelectionRect into selectionRect. selectionRect() now takes an argument to determine
whether or not to return a rect that clips to the visible content. This change makes all of the implementations of selectionRect
consistent by having them all consider the repaint rect when clipping to visible content.
- page/Frame.cpp: (WebCore::Frame::revealSelection): Call selectionRect with clipToVisibleContent = false, so we can get a rect that's not visible to reveal. (WebCore::Frame::selectionRect): Added clipToVisibleContent argument, and merged visibleSelectionRect into this method. (WebCore::Frame::setIsActive): Use selectionRect instead of visibleSelectionRect.
- page/Frame.h:
- page/mac/FrameMac.mm: (WebCore::Frame::selectionImage): Update layout before creating the image. Use selectionRect instead of visibleSelectionRect.
- page/DragController.cpp: (WebCore::dragLocForSelectionDrag): Use selectionRect instead of visibleSelectionRect.
- rendering/RenderBR.h: (WebCore::RenderBR::selectionRect): Updated argument.
- rendering/RenderBlock.h: (WebCore::RenderBlock::selectionRect): ditto.
- rendering/RenderSVGInlineText.cpp: (WebCore::RenderSVGInlineText::selectionRect): ditto.
- rendering/RenderSVGInlineText.h: ditto.
- rendering/RenderObject.h: (WebCore::RenderObject::selectionRect): ditto. (WebCore::RenderObject::SelectionInfo::SelectionInfo): ditto.
- rendering/RenderView.cpp: (WebCore::RenderView::selectionRect): ditto. (WebCore::RenderView::setSelection): ditto.
- rendering/RenderView.h:
- rendering/RenderText.h:
- rendering/RenderText.cpp: (WebCore::RenderText::selectionRect): Only call computeAbsoluteRepaintRect when clipping to visible content. Otherwise, just adjust the rect to the correct position.
- rendering/RenderListMarker.h:
- rendering/RenderListMarker.cpp: (WebCore::RenderListMarker::selectionRect): To match what we do in RenderText, if we're trying to clip to visible content, just call computeAbsoluteRepaintRect.
- rendering/RenderReplaced.h:
- rendering/RenderReplaced.cpp: (WebCore::RenderReplaced::selectionRect): ditto.
- rendering/RenderLayer.cpp: (WebCore::RenderLayer::scrollRectToVisible): Check for a parent layer at the beginning, so we can try to scroll all of our parent layers first, before trying to scroll the top level view. Also, don't try to scroll overflow layers that have -webkit-line-clamp restricting the height. This will prevent us from revealing text hidden by the slider in Safari RSS.
- WebCore.exp: Update symbols for WebKit.
WebKit:
Reviewed by Hyatt.
WebKit part of fix for <rdar://problem/4100616> Doing a "find" in RSS doesn't scroll to result
Updated to use selectionRect instead of visibleSelectionRect. selectionRect() now returns the visible rect by default.
- WebView/WebHTMLView.mm: (-[WebHTMLView _lookUpInDictionaryFromMenu:]): (-[WebHTMLView selectionImageRect]):
- 4:10 PM Changeset in webkit [21386] by
-
- 2 edits in trunk/LayoutTests/fast/inline
Land updated continuations outline test.
- 3:59 PM Changeset in webkit [21385] by
-
- 2 edits in trunk/WebCore
Fix for:
<rdar://problem/5195272> REGRESSION: broke outline rings for continuations
with empty inline containers
Make sure to only include collapsed top/bottom margins of the block portion
of the continuation if we know for sure that we have inline line boxes before
and after that would prevent the collapse from going further.
In plain English: the focus rings were too tall. :)
Reviewed by beth
- rendering/RenderFlow.cpp: (WebCore::RenderFlow::addFocusRingRects):
- 3:08 PM Changeset in webkit [21384] by
-
- 1 edit in trunk/WebCore/rendering/RenderText.cpp
Back out tweak to add PRE_LINE. Was not part of bug fix and is actually wrong.
- 3:07 PM Changeset in webkit [21383] by
-
- 155 edits4 adds in trunk/LayoutTests/fast/text/whitespace
Add layout test for pre-wrap minwidth when a newline is present.
- 3:02 PM Changeset in webkit [21382] by
-
- 6 edits in S60/trunk/WebKit
naguo, reviewed by sachin
DESC: BrowserNG - Find phonenumber doesn't make a call
http://bugs.webkit.org/show_bug.cgi?id=13614
TSW ID : ISHG-6YFNME
- BrowserControl/src/BrCtl.cpp: (CBrCtl::HandleCommandL):
- BrowserView/inc/SmartLinkHandler.h:
- BrowserView/src/KeyEventHandler.cpp: (CKeyEventHandler::HandleActivateKeysL):
- BrowserView/src/SmartLinkHandler.cpp: (CSmartLinkHandler::HandleMakeCallL):
- group/webkit.mmp:
- 2:55 PM Changeset in webkit [21381] by
-
- 2 edits in trunk/WebCore
Fix for:
<rdar://problem/5067235> REGRESSION: Excessively wide table, impossible to resize
The table used white-space: pre-wrap, which is supported only by WebKit. There
was a bug with the computation of min pref width for pre-wrap text.
Reviewed by mitzpettel
fast/text/white-space/pre-wrap-line-test.html
- rendering/RenderText.cpp: (WebCore::RenderText::calcPrefWidths):
- 2:37 PM Changeset in webkit [21380] by
-
- 5 edits in trunk/WebCore
Reviewed by Oliver
Cleanup from my earlier Java Applet patch. We should keep a central location to query if
a mime type counts as a Java Applet
- html/HTMLObjectElement.cpp: (WebCore::HTMLObjectElement::containsJavaApplet): Query MimeTypeRegistry on the type
- platform/MimeTypeRegistry.cpp: (WebCore::MimeTypeRegistry::isSupportedImageMIMEType): Update style (WebCore::MimeTypeRegistry::isSupportedImageResourceMIMEType): Ditto (WebCore::MimeTypeRegistry::isSupportedNonImageMIMEType): Ditto (WebCore::MimeTypeRegistry::isJavaAppletMIMEType): Perform the Java Applet check
- platform/MimeTypeRegistry.h:
- rendering/RenderPartObject.cpp: (WebCore::RenderPartObject::updateWidget): Query MimeTypeRegistry on the type
- 1:58 PM Changeset in webkit [21379] by
-
- 2 edits in S60/trunk/WebKit
2007-05-09 ligman <joseph.ligman@nokia.com>
Reviewed by Sachin.
DESC: Added a CancelResetEntryPositionL to the history provider to handle cancelled requests
http://bugs.webkit.org/show_bug.cgi?id=13651
- BrowserView/src/WebKitControl.cpp: (CWebKitControl::SyncCancelL):
- 1:58 PM Changeset in webkit [21378] by
-
- 2 edits in S60/branches/3.1m/WebKit
2007-05-09 ligman <joseph.ligman@nokia.com>
Reviewed by Sachin.
DESC: Added a CancelResetEntryPositionL to the history provider to handle cancelled requests
http://bugs.webkit.org/show_bug.cgi?id=13651
- BrowserView/src/WebKitControl.cpp: (CWebKitControl::SyncCancelL):
- 12:17 PM Changeset in webkit [21377] by
-
- 2 edits in trunk/WebKit
Reviewed by Darin.
Fix for <rdar://problem/5191941> Leopard: Adobe Acrobat 8:
Distiller 8 needs same check fix as 4992521
- WebView/WebView.mm: (-[WebView _updateWebCoreSettingsFromPreferences:]): Adobe Distiller needs the same quirk.
- 11:57 AM Changeset in webkit [21376] by
-
- 3 adds in trunk/LayoutTests/editing/selection
<rdar://problem/4720109> Sentence textMarker methods do not work well with empty lines
Add expected result for move-by-sentence-linebreak test case.
- 11:54 AM Changeset in webkit [21375] by
-
- 1 add in trunk/LayoutTests/editing/selection/move-by-sentence-linebreak.html
<rdar://problem/4720109> Sentence textMarker methods do not work well with empty lines
Add a testcase to exercise moving insertion point forward by sentence across lines of text that
includes empty lines.
- 11:50 AM Changeset in webkit [21374] by
-
- 3 edits in trunk/WebCore
<rdar://problem/4720109> Sentence textMarker methods do not work well with empty lines
- bridge/mac/WebCoreAXObject.mm: (-[WebCoreAXObject doAXNextSentenceEndTextMarkerForTextMarker:]): (-[WebCoreAXObject doAXPreviousSentenceStartTextMarkerForTextMarker:]): When a marker position is given, the sentence ax methods automatically shift position by one to make sure not to ask for the current sentence again. This is generally fine except when the position shift over an empty line break, which is should be considered a separate sentence. In this case, if we used the shifted position to ask for sentence boundary, ICU parser is not given the text data containing the newline to correctly determine the sentence boundary. Since the ax sentence method is explicitly shifting the position to ask for sentence boundary, it should make sure not to skip over important character that can be a standalone sentence.
- editing/visible_units.cpp: (WebCore::nextBoundary): When determining boundary, don't stop on a collapsed range, such as newline. Just pick the next valid position to use as boundary.
- 7:54 AM Changeset in webkit [21373] by
-
- 3 edits in S60/trunk/JavaScriptCore
2007-05-09 bujtas <zbujtas@gmail.com>
Reviewed by Sriram
DESC: stack overflow while destroying a huge array. remove ElementNode recursive destruction.
http://bugs.webkit.org/show_bug.cgi?id=13649
- kjs/nodes.cpp: (ElementNode::~ElementNode):
- kjs/nodes.h:
- 7:42 AM Changeset in webkit [21372] by
-
- 3 edits in S60/branches/3.1m/JavaScriptCore
2007-05-09 bujtas <zbujtas@gmail.com>
Reviewed by Sriram
DESC: stack overflow while destroying a huge array. remove ElementNode recursive destruction.
http://bugs.webkit.org/show_bug.cgi?id=13649
- kjs/nodes.cpp: (ElementNode::~ElementNode):
- kjs/nodes.h:
- 7:36 AM Changeset in webkit [21371] by
-
- 2 edits in trunk/JavaScriptCore
Reviewed by Zack
Fix our last three test failures in the JavaScript
tests.
Without change 21367 we would have been at 0 failures
in javascript and layout tests now... ;-)
- 7:16 AM Changeset in webkit [21370] by
-
- 3 edits in S60/branches/3.1m/WebKit
vbradley, reviewed by Zalan
DESC: MLIO-6ZGAN6 - Browser doesn't update loading status
http://bugs.webkit.org/show_bug.cgi?id=13346
- BrowserView/inc/WebKitControl.h:
- BrowserView/src/WebKitControl.cpp: (CWebKitControl::CWebKitControl): (CWebKitControl::ProgressCompleted): (CWebKitControl::IncrementProgressForMoreData): (CWebKitControl::IncrementProgressForLoadComplete): (CWebKitControl::ResetProgress): (CWebKitControl::FinalProgressComplete): (CWebKitControl::ProgressUpdate):
- 7:16 AM Changeset in webkit [21369] by
-
- 3 edits in S60/trunk/WebKit
vbradley, reviewed by Zalan
DESC: MLIO-6ZGAN6 - Browser doesn't update loading status
http://bugs.webkit.org/show_bug.cgi?id=13346
- BrowserView/inc/WebKitControl.h:
- BrowserView/src/WebKitControl.cpp: (CWebKitControl::CWebKitControl): (CWebKitControl::ProgressCompleted): (CWebKitControl::IncrementProgressForMoreData): (CWebKitControl::IncrementProgressForLoadComplete): (CWebKitControl::ResetProgress): (CWebKitControl::FinalProgressComplete): (CWebKitControl::ProgressUpdate):
- 5:48 AM Changeset in webkit [21368] by
-
- 3 edits4 adds in branches/feature-branch
2007-05-10 Eric Seidel <eric@webkit.org>
Reviewed by olliej.
http://bugs.webkit.org/show_bug.cgi?id=11931
PathCG fails to hit on unclosed sub-paths
Test: svg/custom/hit-test-unclosed-subpaths.svg
- platform/graphics/cg/PathCG.cpp: (WebCore::copyClosingSubpathsApplierFunction): (WebCore::copyCGPathClosingSubpaths): (WebCore::Path::contains): use new copy & close function
- 5:31 AM Changeset in webkit [21367] by
-
- 41 edits4 adds in trunk
LayoutTests:
Reviewed by Oliver.
- new test case for: <rdar://problem/5063277> blank screen after login to Citibank Online (accessing document before frame starts loading cancels load) <rdar://problem/5159541> REGRESSION (r20972): Wall Street Journal pages replaced by advertisements (13465)
(The test case covers both scenarios.)
- http/tests/misc/frame-access-during-load-expected.checksum: Added.
- http/tests/misc/frame-access-during-load-expected.png: Added.
- http/tests/misc/frame-access-during-load-expected.txt: Added.
- http/tests/misc/frame-access-during-load.html: Added.
- test results beneficially or harmlessly changed as a result of the above fixes
- css2.1/t0801-c412-hz-box-00-b-a-expected.checksum:
- css2.1/t0801-c412-hz-box-00-b-a-expected.png:
- css2.1/t0801-c412-hz-box-00-b-a-expected.txt: This reflects an <object> containing an image now creating an image renderer.
- dom/xhtml/level2/html/HTMLIFrameElement11-expected.txt: This is updated to a slightly less bad failure for access to a frame that's not loaded yet.
The following test results now reflect the frame removal that the test was testing:
- fast/dom/clientWidthAfterDocumentIsRemoved-expected.checksum:
- fast/dom/clientWidthAfterDocumentIsRemoved-expected.png:
- fast/dom/clientWidthAfterDocumentIsRemoved-expected.txt:
- fast/dom/replaceChild-expected.checksum:
- fast/dom/replaceChild-expected.png:
- fast/dom/replaceChild-expected.txt:
The following tests results now reflect empty document content for iframes that never load anything:
- fast/events/focusingUnloadedFrame-expected.txt:
- tables/mozilla_expected_failures/bugs/bug137388-1-expected.txt:
- tables/mozilla_expected_failures/bugs/bug137388-2-expected.txt:
WebCore:
Reviewed by Oliver.
- WebCore part of fix for: <rdar://problem/5063277> blank screen after login to Citibank Online (accessing document before frame starts loading cancels load) <rdar://problem/5159541> REGRESSION (r20972): Wall Street Journal pages replaced by advertisements (13465)
The basic approach is to have Frames start out containing an empty document instead of absolutely nothing,
so there is no need to initialize them on demand. Various side effects of that cause both of these bugs.
However, this caused many regressions so I had to fix the fallout.
- WebCore.exp: fix symbol exports
- bindings/js/kjs_window.cpp: (KJS::createNewWindow): useless "created" bool (we don't need it here) (KJS::WindowFunc::callAsFunction): detect if we created a new frame, because if so, we need to initialize the domain (can't count on it not having a document), also don't try to make a new document for it. Also, stop properly.
- css/cssstyleselector.cpp: (WebCore::CSSStyleSelector::CSSStyleSelector): don't count on document having a view here
- html/HTMLObjectElement.cpp: (WebCore::HTMLObjectElement::isImageType): Ask client, to match how other <object> renderer decisions are made.
- loader/FrameLoader.cpp: (WebCore::FrameLoader::FrameLoader): Initialize new data members (WebCore::FrameLoader::init): Do the slightly tricky sequence of steps to properly make an empty document with everything hooked up. (WebCore::FrameLoader::createWindow): Added "created" bool. (WebCore::FrameLoader::stopLoading): (whitespace change) (WebCore::FrameLoader::begin): Don't try to create an empty document. (WebCore::FrameLoader::finishedParsing): If creating an initial empty document, don't do any of this work. (WebCore::FrameLoader::checkCompleted): Do checkLoadComplete() as well. (WebCore::FrameLoader::baseURL): don't check for null document (WebCore::FrameLoader::baseTarget): ditto (WebCore::FrameLoader::completeURL): ditto (WebCore::FrameLoader::didTellBridgeAboutLoad): ditto (WebCore::FrameLoader::scheduleLocationChange): determine duringLoad differently; doc won't be null. (WebCore::FrameLoader::gotoAnchor): don't check for null document (WebCore::FrameLoader::canTarget): don't check for null document (WebCore::FrameLoader::stopForUserCancel): new method for explicit stops like window.stop(). (WebCore::FrameLoader::transitionToCommitted): check for pre-loaded state properly (WebCore::FrameLoader::createEmptyDocument): removed (WebCore::FrameLoader::checkLoadCompleteForThisFrame): don't send delegate callbacks when making initial doc. (WebCore::FrameLoader::tokenizerProcessedData): Assume document; just checkCompleted now that it does checkLoadComplete. (WebCore::FrameLoader::receivedMainResourceError): assume document (WebCore::FrameLoader::saveDocumentState): Assume there's a document except during initial load (WebCore::FrameLoader::mainReceivedCompleteError): do checkCompleted, not checkLoadComplete (WebCore::FrameLoader::continueLoadWithData): assume document
- loader/FrameLoader.h:
- loader/MainResourceLoader.cpp: (WebCore::MainResourceLoader::receivedError): Add more ref protection and do things in a slightly different order.
- page/DOMWindow.cpp: (WebCore::DOMWindow::document): don't force document creation, just assert there is one.
- page/Frame.cpp: (WebCore::Frame::init): Added init method. (WebCore::Frame::pageDestroyed): when a frame is removed, make sure to check if the parent is done loading.
- page/Frame.h:
- page/mac/WebCoreFrameBridge.mm: (-[WebCoreFrameBridge stringByEvaluatingJavaScriptFromString:forceUserGesture:]): No need to force document. (-[WebCoreFrameBridge aeDescByEvaluatingJavaScriptFromString:]): ditto
- platform/graphics/svg/SVGImage.cpp: (WebCore::SVGImage::dataChanged): init the frame
- rendering/RenderPart.cpp: (WebCore::RenderPart::updateWidgetPosition): If a subframe needs layout, then lay it out even if the bounds did not change; the content size might be wrong.
- rendering/RenderTreeAsText.cpp: (WebCore::externalRepresentation): Don't crash if the frame lacks a view.
WebKit:
Reviewed by Oliver.
- WebKit part of fix for: <rdar://problem/5063277> blank screen after login to Citibank Online (accessing document before frame starts loading cancels load) <rdar://problem/5159541> REGRESSION (r20972): Wall Street Journal pages replaced by advertisements (13465)
The basic approach is to have Frames start out containing an empty document instead of absolutely nothing,
so there is no need to initialize them on demand. Various side effects of that cause both of these bugs.
However, this caused many regressions so I had to fix the fallout.
- WebCoreSupport/WebChromeClient.mm: (WebChromeClient::takeFocus): Avoid focus cycle problems (can happen in DumpRenderTree with initial empty document now).
- WebCoreSupport/WebFrameBridge.mm: (-[WebFrameBridge finishInitializingWithPage:frameName:frameView:ownerElement:]): init the frame. (-[WebFrameBridge determineObjectFromMIMEType:URL:]): return image type when appropriate
- WebView/WebFrame.mm: (-[WebFrame stopLoading]): use stopForUserCancel().
- WebView/WebFrameView.mm: (-[WebFrameView _makeDocumentViewForDataSource:]): assume html when no mime type available.
- WebView/WebView.mm: (-[WebView becomeFirstResponder]): Track whether we are becoming first responder from outside the view. (-[WebView _becomingFirstResponderFromOutside]): Return this value.
- WebView/WebViewInternal.h:
WebKitTools:
Reviewed by Oliver.
- don't clear events whenever an EventSendingController goes away, only do it at predictable times, since destroying a subframe can make one go away
(Discovered while fixing:
<rdar://problem/5063277> blank screen after login to Citibank Online (accessing document before frame starts loading cancels load)
<rdar://problem/5159541> REGRESSION (r20972): Wall Street Journal pages replaced by advertisements (13465)
- DumpRenderTree/DumpRenderTree.m: (runTest): explicitly clear saved events after every page load
- DumpRenderTree/EventSendingController.h:
- DumpRenderTree/EventSendingController.m: (-[EventSendingController dealloc]): don't clear saved events here... (+[EventSendingController clearSavedEvents]): do it here
- Scripts/check-for-global-initializers:
- 5:08 AM Changeset in webkit [21366] by
-
- 4 adds in trunk/LayoutTests/fast/text/whitespace
Add layout test for 13654.
- 5:08 AM Changeset in webkit [23352] by
-
- 3 edits in branches/WindowsMerge/WebKitWin
Reviewed by Oliver.
- WebKitWin part of fix for: <rdar://problem/5063277> blank screen after login to Citibank Online (accessing document before frame starts loading cancels load) <rdar://problem/5159541> REGRESSION (r20972): Wall Street Journal pages replaced by advertisements (13465)
The basic approach is to have Frames start out containing an empty document instead of absolutely nothing,
so there is no need to initialize them on demand. Various side effects of that cause both of these bugs.
However, this caused many regressions so I had to fix the fallout.
- WebFrame.cpp: (WebFrame::createFrame): init frame
- WebView.cpp: (WebView::initWithFrame): init frame (WebView::stringByEvaluatingJavaScriptFromString): don't create empty document
- 5:06 AM Changeset in webkit [21365] by
-
- 2 edits in trunk/WebCore
Fix for:
<rdar://problem/5146757> REGRESSION: div that wrapped to screen width in
tiger no longer wraps
Reviewed by mitz
fast/text/whitespace/normal-after-nowrap-breaking.html
- rendering/RenderBlock.cpp: (WebCore::RenderBlock::calcInlinePrefWidths):
- 3:48 AM Changeset in webkit [21364] by
-
- 2 edits in trunk/WebKitTools
2007-05-10 Mark Rowe <mrowe@apple.com>
Build fix for DumpRenderTree. Enable Objective-C exceptions in Release configuration.
- DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
- 3:14 AM Changeset in webkit [21363] by
-
- 3 edits in trunk/WebCore
Fix for:
<rdar://problem/4778099> Links with nested continuations fail to
paint their outlines (11255)
Fix multiple bugs with outline painting of continuations to ensure that
all combos work (empty/full inline - block with/without margins -
empty/full inline).
Reviewed by mitz
fast/inline/continuation-outlines.html
- rendering/RenderBlock.cpp: (WebCore::RenderBlock::paintObject):
- rendering/RenderFlow.cpp: (WebCore::RenderFlow::addFocusRingRects):
- 3:13 AM Changeset in webkit [21362] by
-
- 4 adds in trunk/LayoutTests/fast/inline
Add continuation outline drawing test.
- 2:29 AM Changeset in webkit [21361] by
-
- 4 adds in trunk/LayoutTests/fast/overflow
Add layout test to cover RTL overflow issue.
- 2:28 AM Changeset in webkit [21360] by
-
- 2 edits in trunk/WebCore
Fix for:
<rdar://problem/5193529> REGRESSION: RTL Overflows scrollbar not showing
when they should be
Fallout from fix for bug 11926. Make sure to restrict the fix to the
RenderView for now, since the full-blown overflow case is pretty involved.
Reviewed by mitzpettel
fast/overflow/unreachable-content-bug-rtl.html
- rendering/RenderBlock.cpp: (WebCore::RenderBlock::lowestPosition): (WebCore::RenderBlock::rightmostPosition): (WebCore::RenderBlock::leftmostPosition):
- 1:55 AM Changeset in webkit [21359] by
-
- 5 edits2 adds in trunk
LayoutTests:
Reviewed by Oliver
Fix for http://bugs.webkit.org/show_bug.cgi?id=13636 and <rdar://problem/5190816>
When creating the applets collection, be sure to only count Objects if they contain
a java applet
- dom/html/level2/html/AppletsCollection-expected.txt: Added.
- dom/html/level2/html/AppletsCollection.html: Added.
WebCore:
Reviewed by Oliver
Fix for http://bugs.webkit.org/show_bug.cgi?id=13636 and <rdar://problem/5190816>
When creating the applets collection, be sure to only count Objects if they contain
a java applet
- html/HTMLCollection.cpp: (WebCore::HTMLCollection::traverseNextItem): Add the qualifier for Objects that containsJavaApplet() must be true
- html/HTMLObjectElement.cpp: (WebCore::HTMLObjectElement::containsJavaApplet): Check this Object element and inner nodes for any Java applets
- html/HTMLObjectElement.h:
- 1:52 AM Changeset in webkit [21358] by
-
- 2 edits in trunk/WebCore
Fix for:
<rdar://problem/4694859> SAP: HTML tags with overflow:hidden consume
space on page, do not consume space in Firefox (11926)
Make sure that unreachable objects along one axis (e.g., top/left) do not
contribute to the scrollable area in the opposite axis (e.g., right/bottom).
Reviewed by olliej
fast/overflow/unreachable-content-test.html
- rendering/RenderBlock.cpp: (WebCore::RenderBlock::lowestPosition): (WebCore::RenderBlock::rightmostPosition): (WebCore::RenderBlock::leftmostPosition):
- 1:50 AM Changeset in webkit [21357] by
-
- 4 adds in trunk/LayoutTests/fast/overflow
Add layout test for bug 11926.
- 1:09 AM Changeset in webkit [21356] by
-
- 150 edits4 adds in trunk/LayoutTests/fast/text
Add layout test for opacity/letter-spacing bug.
- 1:09 AM Changeset in webkit [21355] by
-
- 2 edits in trunk/WebCore
Fix for:
<rdar://problem/4656825> REGRESSION: Japanese TV time table widget:
part of the number in background has been cut off.
Now that opacity uses a tight bounding box to clip, we need to make sure
to factor spillout caused by negative letter spacing into our right
overflow. Latch on to the code that does this already for text-stroke
and text-shadow.
Reviewed by olliej
fast/text/letter-spacing-negative-opacity.html
- rendering/InlineFlowBox.cpp: (WebCore::InlineFlowBox::placeBoxesHorizontally):
- 1:00 AM Changeset in webkit [21354] by
-
- 11 edits2 adds in trunk
LayoutTests:
Reviewed by Maciej Stachowiak.
Tests for more fix-ups to the WebScriptObject/WebScripting APIs, related to
<rdar://problem/5140447> API for fetching JSGlobalContextRef from WebView
or WebFrame
- fast/dom/wrapper-classes-expected.txt:
- fast/dom/wrapper-classes.html: Added cases to test the wrapper classes for different data types sent across the JS/ObjC bridge.
- fast/dom/wrapper-round-tripping-expected.txt: Added.
- fast/dom/wrapper-round-tripping.html: Added. New test to verify that you can round-trip between a JSObjectRef and a WebScriptObject.
WebCore:
Reviewed by Maciej Stachowiak.
More fix-ups to the WebScriptObject/WebScripting APIs, related to
<rdar://problem/5140447> API for fetching JSGlobalContextRef from WebView
or WebFrame
- bindings/objc/WebScriptObject.h: Fully specified the surprising rules for type conversion between JavaScript and ObjC.
- bindings/objc/WebScriptObject.mm: Added up-call accessor to WebFrame.
This is kind of stinky, but I'm OK with it because eventually all of this
code should move up into WebKit.
(+[WebScriptObject scriptObjectForJSObject:frame:]):
(-[WebScriptObject valueForKey:]):
(-[WebScriptObject JSObject]):
- Added _rootObject check because if _rootObject returns NULL it means that _imp is no longer GC protected, so it's not safe to use.
- Added _isSafeScript check because that's what WebScriptObject methods typically do, even though the value of doing so isn't clear to me.
- bindings/objc/WebScriptObjectPendingPublic.h: Added WebFrame* parameter to -scriptObjectForJSObject:. This is required to wrap JS objects that are not already in the wrapper cache. It would be nice to remove this limitation of WebScriptObject some day.
- page/mac/FrameMac.mm: (WebCore::Frame::cleanupPlatformScriptObjects): Force removal of m_windowScriptObject from the cache, to avoid retrieving the m_windowScriptObject from the previous page on a new page load. (It would be non-functional in that case.)
WebKitTools:
Reviewed by Maciej Stachowiak.
Added support for testing ObjC/JS type bridging.
Added ASSERT that -JSObject returns nil when the underlying JSObject
is no longer GC protected.
- DumpRenderTree/DumpRenderTree.m: (returnThisCallback): (returnThisClass): (-[WaitUntilDoneDelegate webView:didClearWindowObject:forFrame:]): (+[LayoutTestController isSelectorExcludedFromWebScript:]): (+[LayoutTestController webScriptNameForSelector:]): (-[LayoutTestController accessStoredWebScriptObject]): (-[LayoutTestController testWrapperRoundTripping]): (-[LayoutTestController objCClassNameOf:]): (-[LayoutTestController objCObjectOfClass:]):
- DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
- 12:50 AM Changeset in webkit [21353] by
-
- 1 edit1 add in trunk/LayoutTestResults
Add missing test result.
- 12:34 AM Changeset in webkit [21352] by
-
- 4 adds in trunk/LayoutTests/fast/inline-block
Add vertical align layout test for inline blocks.
- 12:33 AM Changeset in webkit [21351] by
-
- 2 edits in trunk/WebKitTools
Reviewed by Simon
Move setting of the DPI value a few lines up. Should fix
the last two remaining failures in the layout tests.
- 12:32 AM Changeset in webkit [21350] by
-
- 2 edits in trunk/WebCore
Fix for <rdar://problem/5183697>.
Make sure verticalPositionHint is not called on an inline-block from
content inside the inline-block (like text).
Reviewed by olliej
fast/inline-block/inline-block-vertical-align.html
- rendering/RenderObject.cpp: (WebCore::RenderObject::verticalPositionHint):
- rendering/RenderText.cpp: (WebCore::RenderText::verticalPositionHint):
- rendering/RenderThemeMac.mm: (WebCore::RenderThemeMac::setFontFromControlSize):
May 9, 2007:
- 9:53 PM Changeset in webkit [21349] by
-
- 2 edits in trunk/WebKit
2007-05-09 Oliver Hunt <oliver@apple.com>
rs=Adele.
The previous patch (r21346) broke editing, rolling out
- WebView/WebHTMLView.mm: (-[WebHTMLView _interceptEditingKeyEvent:shouldSaveCommand:]): (-[WebHTMLView doCommandBySelector:]):
- 7:32 PM Changeset in webkit [21348] by
-
- 1 edit in tags/WebKit-419.2/WebKit/Info.plist
Versioning.
- 7:30 PM Changeset in webkit [21347] by
-
- 2 edits in tags/WebKit-419.2/WebKit
Merge r21322.
- 7:28 PM Changeset in webkit [21346] by
-
- 2 edits in trunk/WebKit
2007-05-09 Adele Peterson <adele@apple.com>
Reviewed by Oliver.
Re-applying fix for <rdar://problem/5107538> REGRESSION: Page scroll when selecting characters from inline input candidate window by arrow buttons
http://bugs.webkit.org/show_bug.cgi?id=13263
We don't need to call interpretKeyEvents for cmd-key events as
they events will be interpreted by performKeyEquivalent.
- WebView/WebHTMLView.mm: (-[WebHTMLView _interceptEditingKeyEvent:shouldSaveCommand:]): (-[WebHTMLView doCommandBySelector:]):
- 7:26 PM Changeset in webkit [21345] by
-
- 1 copy in tags/WebKit-419.2
New tag.
- 7:11 PM Changeset in webkit [21344] by
-
- 1 edit in trunk/LayoutTests/ChangeLog
Remove random characters from changelog
- 7:08 PM Changeset in webkit [21343] by
-
- 2 edits in trunk/LayoutTests
Reviewed by Adam.
Workaround for rdar://problem/5114296 need to allow for
download occuring, and thus not triggering subframeLoaded()
- fast/encoding/char-encoding.html:
- 3:16 PM Changeset in webkit [21342] by
-
- 4 edits in trunk/JavaScriptCore
Reviewed by Darin Adler.
Fixed #includes of JSStringRefCF.h and use of CF datatypes. I think I
misunderstood this issue before.
- API/JavaScriptCore.h: #include JSStringRefCF.h. Platforms that don't want this behavior can just #include individual headers, instead of the umbrella framework header. But we definitely want Mac OS X clients to get the #include of JSStringRefCF.h "for free."
- API/minidom.c: Don't #include JSStringRefCF.h. (Don't need to #include JavaScriptCore.h, either.)
- API/testapi.c: Don't #include JSStringRefCF.h. Do use CF datatypes regardless of whether APPLE is defined. Platforms that don't support CF just shouldn't compile this file. (main):
- 3:04 PM Changeset in webkit [21341] by
-
- 1 copy in branches/feature-branch
Branch for feature development.
- 2:42 PM Changeset in webkit [21340] by
-
- 4 edits1 add in trunk
2007-05-09 Holger Freyther <zecke@selfish.org>
Reviewed by Mark Rowe.
Gdk build fix with SVG enabled. Stub out ImageBufferCairo.
- WebCore.pro: Build ImageBufferCairo.cpp
- platform/graphics/cairo/ImageBufferCairo.cpp: Added. (WebCore::ImageBuffer::create): (WebCore::ImageBuffer::~ImageBuffer): (WebCore::ImageBuffer::context):
2007-05-09 Holger Freyther <zecke@selfish.org>
Reviewed by Mark Rowe.
- GdkLauncher/main.cpp: Always include config.h.
- 1:37 PM BuildBot edited by
- (diff)
- 1:22 PM Changeset in webkit [21339] by
-
- 2 edits in S60/trunk/WebCore
yadavall, reviewed by <zbujtas@gmail.com>
DESC: Web Browser crashes when trying to browse to Hertz.com
http://bugs.webkit.org/show_bug.cgi?id=13616
- 12:59 PM Changeset in webkit [21338] by
-
- 3 edits8 adds in trunk
LayoutTests:
Reviewed by darin
<rdar://problem/5017613> Style changes don't effect fully selected ToDo content
Demonstrates the bug:
- editing/style/5017613-1-expected.checksum: Added.
- editing/style/5017613-1-expected.png: Added.
- editing/style/5017613-1-expected.txt: Added.
- editing/style/5017613-1.html: Added.
Tests to make sure that a plaintext-only region
will only be styled if it is fully selected:
- editing/style/5017613-2-expected.checksum: Added.
- editing/style/5017613-2-expected.png: Added.
- editing/style/5017613-2-expected.txt: Added.
- editing/style/5017613-2.html: Added.
WebCore:
Reviewed by darin
<rdar://problem/5017613> Style changes don't effect fully selected ToDo content
- editing/ApplyStyleCommand.cpp: (WebCore::ApplyStyleCommand::applyInlineStyle): Use a for loop instead of while(1). Simplify loop termination using Range::pastEndNode. Don't handle the start.node() == end.node() case specially, it's unnecessary. Apply the style change to fully selected plaintext-only regions, not with wrapper spans inside the region, but by changing the element's inline style declaration. Don't descend into nodes whose children we should ignore.
- 11:45 AM Changeset in webkit [21337] by
-
- 7 edits in trunk
LayoutTests:
Reviewed by Hyatt.
Updated results for <rdar://problem/5113578> REGRESSION: textfields that set the height but not the font
look different from IE & FF because the font is small
- fast/block/float/032-expected.txt:
- fast/forms/input-text-word-wrap-expected.checksum:
- fast/forms/input-text-word-wrap-expected.png:
- fast/forms/input-text-word-wrap-expected.txt:
WebCore:
Reviewed by Hyatt.
Fix for <rdar://problem/5113578> REGRESSION: textfields that set the height but not the font
look different from IE & FF because the font is small
For plain text fields, don't stretch the inner text box. Center it vertically in the field.
- rendering/RenderTextControl.cpp: (WebCore::RenderTextControl::layout):
- 7:57 AM Changeset in webkit [21336] by
-
- 1 edit1 add in trunk/LayoutTests
- checked in a file that was accidentally left out of the last check-in
- fast/js/cyclic-prototypes-expected.txt: Added.
- 7:39 AM Changeset in webkit [21335] by
-
- 2 edits in S60/branches/3.1m/WebKit
2007-05-08 ligman <joseph.ligman@nokia.com>
Reviewed by sachin.
DESC: Check for NULL cursor prior getting it's position. This can happen when switching between tabbed and cursor navigations.
http://bugs.webkit.org/show_bug.cgi?id=13627
- BrowserView/src/KeyEventHandler.cpp: (CKeyEventHandler::HandleOfferKeyEventL):
- 7:36 AM Changeset in webkit [21334] by
-
- 2 edits in S60/trunk/WebKit
2007-05-08 ligman <joseph.ligman@nokia.com>
Reviewed by sachin.
DESC: Check for NULL cursor prior getting it's position. This can happen when switching between tabbed and cursor navigations.
http://bugs.webkit.org/show_bug.cgi?id=13627
- BrowserView/src/KeyEventHandler.cpp: (CKeyEventHandler::HandleOfferKeyEventL):
- 7:00 AM Changeset in webkit [21333] by
-
- 2 edits in S60/branches/3.1m/WebKit
2007-05-07 raalexan <rasvan.alexandrescu@nokia.com>
Reviewed by Yongjun Zhang.
DESC: Browser back goes to the beginning of the previous page
http://bugs.webkit.org/show_bug.cgi?id=13394
TSW ID : TMCN-6YDJDU
- BrowserView/src/LoadListeners.cpp: (CPageLoadListener::HeadersL):
- 3:36 AM Changeset in webkit [21332] by
-
- 3 edits2 adds in trunk
2007-05-09 Eric Seidel <eric@webkit.org>
Reviewed by mjs.
http://bugs.webkit.org/show_bug.cgi?id=6985
Cyclic proto values cause WebKit to hang
- kjs/object.cpp: (KJS::JSObject::put): do a cycle check before setting proto
- 3:35 AM Changeset in webkit [21331] by
-
- 2 edits in trunk/WebCore
2007-05-09 Atul Mehrotra <atul.mehrotra@celunite.com>
Gdk build fix.
- platform/gdk/TemporaryLinkStubs.cpp: (Editor::newGeneralClipboard):
- 1:20 AM Changeset in webkit [21330] by
-
- 2 edits in branches/Safari-2-0-branch/WebKit
Merge r21322.
- 12:52 AM Changeset in webkit [21329] by
-
- 3 edits in trunk/WebCore
2007-05-09 Mitz Pettel <mitz@webkit.org>
Reviewed by Dave Hyatt.
- fix http://bugs.webkit.org/show_bug.cgi?id=13037 REGRESSION: Copy-on-scroll not reset properly after back/forward navigation
- page/FrameView.cpp: (WebCore::FrameViewPrivate::FrameViewPrivate): Moved initialization of m_slowRepaintObjectCount here. (WebCore::FrameViewPrivate::reset): Do not reset the slow repaint object count here. (WebCore::FrameView::useSlowRepaints): (WebCore::FrameView::addSlowRepaintObject): (WebCore::FrameView::removeSlowRepaintObject): Added an assertion that the object count is positive.
- rendering/RenderObject.cpp: (WebCore::RenderObject::setStyle): Corrected a mix up between old and new style, which caused the object count to be decremented when it was supposed to be incremented and vice versa.
- 12:48 AM Changeset in webkit [21328] by
-
- 2 edits in trunk/WebCore
2007-05-09 Peter Müller <pm@one.com>
Reviewed by Dave Hyatt.
Changed the hardcoded colors that are used for CSS 2.1 system colors.
Previous colors had numerous conflicts in semantic pairs, which
made text invisible in highlight, info and menu colored areas.
The new hardcoded colors are inspired by Aqua.
Ideally these colors should be fetched through AppKit instead,
though I am not sure if it is possible to make a 1:1 mapping
between CSS2.1 system colors and Mac OS X.
- css/cssstyleselector.cpp: (WebCore::):
- 12:32 AM Changeset in webkit [23351] by
-
- 1 edit in branches/WindowsMerge/WebKitWin/WebCoreLocalizedStrings.cpp
Fix build.
- 12:16 AM Changeset in webkit [21327] by
-
- 2 edits in trunk/WebCore
Fix the Qt build.