Timeline
Feb 22, 2005:
- 7:44 PM Changeset in webkit [8665] by
-
- 9 edits in trunk
WebCore:
Fixed <rdar://problem/3937203> when a div adds a scrollbar (overflow:auto) we do not get regions
Just set dashboard dirty bit when overflow scrolling changes.
Don't do comparison of regions in before scroll regions are
added, instead do it in WebKit after automatic scroll regions
are added.
Reviewed by Maciej.
- khtml/css/cssparser.cpp: (CSSParser::parseDashboardRegions): Cleaned up comments
- khtml/css/cssstyleselector.cpp: (khtml::CSSStyleSelector::styleForElement): Cleaned up comments
- khtml/khtmlview.cpp: (KHTMLView::updateDashboardRegions):
- khtml/rendering/render_layer.cpp: (RenderLayer::updateScrollInfoAfterLayout):
- kwq/WebDashboardRegion.m: (-[WebDashboardRegion isEqual:]):
Webkit:
Fixed <rdar://problem/3937203> when a div adds a scrollbar (overflow:auto) we do not get regions
Compare regions after automatice scroll regions have been
added.
Reviewed by Maciej.
- WebCoreSupport.subproj/WebBridge.h:
- WebCoreSupport.subproj/WebBridge.m: (-[WebBridge dealloc]): (-[WebBridge _compareDashboardRegions:]): (-[WebBridge dashboardRegionsChanged:]):
- 7:34 PM Changeset in webkit [8664] by
-
- 3 edits in trunk/WebKit
Fixed <rdar://problem/4012463> Dashboard widgets don't work with authenticating proxies
Added new SPI for dashboard that just calls default delegate
behavior.
Reviewed by Maciej.
- WebView.subproj/WebView.m: (-[WebView handleAuthenticationForResource:challenge:fromDataSource:]):
- WebView.subproj/WebViewPrivate.h:
- 6:34 PM Changeset in webkit [8663] by
-
- 11 edits4 adds in trunk
WebCore:
Fixed: <rdar://problem/3976872> Pasted plain text doesn't get the proper style if pasted into newlines
Reviewed by mjs.
- khtml/editing/htmlediting.cpp: (khtml::ReplaceSelectionCommand::doApply): don't clear the typing style when matching style (khtml::ReplaceSelectionCommand::completeHTMLReplacement): apply the typing style when matching style
- khtml/editing/jsediting.cpp:
- khtml/khtml_part.cpp: (KHTMLPart::pasteAndMatchStyle): new
- khtml/khtml_part.h:
- kwq/KWQKHTMLPart.h:
- kwq/KWQKHTMLPart.mm: (KWQKHTMLPart::issuePasteAndMatchStyleCommand): new
- kwq/WebCoreBridge.h:
- layout-tests/editing/editing.js:
WebKit:
Reviewed by mjs.
- WebCoreSupport.subproj/WebBridge.m: (-[WebBridge issuePasteAndMatchStyleCommand]): support for new "PasteAndMatchStyle" exec command
- 5:27 PM Changeset in webkit [8662] by
-
- 2 edits in trunk/WebCore
Reviewed by Adele.
- fixed <rdar://problem/4006596> REGRESSION (183-184): crash in DOM::DocumentImpl::setFocusNode(DOM::NodeImpl*)
- khtml/xml/dom_docimpl.cpp: (widgetForNode): Added helper. (DocumentImpl::setFocusNode): Re-get the widget for the node after calling updateLayout. The updateLayout can destroy the old widget, so we can't keep a stale widget pointer around.
- 4:10 PM Changeset in webkit [8661] by
-
- 10 edits in trunk
Reviewed by Hyatt
Fix for this bug:
<rdar://problem/4003463> Mail.app HTML uses inline styling markup not understood by Entourage and Eudora
- khtml/editing/htmlediting.cpp: (khtml::isEmptyFontTag): Helper for removing <font> tags. (khtml::StyleChange::styleModeForParseMode): Helper to map a document parse mode to a use/don't use legacy-html-styles value. (khtml::StyleChange::checkForLegacyHTMLStyleChange): Add support for colors, font faces, and font sizes. (khtml::ApplyStyleCommand::isHTMLStyleNode): (khtml::ApplyStyleCommand::removeHTMLFontStyle): (khtml::ApplyStyleCommand::applyTextDecorationStyle): Now call styleModeForParseMode to determine whether to use legacy html styles or not. (khtml::ApplyStyleCommand::removeInlineStyle): Now properly removes <font> styles. (khtml::ApplyStyleCommand::addBlockStyleIfNeeded): Ditto. (khtml::ApplyStyleCommand::addInlineStyleIfNeeded): Ditto. (khtml::createFontElement): Helper for applying <font> elements.
- khtml/editing/htmlediting.h: All the following support the new bits of data we need to store. (khtml::StyleChange::applyFontColor) (khtml::StyleChange::applyFontFace) (khtml::StyleChange::applyFontSize) (khtml::StyleChange::fontColor) (khtml::StyleChange::fontFace) (khtml::StyleChange::fontSize)
Test results updated now that we will write out <font> tags for quirks mode documents.
- layout-tests/editing/execCommand/modifyForeColorByCharacter-expected.txt
- layout-tests/editing/style/block-style-004-expected.txt
- layout-tests/editing/editing/pasteboard/paste-text-011-expected.txt
- layout-tests/editing/style/block-style-005-expected.txt
- layout-tests/editing/style/block-style-006-expected.txt
- layout-tests/editing/style/smoosh-styles-001-expected.txt
- layout-tests/editing/style/smoosh-styles-002-expected.txt
- 4:00 PM Changeset in webkit [8660] by
-
- 2 edits in trunk/WebCore
Reviewed by Kevin.
<rdar://problem/4017066> crash in KJS::ValueImp::dispatchType() every time I load www.nytimes.com/pages/automobiles
When creating option elements, use lowercase "option" instead of
uppercase "OPTION" to create option elements, because only
lowercase works for XHTML.
- khtml/ecma/kjs_html.cpp: (KJS::HTMLSelectCollection::tryPut): (OptionConstructorImp::construct):
- 3:22 PM Changeset in webkit [8659] by
-
- 2 edits2 adds in trunk
WebCore fix for: <rdar://problem/3918056> Mail not line breaking my <pre> formatted emails on replies
Mail must 4018993 to fully address the problem.
Reviewed by kocienda.
- khtml/editing/markup.cpp: (khtml::startMarkup): don't compute style for text in PRE tags (khtml::createMarkup): include PRE if it is an ancestor of the nodes in the range
Feb 21, 2005:
- 5:32 PM Changeset in webkit [8658] by
-
- 2 edits in trunk/WebCore
Fixed <rdar://problem/4008338> REGRESSION (125-178): opacity style not working, breaks fading images on okcupid.com
There was a long standing bug in cssText(). Double value were always cast int! So,
opacity values values were incorrectly converted to text, i.e. 0.75 became 0.
The problem was newly triggered because we parse the css for opacity *TWICE*. This is a result of
incorrectly "invalidating" the style attribute (from fix for 3790449). The second parse was from
the cssText() of the style.
Reviewed by Hyatt.
- khtml/css/css_valueimpl.cpp: (DOM::CSSPrimitiveValueImpl::cssText):
- 4:19 PM Changeset in webkit [8657] by
-
- 2 edits in trunk/WebCore
Fix for 4017204, apply the same fix to the base class nodeAtPoint that was already applied to RenderBlock.
Skip elements with layers and inline flows. Demoted <form>s can end up causing trouble otherwise.
Reviewed by Richard Williamson
- khtml/rendering/render_box.cpp: (RenderBox::nodeAtPoint):
- 3:36 PM Changeset in webkit [8656] by
-
- 9 edits in trunk/WebCore
Fix for 4017033, CSS is being parsed twice. Make sure to always validate the style attribute when it is
initially parsed. Add code to clean up decls when the style attribute is completely removed. Add a new
synchronizing boolean that avoids reparsing the style declaration when the attribute is simply
being synced up to the declaration.
Reviewed by John
- khtml/css/css_valueimpl.cpp: (DOM::CSSMutableStyleDeclarationImpl::setChanged):
- khtml/html/html_elementimpl.cpp: (HTMLElementImpl::invalidateStyleAttribute): (HTMLElementImpl::updateStyleAttributeIfNeeded): (HTMLElementImpl::HTMLElementImpl): (HTMLElementImpl::~HTMLElementImpl): (HTMLElementImpl::destroyInlineStyleDecl): (HTMLElementImpl::mapToEntry): (HTMLElementImpl::parseHTMLAttribute):
- khtml/html/html_elementimpl.h:
- khtml/xml/dom_elementimpl.cpp: (ElementImpl::ElementImpl): (ElementImpl::setAttribute):
- khtml/xml/dom_elementimpl.h: (DOM::ElementImpl::updateStyleAttributeIfNeeded):
- 3:24 PM Changeset in webkit [8655] by
-
- 3 edits in trunk
versioning for TOT, Safari 2.0 (188+)
- 3:17 PM Changeset in webkit [8654]
-
- 1 copy in tags/Safari-188
This commit was manufactured by cvs2svn to create tag 'Safari-188'.
- 3:17 PM Changeset in webkit [8653] by
-
- 6 edits in trunk
Safari-188 stamp
- 2:02 PM Changeset in webkit [8652] by
-
- 9 edits in trunk
Tree was closed. Rolling out.
- 2:01 PM Changeset in webkit [8651] by
-
- 9 edits in trunk
Reviewed by Hyatt
Fix for this bug:
<rdar://problem/4003463> Mail.app HTML uses inline styling markup not understood by Entourage and Eudora
- khtml/editing/htmlediting.cpp: (khtml::isEmptyFontTag): Helper for removing <font> tags. (khtml::StyleChange::styleModeForParseMode): Helper to map a document parse mode to a use/don't use legacy-html-styles value. (khtml::StyleChange::checkForLegacyHTMLStyleChange): Add support for colors, font faces, and font sizes. (khtml::ApplyStyleCommand::isHTMLStyleNode): (khtml::ApplyStyleCommand::removeHTMLFontStyle): (khtml::ApplyStyleCommand::applyTextDecorationStyle): Now call styleModeForParseMode to determine whether to use legacy html styles or not. (khtml::ApplyStyleCommand::removeInlineStyle): Now properly removes <font> styles. (khtml::ApplyStyleCommand::addBlockStyleIfNeeded): Ditto. (khtml::ApplyStyleCommand::addInlineStyleIfNeeded): Ditto. (khtml::createFontElement): Helper for applying <font> elements.
- khtml/editing/htmlediting.h: All the following support the new bits of data we need to store. (khtml::StyleChange::applyFontColor) (khtml::StyleChange::applyFontFace) (khtml::StyleChange::applyFontSize) (khtml::StyleChange::fontColor) (khtml::StyleChange::fontFace) (khtml::StyleChange::fontSize)
Test results updated now that we will write out <font> tags for quirks mode documents.
- layout-tests/editing/execCommand/modifyForeColorByCharacter-expected.txt
- layout-tests/editing/style/block-style-004-expected.txt
- layout-tests/editing/style/block-style-005-expected.txt
- layout-tests/editing/style/block-style-006-expected.txt
- layout-tests/editing/style/smoosh-styles-001-expected.txt
- layout-tests/editing/style/smoosh-styles-002-expected.txt
- 1:55 PM Changeset in webkit [8650] by
-
- 2 edits in trunk/WebCore
- fixed Panther deployment build
- kwq/KWQTextEdit.mm: (QTextEdit::setScrollBarModes): Put more stuff inside #if.
- 11:56 AM Changeset in webkit [8649] by
-
- 2 edits in trunk/WebKit
Reviewed by Darin.
<rdar://problem/3943090> REGRESSION (Mail): Spelling underline incompletely erased following certain steps
- WebCoreSupport.subproj/WebTextRenderer.m: (-[WebTextRenderer misspellingLineThickness]): (-[WebTextRenderer misspellingLinePatternWidth]): Replaced #defines with these methods, so others can get the same info.
(-[WebTextRenderer drawLineForMisspelling:withWidth:]):
Keep underline within originally specified bounds.
- 11:56 AM Changeset in webkit [8648] by
-
- 5 edits in trunk/WebCore
Reviewed by Darin.
<rdar://problem/3943090> REGRESSION (Mail): Spelling underline incompletely erased following certain steps
- khtml/rendering/render_text.cpp: (InlineTextBox::paintMarker): Make sure underline is placed within the text bounds.
- kwq/KWQPainter.h:
- kwq/KWQPainter.mm: (QPainter::misspellingLineThickness):
- kwq/WebCoreTextRenderer.h: Add misspellingLineThickness for use by InlineTextBox::paintMarker.
- 11:50 AM Changeset in webkit [8647] by
-
- 2 edits in trunk/WebCore
Reviewed by John.
- fixed <rdar://problem/4012978> -[DOMRange markupString] crashes when range contains only a text node with a single space
- khtml/editing/markup.cpp: (khtml::createMarkup): Added updateLayout calls, and added a missing nil check.
- 9:50 AM Changeset in webkit [8646] by
-
- 2 edits in trunk/WebCore
Reviewed by John.
- fixed <rdar://problem/4005435> Safari hung while pasting text into a <textarea> (Panther-only)
- kwq/KWQTextEdit.mm: (QTextEdit::setScrollBarModes): Don't setAutohidesScrollers:YES on Panther.
- 9:45 AM Changeset in webkit [8645] by
-
- 2 edits in trunk/WebKit
Reviewed by John.
- fixed <rdar://problem/4016358> don't ever display IDN URLs with characters from "possible Latin look-alike" scripts
- Misc.subproj/WebNSURLExtras.m: (containsPossibleLatinLookalikes): Added. (-[NSString _web_mapHostNameWithRange:encode:makeString:]): Call containsPossibleLatinLookalikes, and if true, don't decode the host name.
- 9:33 AM Changeset in webkit [8644] by
-
- 3 edits in trunk/WebCore
Reviewed by John
Fix for this bug:
<rdar://problem/4015499> REGRESSION (186-187): pasted quoted text starting with a blank line increases quote level of pasted text when pasted
- khtml/editing/markup.cpp: (khtml::markup): Changed over to ASSERT instead of assert. (khtml::createMarkup): The issue was that the code to add parents all the way back to the common ancestor block did not check for blocks whose markup had already been added, and could result in adding markup for nodes twice (hence the additional and erroneous quote level). Now there is a new check that will only add markup for those nodes before the start of the selection range. This fixes the bug. (khtml::createFragmentFromMarkup): Changed over to ASSERT instead of assert. (khtml::createFragmentFromText): Ditto.
- 9:32 AM Changeset in webkit [8643] by
-
- 2 edits in trunk/JavaScriptCore
- kjs/date_object.cpp: (timetUsingCF): Fixed indenting.
Feb 19, 2005:
- 6:24 PM Changeset in webkit [8642] by
-
- 13 edits in trunk/WebCore
Reviewed by Maciej
- khtml/editing/htmlediting.cpp: (khtml::matchNearestBlockquoteColorString): New function which abstracts away the CSS property we use for this pseudo-color. (khtml::ReplacementFragment::removeBlockquoteColorsIfNeeded): Set the new nearestBlockquoteColorString psuedo-color here, rather than removing colors as was done before. (khtml::ReplaceSelectionCommand::applyStyleToInsertedNodes): Check for the pseudo-color in the desired style, and determine the real color based on the nearest blockquote (or none) to the node. (khtml::nearestMailBlockquote): Name change from closestMailBlockquote to match new property better.
All the rest of this change is the mechanical coding you need to do to add a new CSS property, in this
case, -khtml-match-nearest-mail-blockquote-color.
- khtml/css/css_computedstyle.cpp: (DOM::CSSComputedStyleDeclarationImpl::getPropertyCSSValue)
- khtml/css/cssparser.cpp: (CSSParser::parseValue):
- khtml/css/cssproperties.c: (hash_prop): (findProp):
- khtml/css/cssproperties.h:
- khtml/css/cssproperties.in:
- khtml/css/cssstyleselector.cpp: (khtml::CSSStyleSelector::applyProperty)
- khtml/css/cssvalues.c: (findValue)
- khtml/css/cssvalues.h:
- khtml/css/cssvalues.in:
- khtml/rendering/render_style.h: (khtml::RenderStyle::matchNearestMailBlockquoteColor) (khtml::RenderStyle::setMatchNearestMailBlockquoteColor) (khtml::RenderStyle::initialMatchNearestMailBlockquoteColor)
- 2:53 PM Changeset in webkit [8641] by
-
- 5 edits in trunk
Reviewed by Chris
Fix for these bugs:
<rdar://problem/4014228> REGRESSION (186-187) extra, uneditable lines inserted above and below a line of pasted quoted text
<rdar://problem/4014393> REGRESSION (186-187) pasted quoted text gets extra <cr>s when pasted at top of document
- khtml/editing/htmlediting.cpp: (khtml::ReplacementFragment::ReplacementFragment): Part of a general refactoring of how the fragment is inserted into the document, rendered, and then tested for certain important pieces of information that are required for pasting. (khtml::ReplacementFragment::insertFragmentForTestRendering): New helper. Handles inserting the fragment nodes into the document. (khtml::ReplacementFragment::restoreTestRenderingNodesToFragment): Removes nodes from the document, and restores them to the fragment. (khtml::ReplacementFragment::computeStylesUsingTestRendering): Factored out code that did this before into its own function. (khtml::ReplacementFragment::removeUnrenderedNodesUsingTestRendering): Ditto. (khtml::ReplacementFragment::countRenderedBlocks): This is a real improvement, as it eliminates a major use of the isProbablyBlock() function. Now, the blocks that are counted are real, rendered blocks. (khtml::ReplacementFragment::removeStyleNodes): Made this function retain margin-zeroing CSS properties on paragraphs. This does two things: 1) It helps us to maintain good behavior in the short term while there are still versions of Mail out there that use <p> elements instead of <div> elements for new paragraphs; and 2) It will help to maintain the compatibility with other mail clients that use <p> elements for their paragraphs but render them themselves with no margins as the result of quirks. (khtml::ReplaceSelectionCommand::doApply): Do some work to fix up and improve the handling of blank lines, be they <p> elements or <br> elements, that can be removed after pasting. This, coupled with the refactoring, fixes 4014393.
- khtml/editing/htmlediting.h: Updated for new functions.
- layout-tests/editing/pasteboard/paste-text-010-expected.txt: Updated results, actually improved with this change.
- layout-tests/editing/pasteboard/paste-text-011-expected.txt: Ditto.
- 1:46 PM Changeset in webkit [8640] by
-
- 3 edits in trunk/WebCore
Reviewed by Chris.
Fixed <rdar://problem/4010765> Flash player can be used to arbitrarily open popup windows without user permission
Our window.open() policy is to refuse the <script>window.open(...)</script> case and allow the inline the <a href="javascript:window.open('foo')> case. Clever advertisers at some point realized that by executing their Javascript through the Flash plugin, Safari would always treat their code as the inline case, and thus, they were able to work around our popup blocker.
- kwq/WebCoreBridge.h:
- kwq/WebCoreBridge.mm: (-[WebCoreBridge stringByEvaluatingJavaScriptFromString:]): Changed this to invoke the new stringByEvaluatingJavaScriptFromString:forceUserGesture method below. (-[WebCoreBridge stringByEvaluatingJavaScriptFromString:forceUserGesture:]): Let the WebKit make the determination if this was a user originated gesture or not; we must no longer assume this is always the case.
- 1:40 PM Changeset in webkit [8639] by
-
- 3 edits in trunk/WebKit
Reviewed by Chris.
Fixed <rdar://problem/4010765> Flash player can be used to arbitrarily open popup windows without user permission
Our window.open() policy is to refuse the <script>window.open(...)</script> case and allow the inline the <a href="javascript:window.open('foo')> case. Clever advertisers at some point realized that by executing their Javascript through the Flash plugin, Safari would always treat their code as the inline case, and thus, they were able to work around our popup blocker.
- Plugins.subproj/WebBaseNetscapePluginView.h: Addded currentEventIsUserGesture boolean ivar.
- Plugins.subproj/WebBaseNetscapePluginView.m: (-[WebBaseNetscapePluginView sendEvent:]): If at any point the user clicks or presses a key from within a plugin, set the currentEventIsUserGesture flag to true. This is important to differentiate legitimate window.open() calls originating from plugins; we still want to allow those. (-[WebBaseNetscapePluginView initWithFrame:]): In our asynchronous load, pass along currentEventIsUserGesture to the PluginRequest. (-[WebBaseNetscapePluginView evaluateJavaScriptPluginRequest:]): Inform WebCore if this was a user originated gesture when calling executeScript(). (-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:sendNotification:]): (-[WebPluginRequest initWithRequest:frameName:notifyData:sendNotification:didStartFromUserGesture:]): (-[WebPluginRequest isCurrentEventUserGesture]): Added.
- 1:36 PM Changeset in webkit [8638] by
-
- 2 edits in trunk/WebCore
Fixed: <rdar://problem/3951196> REGRESSION (Mail): too many levels of reply quotes after certain steps
Reviewed by kocienda.
- khtml/editing/htmlediting.cpp: (khtml::InsertParagraphSeparatorInQuotedContentCommand::doApply):
- If we find a new start node, update topBlockquote so we don't use too many block quotes for the contents following the new line.
- Build up the list of ancestors after we've determined the actual topBlockquote.
- Don't insert an extra new line if there is a new start node.
- 10:59 AM Changeset in webkit [8637] by
-
- 2 edits in trunk/WebCore
Fixed: <rdar://problem/3978461> smart paste is broken
Reviewed by kevin.
- khtml/editing/htmlediting.cpp: (khtml::ReplaceSelectionCommand::doApply): properly check for leading and trailing whitespace. These checks were incorrectly reversed. Also check if we're pasting at the beginning or end of a line. We should not insert spaces in either case.
Feb 18, 2005:
- 5:13 PM Changeset in webkit [8636] by
-
- 7 edits in trunk/WebCore
Reviewed by Darin.
Fix for <rdar://problem/3975568> REGRESSION(125-180)Australian Open pages have drawing problem
This patch fixes two problems caused by our added support for custom tags. First, the layout problem at the sites mentioned in the bug
was caused by custom tags within tables. In checkChild, we needed to treat these tags as spans so they get placed correctly in the DOM tree.
Also, we were indexing the tagPriority and endTag arrays with id values from the custom tags that were greater than the size of the array. So now
we have functions to check for the custom tags, and again, treat them as spans. To avoid confusion, we changed the names of the arrays to
endTagArray and tagPriorityArray.
- khtml/html/dtd.h: changed all uses of the endTag array to endTagArray for our new wrapper functions (DOM::tagPriority): added function to check array bounds and to treat custom tags as spans (DOM::endTagRequirement): added function to check array bounds and to treat custom tags as spans
- khtml/html/dtd.cpp: changed name of endTag and tagPriority arrays to endTagArray and tagPriorityArray (DOM::checkChild): treat custom tags as spans during this check
- khtml/html/html_elementimpl.cpp: changed all uses of the endTag array to the endTagRequirement function (HTMLElementImpl::createContextualFragment): (HTMLElementImpl::setInnerText): (HTMLElementImpl::setOuterText): (HTMLElementImpl::toString):
- khtml/html/htmlparser.cpp: changed all uses of the endTag array to the endTagRequirement function and all uses of the tagPriority array to the tagPriority function. (KHTMLParser::parseToken): (KHTMLParser::insertNode):
- khtml/html/htmltokenizer.cpp: (khtml::HTMLTokenizer::parseTag): changed all uses of the endTag array to the endTagRequirement function
- khtml/editing/markup.cpp: changed all uses of the endTag array to the endTagRequirement function (khtml::endMarkup): (khtml::markup):
- 2:10 PM Changeset in webkit [8635] by
-
- 2 edits in trunk/WebCore
Fixed build: Whoops, setNeedsLayout's parameter is NOT optional!
- 1:39 PM Changeset in webkit [8634] by
-
- 5 edits in trunk/WebCore
[3603191] REGRESSION: Applets not receiving all of the Applet Parameters in Java 1.4.1/1.4.2. Fix is to defer instantiating the applet plugin until the applet tag and its nested param tags have been completely parsed.
- 12:49 PM Changeset in webkit [8633] by
-
- 2 edits in trunk/WebCore
Fixed <rdar://problem/4006161> Tiger8A380: Widgets leak dashboard regions
We were leaking the DashboardRegionImpls.
Reviewed by Kevin.
- khtml/css/css_valueimpl.cpp: (DOM::CSSPrimitiveValueImpl::cleanup):
- 12:11 PM Changeset in webkit [8632] by
-
- 8 edits in trunk
WebCore:
Fixed: <rdar://problem/3945271> REGRESSION (Mail): pasted plain text should pick up typing style instead of being unstyled
Reviewed by kocienda.
- khtml/editing/htmlediting.cpp: (khtml::ApplyStyleCommand::addInlineStyleIfNeeded): don't set class on element returned by createStyleSpanElement since that's already done (khtml::ReplacementFragment::ReplacementFragment): take matchStyle param, don't call computeStylesAndRemoveUnrendered() if !matchStyle (khtml::ReplaceSelectionCommand::ReplaceSelectionCommand): take matchStyle param (khtml::ReplaceSelectionCommand::doApply): if m_matchStyle, use selection.start() as the insertion position and don't call applyStyleToInsertedNodes()
- khtml/editing/htmlediting.h:
- kwq/WebCoreBridge.h:
- kwq/WebCoreBridge.mm: (-[WebCoreBridge replaceSelectionWithFragment:selectReplacement:smartReplace:matchStyle:]): take matchStyle param and pass it (-[WebCoreBridge replaceSelectionWithNode:selectReplacement:smartReplace:]): pass NO for matchStyle (-[WebCoreBridge replaceSelectionWithMarkupString:baseURLString:selectReplacement:smartReplace:]): pass NO for matchStyle (-[WebCoreBridge replaceSelectionWithText:selectReplacement:smartReplace:]): pass YES for matchStyle
WebKit:
Fixed: <rdar://problem/3945271> REGRESSION (Mail): pasted plain text should pick up typing style instead of being unstyled
Reviewed by kocienda.
- WebView.subproj/WebDataSource.m: (-[WebDataSource _replaceSelectionWithArchive:selectReplacement:]): pass NO for matchStyle to replaceSelection
- WebView.subproj/WebHTMLView.m: (-[WebHTMLView _documentFragmentFromPasteboard:allowPlainText:chosePlainText:]): return new chosePlainText parameter (-[WebHTMLView _pasteWithPasteboard:allowPlainText:]): pass chosePlainText for matchStyle to replaceSelection (-[WebHTMLView concludeDragForDraggingInfo:actionMask:]): ditto
- 11:55 AM Changeset in webkit [8631] by
-
- 5 edits in trunk
Reviewed by Chris
Fix for these bugs:
<rdar://problem/4013025> Copy/Paste of quoted word results in removal of any following <cr>
<rdar://problem/4013100> Copy/Paste quoted text and then decrease quote level does not change text color
For the most part, these bugs were caused by errors and lack of foresight on my part when
I added the better paste code. Chalk these fixes up to the result of bake time.
- khtml/editing/htmlediting.cpp: (khtml::ReplacementFragment::ReplacementFragment): Need to move count of number of blocks in fragment after the call to remove unrendered nodes. Meant to do this before, but forgot to. (khtml::ReplacementFragment::removeStyleNodes): Need to remove inline styles from elements! Terrible omission now fixed. (khtml::ReplacementFragment::removeBlockquoteColorsIfNeeded): Remove blockquote colors for now. Code has a more extensive comment in it now to explain the difficulty, and the need for more study and changes. (khtml::ReplaceSelectionCommand::doApply): Need to call applyStyleToInsertedNodes() in the m_fragment.hasInterchangeNewline() case. This was just missed before.
- layout-tests/editing/pasteboard/paste-text-011-expected.txt: Updated results, subtly different, but OK.
- layout-tests/editing/pasteboard/paste-text-017-expected.txt: Updated for <p> to <div> change in test content.
- layout-tests/editing/pasteboard/paste-text-017.html: Needed to change <p> to <div> to make this test go with the new design of using <div> tags for default paragraphs.
- 11:37 AM Changeset in webkit [8630] by
-
- 3 edits in trunk/WebCore
Fix for 3974263 (and possibly others). Don't let fixed tables use maxint as their maxwidth when some
cells have percentage values.
Reviewed by kocienda
- khtml/misc/arena.cpp: (ArenaAllocate):
- khtml/rendering/table_layout.cpp: (FixedTableLayout::calcWidthArray): (FixedTableLayout::calcMinMaxWidth): (AutoTableLayout::layout):
- 11:35 AM Changeset in webkit [8629] by
-
- 2 adds in trunk/LayoutTests/fast/table
new layout test
Feb 17, 2005:
- 5:51 PM Changeset in webkit [8628] by
-
- 2 edits in trunk/WebKit
Removed code that should not have been checked in from
last patch.
- WebCoreSupport.subproj/WebTextRendererFactory.m: (-[WebTextRendererFactory isFontFixedPitch:]):
- 5:30 PM Changeset in webkit [8627] by
-
- 3 edits in trunk/WebCore
Reviewed by Kevin.
- fixed <rdar://problem/3998627> WebKit crashes when deleting text in a modified div
- khtml/khtml_part.cpp: (KHTMLPart::selectionComputedStyle): Add a ref and deref to keep the element alive until it's added to the DOM tree.
- kwq/KWQKHTMLPart.mm: (KWQKHTMLPart::styleForSelectionStart): Ditto.
- 5:26 PM Changeset in webkit [8626] by
-
- 6 edits in trunk
WebCore:
Fixed <rdar://problem/3999467> when Osaka-Mono is specified as fixed width font, Osaka used instead
Fixed w/o introducing a performance regression. Add early
check for Osaka-Mono to avoid expensive call into WebKit.
Reviewed by Vicki.
- kwq/KWQFont.mm: (QFont::isFixedPitch):
WebKit:
Fixed <rdar://problem/3999467> when Osaka-Mono is specified as fixed width font, Osaka used instead
Fixed w/o introducing a performance regression.
Reviewed by Vicki (and earlier by Dave Harrison).
- WebCoreSupport.subproj/WebTextRenderer.m: (-[WebTextRenderer _computeWidthForSpace]): (widthForNextCharacter):
- WebCoreSupport.subproj/WebTextRendererFactory.h:
- WebCoreSupport.subproj/WebTextRendererFactory.m: (-[NSFont _web_isFakeFixedPitch]): (-[WebTextRendererFactory isFontFixedPitch:]): (-[WebTextRendererFactory fontWithFamily:traits:size:]):
- 5:25 PM Changeset in webkit [8625] by
-
- 2 edits in trunk/WebCore
Reviewed by Kevin.
- fixed <rdar://problem/4011210> REGRESSION (180-181): Maxlength property for INPUT object not working
- kwq/KWQTextField.mm: (-[KWQTextField textView:shouldChangeTextInRange:replacementString:]): If controller returns YES, go on to call super, since super does the text formatter handling, which we need. (-[KWQSecureTextField textView:shouldChangeTextInRange:replacementString:]): Ditto. (-[KWQSearchField textView:shouldChangeTextInRange:replacementString:]): Ditto.
- 5:23 PM Changeset in webkit [8624]
-
- 3 copies in tags/Safari-187
This commit was manufactured by cvs2svn to create tag 'Safari-187'.
- 5:23 PM Changeset in webkit [8623] by
-
- 1 edit in trunk/WebCore/ChangeLog-2005-08-23
move the Safari-187 release marker in the WebCore Changelog, since we're going to include <rdar://problem/4012058> in Safari-187
- 5:13 PM Changeset in webkit [8622] by
-
- 2 edits in trunk/JavaScriptCore
Fixed <rdar://problem/4003251> Safari crashed at www.icelandair.com in LiveConnect code converting a Java object to a string
Added nil check.
Reviewed by John Sullivan.
- bindings/jni/jni_runtime.cpp: (JavaField::valueFromInstance):
- 4:38 PM Changeset in webkit [8621] by
-
- 4 edits in trunk/WebCore
Reviewed by Hyatt
Fix for this bug:
<rdar://problem/4012058> Copy from quoted text and paste results in blue text
The relatively-new paste code tries hard to retain style of the content from the
source location. However, in the case of quoted material in mail messages, we do
not want to carry the quoting color along. This fixes the problem by factoring
out such colors.
- khtml/editing/htmlediting.cpp: (khtml::ReplacementFragment::computeStylesAndRemoveUnrendered): Now calls removeBlockquoteColorsIfNeeded() to fix bug. (khtml::ReplacementFragment::removeBlockquoteColorsIfNeeded): New function. Factors out colors that are the result of text being quoted. (khtml::isNodeRendered): Function moved in file. No other change. (khtml::isProbablyBlock): Function moved in file. No other change. (khtml::closestMailBlockquote): New function. Helps fix bug. (khtml::isMailBlockquote): Function moved to be free-floating instead of being a member of CompositeEditCommand. No other change.
- khtml/editing/htmlediting.h: Moved around some functions. Added removeBlockquoteColorsIfNeeded().
- khtml/editing/markup.cpp: Remove redundant static implementation of isMailBlockquote.
- 4:11 PM Changeset in webkit [8620] by
-
- 2 edits in trunk/WebKit
Fixed <rdar://problem/3959304> PDF in img tag is not rendered correctly anymore
We were incorrectly adding image position when flipping coordinates.
Reviewed by David Harrison.
- WebCoreSupport.subproj/WebImageData.m: (-[WebImageData _PDFDrawFromRect:toRect:operation:alpha:flipped:context:]):
- 4:09 PM Changeset in webkit [8619] by
-
- 5 edits in trunk/WebKit
Fixed <rdar://problem/4007262> Seed: Flight tracker scrolling moves to the left
Added SPI for dashboard to disable wheel scrolling of the WebClipView.
Reviewed by Ken.
- ChangeLog:
- WebView.subproj/WebClipView.m: (-[WebClipView _focusRingVisibleRect]): (-[WebClipView scrollWheel:]):
- WebView.subproj/WebView.m: (-[WebViewPrivate init]): (-[WebView drawRect:]): (-[WebView _dashboardBehavior:]):
- WebView.subproj/WebViewInternal.h:
- WebView.subproj/WebViewPrivate.h:
- 4:05 PM Changeset in webkit [8618] by
-
- 3 edits in trunk
versioning for TOT, Safari 2.0 (187+)
- 3:59 PM Changeset in webkit [8617] by
-
- 6 edits in trunk
Safari-187 stamp
- 3:31 PM Changeset in webkit [8616] by
-
- 3 edits in trunk/WebCore
I checked in when the tree was closed. Rolling out.
- 3:27 PM Changeset in webkit [8615] by
-
- 3 edits in trunk/WebCore
Reviewed by Hyatt
Fix for this bug:
<rdar://problem/4003463> Mail.app HTML uses inline styling markup not understood by Entourage and Eudora
- khtml/editing/htmlediting.cpp: (khtml::StyleChange::styleModeForParseMode): Helper to map a document parse mode to a use/don't use legacy-html-styles value. (khtml::StyleChange::checkForLegacyHTMLStyleChange): Add support for colors, font faces, and font sizes. (khtml::ApplyStyleCommand::applyTextDecorationStyle): Now call styleModeForParseMode to determine whether to use legacy html styles or not. (khtml::ApplyStyleCommand::addBlockStyleIfNeeded): Ditto. (khtml::ApplyStyleCommand::addInlineStyleIfNeeded): Ditto.
- khtml/editing/htmlediting.h: All the following support the new bits of data we need to store. (khtml::StyleChange::applyFontColor) (khtml::StyleChange::applyFontFace) (khtml::StyleChange::applyFontSize) (khtml::StyleChange::fontColor) (khtml::StyleChange::fontFace) (khtml::StyleChange::fontSize)
- 3:04 PM Changeset in webkit [8614] by
-
- 4 edits in trunk/WebKit
- roll out this change, since it causes a 1.5% performance regression
2005-02-15 Richard Williamson <rjw@apple.com>
Fixed <rdar://problem/3999467> when Osaka-Mono is specified as fixed width font, Osaka used instead
Lie about Osaka-Mono. Treat it as fixed pitch, even though,
strictly speaking it isn't. (Similar to what we do with
Courier New.)
Reviewed by David Harrison.
- WebCoreSupport.subproj/WebTextRenderer.m: (-[WebTextRenderer _computeWidthForSpace]):
- WebCoreSupport.subproj/WebTextRendererFactory.h:
- WebCoreSupport.subproj/WebTextRendererFactory.m: (-[NSFont _web_isFakeFixedPitch]): (-[WebTextRendererFactory isFontFixedPitch:]): (-[WebTextRendererFactory fontWithFamily:traits:size:]):
- 1:24 PM Changeset in webkit [8613] by
-
- 2 edits in trunk/WebCore
Fixed <rdar://problem/4008163> dynamic support for -apple-dashboard-region is flakey
Style operator== wasn't including regions.
- 1:17 PM Changeset in webkit [8612] by
-
- 2 edits in trunk/WebCore
Reviewed by Chris.
fix for <rdar://problem/4010028> 8A383: Safari v185 crash loading united.com multi city fare finder page.
- khtml/dom/dom_string.cpp: (DOM::DOMString::operator += ): prevent nil dereference when DOMString being added is nil
- 11:53 AM Changeset in webkit [8611] by
-
- 4 edits in trunk/WebCore
Fix for rdar://3963151 "Mail only pasted ~950 of 1407 text lines into my message!" Force tokenizer to run synchronously while parsing document fragments, so it doesnt stop halfway through and cause truncated content.
- 9:48 AM Changeset in webkit [8610] by
-
- 2 edits in trunk/WebKit
Reviewed by Ken.
- fixed <rdar://problem/3997185> The Web view on .Mac Prefs caused System Prefs to lockup (resolved by re-boot only)
- WebCoreSupport.subproj/WebBridge.m: (-[WebBridge nextKeyViewOutsideWebFrameViews]): Don't allow recursion here; assert on debug build, return nil on deployment. I couldn't get my machine into a state to repro this problem (and neither could the originator), but it's obvious from the stack crawl that this method was recursing when it shouldn't have.
- 9:35 AM Changeset in webkit [8609] by
-
- 20 edits in trunk
Reviewed by Hyatt
Fix for this bug:
<rdar://problem/3982183> Mail's HTML paragraphs appear with unintended margins in Entourage and Eudora
- khtml/editing/htmlediting.cpp: (khtml::createDefaultParagraphElement): Change element we make from <p> to <div>. This fixes the problem, as these other mailers show <div> elements without margins.
Some test files needed to change to preserve the ability to "eyeball" the results.
Many others changed just because their <p> elements changed to <div> elements.
- layout-tests/editing/deleting/delete-3928305-fix-expected.txt
- layout-tests/editing/deleting/delete-at-paragraph-boundaries-002-expected.txt
- layout-tests/editing/inserting/insert-div-013-expected.txt
- layout-tests/editing/inserting/insert-div-013.html
- layout-tests/editing/inserting/insert-div-014-expected.txt
- layout-tests/editing/inserting/insert-div-014.html
- layout-tests/editing/inserting/insert-div-018-expected.txt
- layout-tests/editing/inserting/insert-div-018.html
- layout-tests/editing/inserting/insert-div-019-expected.txt
- layout-tests/editing/inserting/insert-div-019.html
- layout-tests/editing/inserting/insert-div-020-expected.txt
- layout-tests/editing/inserting/insert-div-020.html
- layout-tests/editing/inserting/insert-div-021-expected.txt
- layout-tests/editing/inserting/insert-div-021.html
- layout-tests/editing/style/remove-underline-across-paragraph-expected.txt
- layout-tests/editing/style/remove-underline-across-paragraph-in-bold-expected.txt
- layout-tests/editing/style/remove-underline-after-paragraph-expected.txt
- layout-tests/editing/style/remove-underline-after-paragraph-in-bold-expected.txt
- 9:28 AM Changeset in webkit [8608] by
-
- 3 edits in trunk/WebCore
Reviewed by Hyatt
Fix for this bug:
<rdar://problem/3996737> REGRESSION (Mail): Copy/paste in Mail inserts returns
The root cause of the problem is that a couple of pieces of code in AppKit and Mail
insert newlines into markup as it is generated, and the paste code in WebCore was
not smart about nodes that do not render (as is the case with these added newlines).
So, the solution is to remove these unrendered nodes in the paste code in a pre-pass.
Fortunately, my recent addition of such a pass to the paste code to handle styles
gave me a convenient place to put this new logic.
- khtml/editing/htmlediting.cpp: (khtml::ReplacementFragment::ReplacementFragment): Use new name for function below. (khtml::ReplacementFragment::computeStylesAndRemoveUnrendered): Name change from computeStylesForNodes(). Now does the additional work of removing unrendered nodes, as mentioned above. (khtml::isNodeRendered): New helper function.
- khtml/editing/htmlediting.h: Updated as necessary.
- 9:23 AM Changeset in webkit [8607] by
-
- 1 edit in trunk/WebCore/ChangeLog-2005-08-23
Forgot to paste in radar URL to show which bug I fixed
- 9:21 AM Changeset in webkit [8606] by
-
- 2 edits2 adds in trunk
Reviewed by Hyatt
Fix for this bug:
The styling code did not move to the next node when the starting position was
at the last offset of a node. Instead, it styled it. Clearly wrong. Solution
is to borrow a check from the delete algorithm. Though I call caretMaxOffset(),
which I consider deprecated, it is still the simplest and most strightforward
way to ask the right question for this kind of problem.
- khtml/editing/htmlediting.cpp: (khtml::ApplyStyleCommand::applyInlineStyle): Fixed, as described above.
- layout-tests/editing/style/style-3998892-fix-expected.txt: Added.
- layout-tests/editing/style/style-3998892-fix.html: Added.
Feb 16, 2005:
- 5:39 PM Changeset in webkit [8605] by
-
- 2 edits in trunk/WebCore
Fixed: <rdar://problem/3954842> Forward/reply to an HTML email can result in nothing (in cases with <link> tags for CSS)
Reviewed by john.
- khtml/xml/dom_nodeimpl.cpp: (NodeBaseImpl::addChild): don't call insertedIntoDocument on the added child if "this" itself is not in the document.
- 5:34 PM Changeset in webkit [8604] by
-
- 3 edits in trunk/WebCore
Written by Darin, reviewed by Maciej and me
- change required to make previous checkin work with English language RSS pages
- kwq/KWQKURL.h: new private method isHierarchical
- kwq/KWQKURL.mm: (KURL::KURL): add hierarchical base URL check when determining whether the URL is absolute (KURL::isHierarchical): new method, returns true if this is a valid URL with a slash just past the scheme's trailing colon
- 4:55 PM Changeset in webkit [8603] by
-
- 1 edit in trunk/JavaScriptCore/kjs/date_object.cpp
- added extensions to toLocalString, toLocaleTimeString, toLocaleDateString to give more control over date formating (4007277)
- 4:15 PM Changeset in webkit [8602] by
-
- 2 edits in trunk/WebKit
Written by Darin, reviewed by me.
- WebKit part of fix for <rdar://problem/4007384> FILTER: Bookmark of RSS with Japanese search word & multiple RSS pages loses filter
- DOM.subproj/DOMPrivate.h: updated this file, which is a copy of the WebCore version
- 4:14 PM Changeset in webkit [8601] by
-
- 3 edits in trunk/WebCore
Written by Darin, reviewed by me.
- WebCore part of fix for <rdar://problem/4007384> FILTER: Bookmark of RSS with Japanese search word & multiple RSS pages loses filter
- kwq/DOM.mm: (-[DOMElement _getURLAttribute:]): new SPI method, uses parseURL and completeURL to get valid URL from attribute value
- kwq/DOMPrivate.h: declare new SPI method
- 1:20 PM Changeset in webkit [8600] by
-
- 2 edits in trunk/WebKit
Fixed <rdar://problem/3966973> Tiger 8A357: Binary Compatiblity: frequent Webstractor.app crashes [WebImageData _nextFrame]
Webstractor.app was playing tricks to create thumbnails of
pages. This caused the 'focusView' to be incorrect during
animated GIF frame rendering.
Reviewed by Chris.
- WebCoreSupport.subproj/WebImageRenderer.m: (-[WebImageRenderer _startOrContinueAnimationIfNecessary]):
- 11:55 AM Changeset in webkit [8599] by
-
- 2 edits in trunk/WebKit
Reviewed by me, code change by Darin.
- fixed the build on Panther
- WebView.subproj/WebFormDataStream.m: (webSetHTTPBody): Added a Panther-specific code path that just loads all the data into one big NSData object. This means that bug 3686434 won't be fixed on SUPanWheat; we'll still load the file into memory before sending it to the server on Panther.
Feb 15, 2005:
- 4:31 PM Changeset in webkit [8598] by
-
- 2 edits in trunk/WebKit
Fixed <rdar://problem/3998368> Tiger8A376: WebTextRenderer assertion failure in Safari while browsing news.bbc.co.uk
Removed use of FATAL_ALWAYS from getUncachedWidth(). It's unclear
why we would trigger the FATAL_ALWAYS. In the past we've seen
the message triggered because of corrupt fonts. Anyway, in this
particular case, we will now return 0 for the character width,
rather than exiting.
Reviewed by David Harrison.
- WebCoreSupport.subproj/WebTextRenderer.m: (getUncachedWidth):
- 3:48 PM Changeset in webkit [8597] by
-
- 6 edits in trunk/WebCore
Reviewed by Darin.
<rdar://problem/3942428> reproducible crash loading cbs.sportsline.com
This change reverts the fix for <rdar://problem/3805311>, and
re-fixes it in a different (better) way. Instead of preventing
programmatic open from setting the parsing flag, instead make sure
that programmatic close resets it.
- khtml/khtml_part.cpp: (KHTMLPart::openURL): (KHTMLPart::didExplicitOpen): (KHTMLPart::closeURL): (KHTMLPart::begin): (KHTMLPart::end): (KHTMLPart::endIfNotLoading): (KHTMLPart::slotFinishedParsing): (KHTMLPart::checkEmitLoadEvent):
- khtml/khtml_part.h:
- khtml/khtmlpart_p.h: (KHTMLPartPrivate::KHTMLPartPrivate):
- khtml/xml/dom_docimpl.cpp: (DocumentImpl::open): (DocumentImpl::implicitOpen): (DocumentImpl::close): (DocumentImpl::implicitClose):
- khtml/xml/dom_docimpl.h:
- 3:41 PM Changeset in webkit [8596] by
-
- 4 edits in trunk/WebCore
Reviewed by Maciej.
<rdar://problem/3933665> smart delete seems to delete too much after expanding selection with arrow keys
Fixed by updating the selection granularity. Only byWord granularity enables smart delete, but in this
case the granularity changed from byWord to byCharacter.
- khtml/khtml_part.cpp: (KHTMLPart::setSelectionGranularity):
- khtml/khtml_part.h:
- kwq/WebCoreBridge.mm: (-[WebCoreBridge rangeByExpandingSelectionWithGranularity:]): (-[WebCoreBridge rangeByAlteringCurrentSelection:direction:granularity:]): (-[WebCoreBridge alterCurrentSelection:direction:granularity:]):
- 3:31 PM Changeset in webkit [8595] by
-
- 2 edits in trunk/WebCore
Reviewed by Darin.
(continued) <rdar://problem/4004305> REGRESSION (Mail): Command-right-arrow on wrapped text goes to end of previous line
This was supposed have been committed yesterday with the other part of the fix, but was not.
- khtml/editing/visible_units.cpp: (khtml::endOfWord):
- 2:53 PM Changeset in webkit [8594] by
-
- 4 edits in trunk/WebKit
Fixed <rdar://problem/3999467> when Osaka-Mono is specified as fixed width font, Osaka used instead
Lie about Osaka-Mono. Treat it as fixed pitch, even though,
strictly speaking it isn't. (Similar to what we do with
Courier New.)
Reviewed by David Harrison.
- WebCoreSupport.subproj/WebTextRenderer.m: (-[WebTextRenderer _computeWidthForSpace]):
- WebCoreSupport.subproj/WebTextRendererFactory.h:
- WebCoreSupport.subproj/WebTextRendererFactory.m: (-[NSFont _web_isFakeFixedPitch]): (-[WebTextRendererFactory isFontFixedPitch:]): (-[WebTextRendererFactory fontWithFamily:traits:size:]):
- 9:01 AM Changeset in webkit [8593] by
-
- 4 edits2 adds in trunk
Reviewed by John
Fix for this bug:
<rdar://problem/3951178> REGRESSION (Mail): blank line lost after pasting as quotation
Problem was that the blank line after the selection was getting deleted incorrectly since the
paste code thought this was an unneeded placeholder rather than a placeholder outside of the
selection.
- khtml/editing/htmlediting.cpp: (khtml::CompositeEditCommand::removeBlockPlaceholderIfNeeded): Now calls findBlockPlaceholder. (khtml::CompositeEditCommand::findBlockPlaceholder): Moved finding code formerly in removeBlockPlaceholderIfNeeded to this new helper. (khtml::ReplaceSelectionCommand::doApply): Do not delete placeholder up front. Call findBlockPlaceholder, and delete it later if needed in the already-existing cleanup step.
- khtml/editing/htmlediting.h: Add new function.
New layout test.
- layout-tests/editing/pasteboard/paste-text-017-expected.txt: Added.
- layout-tests/editing/pasteboard/paste-text-017.html: Added.
Result changed for the better.
- layout-tests/editing/pasteboard/paste-text-011-expected.txt
Feb 14, 2005:
- 5:52 PM Changeset in webkit [8592] by
-
- 2 edits in trunk/WebCore
Reviewed by Darin.
<rdar://problem/4004305> REGRESSION (Mail): Command-right-arrow on wrapped text goes to end of previous line
- khtml/editing/visible_text.cpp: (khtml::SimplifiedBackwardsTextIterator::advance): Add BR in for <rdar://problem/3917929> fix only if leaving a visible text node.
- khtml/editing/visible_units.cpp: (khtml::endOfWord): Do not move left over a paragraph boundary.
- 1:09 PM Changeset in webkit [8591] by
-
- 6 edits4 deletes in trunk/WebCore
Reviewed by John.
- fixed <rdar://problem/3686434> Safari uses too much RAM on file upload, leading to malloc errors and crashes (HP printers)
- khtml/html/html_formimpl.cpp: (DOM::FormDataList::begin): Updated to use a list of FormDataListItem instead of QCString. (DOM::FormDataList::end): Ditto. (DOM::HTMLFormElementImpl::formData): Same here, and also use appendFile rather than appendData when we encounter a path name rather than data. (DOM::HTMLInputElementImpl::appendFormData): Use appendFile here rather than reading the file in; the reading now happens inside WebKit. (DOM::FormDataList::appendString): Updated for FormDataListItem. (DOM::FormDataList::appendFile): Added.
- ForwardingHeaders/kfileitem.h: Emptied out the file; no longer includes KWQKFileItem.h.
- ForwardingHeaders/netaccess.h: Emptied out the file; no longer includes KWQKIONetAccess.h.
- kwq/KWQKFileItem.h: Removed.
- kwq/KWQKFileItem.mm: Removed.
- kwq/KWQKIONetAccess.h: Removed.
- kwq/KWQKIONetAccess.mm: Removed.
- WebCore.pbproj/project.pbxproj: Removed the 4 files above.
- small unrelated fix (not reviewed by John)
- khtml/ecma/kjs_window.cpp: (Window::isSafeScript): Put some logging code outside if statements so it works all the time.
- 12:06 PM Changeset in webkit [8590] by
-
- 8 edits in trunk/WebKit
Reviewed by John.
- fixed <rdar://problem/3686434> Safari uses too much RAM on file upload, leading to malloc errors and crashes (HP printers)
- WebView.subproj/WebFormDataStream.h: Added webSetHTTPBody, which creates and connects an appropriate stream to an NSMutableURLRequest.
- WebView.subproj/WebFormDataStream.m: Added implementation here.
- WebCoreSupport.subproj/WebBridge.m: (-[WebBridge syncLoadResourceWithURL:customHeaders:postData:finalURL:responseHeaders:statusCode:]): Use webSetHTTPBody.
- WebCoreSupport.subproj/WebSubresourceClient.m: (+[WebSubresourceClient startLoadingResource:withURL:customHeaders:postData:referrer:forDataSource:]): Use webSetHTTPBody.
- WebView.subproj/WebFrame.m: (-[WebFrame _loadItem:withLoadType:]): Use webSetHTTPBody. (-[WebFrame _postWithURL:referrer:target:data:contentType:triggeringEvent:form:formValues:]): Ditto.
- English.lproj/StringsNotToBeLocalized.txt: Updated for this change and other recent changes.
- 10:19 AM Changeset in webkit [8589] by
-
- 28 edits in trunk/WebCore
Reviewed by Darin.
<rdar://problem/4004305> REGRESSION (Mail): Command-right-arrow on wrapped text goes to end of previous line
Fixed nextLinePosition to calculate affinity rather than take it as a parameter. Propagated the parameter change out to related methods.
- khtml/editing/htmlediting.cpp: (khtml::DeleteSelectionCommand::initializePositionData): (khtml::InsertLineBreakCommand::doApply): (khtml::InsertParagraphSeparatorCommand::doApply): (khtml::InsertTextCommand::input): (khtml::ReplaceSelectionCommand::doApply): (khtml::ReplaceSelectionCommand::applyStyleToInsertedNodes):
- khtml/editing/selection.cpp: (khtml::Selection::modifyExtendingRightForward): (khtml::Selection::modifyMovingRightForward): (khtml::Selection::modifyExtendingLeftBackward): (khtml::Selection::modifyMovingLeftBackward): (khtml::Selection::modify): (khtml::Selection::validate):
- khtml/editing/visible_position.cpp: (khtml::visiblePositionsOnDifferentLines):
- khtml/editing/visible_units.cpp: (khtml::rootBoxForLine): (khtml::startOfLine): (khtml::endOfLine): (khtml::inSameLine): (khtml::isStartOfLine): (khtml::isEndOfLine): (khtml::previousLinePosition): (khtml::nextLinePosition): (khtml::previousSentencePosition): (khtml::nextSentencePosition): (khtml::previousParagraphPosition): (khtml::nextParagraphPosition):
- khtml/editing/visible_units.h:
- khtml/khtml_events.cpp: (khtml::MouseEvent::offset):
- khtml/khtml_part.cpp: (KHTMLPart::isPointInsideSelection): (KHTMLPart::selectClosestWordFromMouseEvent): (KHTMLPart::handleMousePressEventTripleClick): (KHTMLPart::handleMousePressEventSingleClick): (KHTMLPart::handleMouseMoveEventSelection): (KHTMLPart::khtmlMouseReleaseEvent):
- khtml/rendering/render_block.cpp: (khtml::RenderBlock::positionForCoordinates):
- khtml/rendering/render_block.h:
- khtml/rendering/render_br.cpp: (RenderBR::positionForCoordinates):
- khtml/rendering/render_br.h:
- khtml/rendering/render_container.cpp: (RenderContainer::positionForCoordinates):
- khtml/rendering/render_container.h:
- khtml/rendering/render_inline.cpp: (RenderInline::positionForCoordinates):
- khtml/rendering/render_inline.h:
- khtml/rendering/render_object.cpp: (RenderObject::caretRect): (RenderObject::positionForCoordinates):
- khtml/rendering/render_object.h:
- khtml/rendering/render_replaced.cpp: (RenderReplaced::positionForCoordinates):
- khtml/rendering/render_replaced.h:
- khtml/rendering/render_text.cpp: (RenderText::positionForCoordinates):
- khtml/rendering/render_text.h:
- khtml/xml/dom_position.cpp: (DOM::Position::previousCharacterPosition): (DOM::Position::nextCharacterPosition): (DOM::Position::leadingWhitespacePosition): (DOM::Position::trailingWhitespacePosition):
- khtml/xml/dom_position.h:
- kwq/KWQAccObject.mm: (-[KWQAccObject value]): (-[KWQAccObject accessibilityAttributeValue:]): (-[KWQAccObject doAXLineForTextMarker:]): (-[KWQAccObject doAXTextMarkerRangeForLine:]): (-[KWQAccObject doAXTextMarkerForPosition:]): (-[KWQAccObject doAXLeftLineTextMarkerRangeForTextMarker:]): (-[KWQAccObject doAXRightLineTextMarkerRangeForTextMarker:]): (-[KWQAccObject doAXNextLineEndTextMarkerForTextMarker:]): (-[KWQAccObject doAXPreviousLineStartTextMarkerForTextMarker:]):
- kwq/KWQKHTMLPart.mm:
- kwq/WebCoreBridge.mm: (-[WebCoreBridge _visiblePositionForPoint:]):
Feb 12, 2005:
- 8:08 PM Changeset in webkit [8588] by
-
- 2 edits in trunk/WebCore
Reviewed by Ken and John.
Re-fixed a specific case of the following:
<rdar://problem/3790449> REGRESSION (Mail): underline behavior is flaky because of how CSS handles text-decoration
Oddly, Cmd-B, Cmd-U, type some text, return, Cmd-U, Cmd-B, type
some text, worked fine. But hitting the second Cmd-B before the
second Cmd-U still failed to remove underlining. The reason for
this is that our code to compute the style of the current position
did not work when you had a typing style and were positioned right
at a <br> element. For various reasons, this did not show up for
bold and italic, since those are handled through the font manager.
The following change fixes this - for elements that can't have
children, we add the dummy span after the element of interest,
rather than as a child of it.
- khtml/khtml_part.cpp: (KHTMLPart::selectionComputedStyle):
Feb 11, 2005:
- 5:51 PM Changeset in webkit [8587] by
-
- 2 edits in trunk/WebKit
Fixed <rdar://problem/4002505> 8A378: Endlessly animating gif's on http://www.entropy.ch
If animated images had no loop count property we were incorrectly
looping forver. Note, that in the course of fixing this bug
I found that ImageIO is incorrectly NOT reporting the loop count
for a whole class of animated GIFs.
Reviewed by Ken Kocienda.
- WebCoreSupport.subproj/WebImageData.m: (-[WebImageData _repetitionCount]):
- 5:03 PM Changeset in webkit [8586] by
-
- 2 edits in trunk/WebCore
Reviewed by Darin.
<rdar://problem/3978980> Double Clicking on a line in Mail selected the entire body
- khtml/editing/visible_units.cpp: (khtml::startOfWord): (khtml::endOfWord): Pay attention to being at the end of a paragraph.
(khtml::previousLinePosition):
(khtml::nextLinePosition):
(khtml::endOfParagraph):
Use DOWNSTREAM per recent affinity changes.
- 4:58 PM Changeset in webkit [8585] by
-
- 17 edits1 add in trunk
WebCore:
Fixed <rdar://problem/3985118> DOM objects not being marshaled on JS->native calls
Re-factored how 'native' wrappers for JS objects are created. The interpreter now
creates these wrappers. The WebCore subclass of the interpreter now overrides
createLanguageInstanceForValue() and creates a DOM ObjC wrapper for DOM objects.
- WebCore.pbproj/project.pbxproj:
- khtml/ecma/kjs_binding.cpp: (ScriptInterpreter::createLanguageInstanceForValue):
- khtml/ecma/kjs_binding.h:
- kwq/DOMUtility.mm: Added. (KJS::ScriptInterpreter::createObjcInstanceForValue):
- kwq/KWQKHTMLPart.mm: (KWQKHTMLPart::getAppletInstanceForView): (getInstanceForView): (KWQKHTMLPart::getEmbedInstanceForView): (KWQKHTMLPart::getObjectInstanceForView):
Fixed <rdar://problem/3985118> DOM objects not being marshaled on JS->native calls
Re-factored how 'native' wrappers for JS objects are created. The interpreter now
creates these wrappers. The WebCore subclass of the interpreter now overrides
createLanguageInstanceForValue() and creates a DOM ObjC wrapper for DOM objects.
Reviewed by Ken.
- bindings/c/c_utility.cpp: (convertValueToNPVariant):
- bindings/jni/jni_instance.cpp: (JavaInstance::invokeMethod):
- bindings/jni/jni_runtime.cpp: (JavaField::valueFromInstance): (JavaArray::valueAt):
- bindings/objc/WebScriptObject.mm: (-[WebScriptObject _setExecutionContext:KJS::Bindings::]): (+[WebScriptObject _convertValueToObjcValue:KJS::originExecutionContext:Bindings::executionContext:Bindings::]):
- bindings/objc/WebScriptObjectPrivate.h:
- bindings/objc/objc_utility.h:
- bindings/objc/objc_utility.mm: (KJS::Bindings::convertObjcValueToValue): (KJS::Bindings::createObjcInstanceForValue):
- bindings/runtime.cpp: (Instance::createBindingForLanguageInstance): (Instance::createRuntimeObject): (Instance::createLanguageInstanceForValue):
- bindings/runtime.h:
- kjs/interpreter.cpp: (Interpreter::createLanguageInstanceForValue):
- kjs/interpreter.h:
- 3:50 PM Changeset in webkit [8584] by
-
- 4 edits in trunk/WebCore
Fixed: <rdar://problem/3937352> Quote level not maintained when copied and pasted within a Mail message
Reviewed by harrison.
- khtml/editing/markup.cpp: (khtml::isMailBlockquote): new (khtml::createMarkup): retain the Mail quote level by including all ancestor mail block quotes
- khtml/rendering/render_block.cpp: (khtml::RenderBlock::positionForCoordinates): default to downstream for the affinity since the affinity is only upstream when the cursor is clicked to the right of a wrapped line
- khtml/rendering/render_text.cpp: (RenderText::positionForCoordinates): ditto
- 3:22 PM Changeset in webkit [8583] by
-
- 2 edits in trunk/WebCore
Reviewed by Darin.
fix for <rdar://problem/4004004> no need to add body element for xml documents
In the fix for <rdar://problem/3758785> we decided to add a body element when closing a document
to ensure that the onload handler would fire. This is unnecessary for xml documents,
so now we also check to see if we're dealing with an html document before adding the body element.
- khtml/xml/dom_docimpl.cpp: (DocumentImpl::close):
- 2:59 PM Changeset in webkit [8582] by
-
- 3 edits in trunk
Reviewed by Darin.
- layout-tests/apple-only/base/www.excite.com/index-expected.txt: updates tests because of custom tag change.
- layout-tests/apple-only/base/www.msnbc.com/index-expected.txt:
- layout-tests/apple-only/base/www.time.com/index-expected.txt:
- layout-tests/apple-only/base/www.travelocity.com/index-expected.txt:
- layout-tests/apple-only/base/www.zdnet.com/index-expected.txt:
- layout-tests/fast/overflow/003-expected.txt:
- layout-tests/fast/js/window-object-cross-frame-calls-expected.txt: updated test because of added Body (see rdar://problem/3758785)
- 2:47 PM Changeset in webkit [8581] by
-
- 3 edits in trunk
versioning for TOT, Safari 2.0 (186+)
- 2:22 PM Changeset in webkit [8580]
-
- 1 copy in tags/Safari-186
This commit was manufactured by cvs2svn to create tag 'Safari-186'.
- 2:22 PM Changeset in webkit [8579] by
-
- 6 edits in trunk
Safari-186 stamp
- 11:59 AM Changeset in webkit [8578] by
-
- 2 edits in trunk/WebKit
Reviewed by Darin.
- fix deployment build on Panther
- WebView.subproj/WebHTMLView.m: (-[WebHTMLView changeBaseWritingDirection:]): ifdef out NSWritingDirectionNatural (-[WebHTMLView toggleBaseWritingDirection:]): fix a spacing issue
- 9:05 AM Changeset in webkit [8577] by
-
- 4 edits in trunk/WebCore
Reviewed by John.
- fixed <rdar://problem/3915449> paths are relative to the old src URL after document.open, which is supposed to clear the document, including the URL
- khtml/xml/dom_docimpl.h: Added a new openInternal function for use by KHTMLPart.
- khtml/xml/dom_docimpl.cpp: (DocumentImpl::open): Changed to do everything we did before, but also clear the URL and set the base URL based on the enclosing document. This is the basic JavaScript/DOM operation of opening a document, which is supposed to clear the document, including the URL. In the long run we might want to do even more document "resetting and clearing" in here, but this URL clearing is what's needed now to fix the most important problem. (DocumentImpl::openInternal): Moved the old open code in here, except for the "parsing" check, which is unnecessary and inappropriate in the one place we call this.
- khtml/khtml_part.cpp: (KHTMLPart::begin): Call openInternal instead of open.
Feb 10, 2005:
- 6:37 PM Changeset in webkit [8576]
-
- 10 copies4 deletes in tags/JavaScriptCore-125~6~2
This commit was manufactured by cvs2svn to create tag
'JavaScriptCore-125~6~2'.
- 6:37 PM Changeset in webkit [8575] by
-
- 2 edits in branches/Safari-1-2-branch/JavaScriptCore
Versioning for JavaScriptCore-125.6.2 for the Panther Security Update 2005-002
- 6:24 PM Changeset in webkit [8574] by
-
- 3 edits in branches/Safari-1-2-branch/JavaScriptCore
Fixed <rdar://problem/4002366> Safari crashes leaving https://www.entrust.com
Fixed binary incompatiblity inined a member function that used
to NOT be inline.
Reviewed by Darin.
- bindings/runtime_root.cpp: (RootObject::removeAllJavaReferencesForRoot):
- bindings/runtime_root.h:
- 5:38 PM Changeset in webkit [8573] by
-
- 2 edits in trunk/WebKit
Reviewed by Richard.
<rdar://problem/3991652> REGRESSION (Mail): Deleting entire line in reply deletes extra blank line and moves insertion point
- WebView.subproj/WebHTMLView.m: (-[WebHTMLView _deleteRange:killRing:prepend:smartDeleteOK:isTypingAction:]): (-[WebHTMLView _startDraggingImage:at:operation:event:sourceIsDHTML:DHTMLWroteData:]): (-[WebHTMLView _deleteWithDirection:granularity:killRing:isTypingAction:]): (-[WebHTMLView selectToMark:]): (-[WebHTMLView swapWithMark:]): (-[WebHTMLView transpose:]): (-[WebHTMLView _selectMarkedText]): (-[WebHTMLView _selectRangeInMarkedText:]): Adopt new default affinity of NSSelectionAffinityDownstream as of <rdar://problem/3937447>.
- 4:35 PM Changeset in webkit [8572] by
-
- 2 edits in trunk/WebCore
Reviewed by Hyatt
Fix for this bug:
<rdar://problem/3992092> 8A374: Mail crash while pasting - RemoveNodeCommand
- khtml/editing/htmlediting.cpp: (khtml::ReplaceSelectionCommand::doApply): Code tried to remove a node that was no longer in the document. We try to do a good job of detecting all these cases, and generally do. This one was missed. Fixed.
- 3:50 PM Changeset in webkit [8571] by
-
- 2 edits in trunk/WebKit
Reviewed by Harrison.
- fixed <rdar://problem/4002084> Setting ResourceLoadDelegate to nil can cause a crash
- WebView.subproj/WebView.m: (-[WebView _cacheResourceLoadDelegateImplementations]): Set booleans to either YES or NO, rather than setting them only in the YES case.
- 3:48 PM Changeset in webkit [8570] by
-
- 2 edits in trunk/WebKit
Reviewed by Harrison.
- fixed <rdar://problem/3991225> Format->Style->Underline menu item does not get checked when selected text is underlined
- WebView.subproj/WebHTMLView.m: (-[WebHTMLView validateUserInterfaceItem:]): Added tons of additional cases in here for all the "action" style methods in this class that don't always want to be valid. For the ones where state makes sense, added the state-checking code too for the menu item case. (-[WebHTMLView ignoreSpelling:]): Removed unnecessary "editable text only" check since this command would work fine on a non-editable selection. (-[WebHTMLView swapWithMark:]): Ditto. (-[WebHTMLView changeBaseWritingDirection:]): Added. Like toggle, but based on the sender's tag.
- 3:47 PM Changeset in webkit [8569] by
-
- 3 edits in trunk/WebCore
Reviewed by Harrison.
- added support needed to fix <rdar://problem/3991225> Format->Style->Underline menu item does not get checked when selected text is underlined
- kwq/WebCoreBridge.h: Added selectionHasStyle: method.
- kwq/WebCoreBridge.mm: (-[WebCoreBridge selectionHasStyle:]): Added. Calls selectionHasStyle on the part.
- 2:51 PM Changeset in webkit [8568] by
-
- 5 edits in trunk/WebCore
Reviewed by Harrison.
- fixed <rdar://problem/3990484> cursor changes to I-beam when moving over text in widgets, even when selection off via CSS
- khtml/khtmlview.cpp: (KHTMLView::viewportMouseMoveEvent): Changed code to check canSelect when deciding whether to show an I-beam cursor.
- khtml/rendering/render_object.h: Added canSelect.
- khtml/rendering/render_object.cpp: (selectStartNode): Added. Helper function with the guts of shouldSelect. (RenderObject::canSelect): Added. Like shouldSelect, but does not call the "start selecting" event handler. (RenderObject::shouldSelect): Refactored to use selectStartNode.
- khtml/css/cssvalues.c: Regnerated with newer gperf.
- 2:30 PM Changeset in webkit [8567] by
-
- 3 edits in trunk/WebCore
Fix for 3867759, .mac regression where scrollers don't show up. Make sure you can set the .width and
.height properties on the Image object.
Reviewed by John Sullivan
- khtml/ecma/kjs_html.cpp: (ImageConstructorImp::construct): (Image::getValueProperty): (Image::putValue): (Image::Image):
- khtml/ecma/kjs_html.h:
- 2:25 PM Changeset in webkit [8566] by
-
- 10 edits4 adds in trunk
Reviewed by Chris
Fix for this bug:
<rdar://problem/3965158> Drag-n-drop within a rich text message sometimes changes the color of the dragged text
This change fixes the bug....and much more. Now, for the first time, the paste code can do "smart merging"
or "smooshing" of styles during its operation. Since this new code is actively, rather than passively
working with styles, it fixes the bug, and lays the groundwork for similar work we need to do to
preserve quote levels in Mail.
- khtml/css/css_valueimpl.cpp: (DOM::CSSMutableStyleDeclarationImpl::clear): New method. (DOM::CSSMutableStyleDeclarationImpl::removeBlockProperties): Ditto. (DOM::CSSMutableStyleDeclarationImpl::removePropertiesInSet): Ditto. (DOM::operator==): Add operator for CSSProperty.
- khtml/css/css_valueimpl.h: Declare new functions.
- khtml/editing/htmlediting.cpp: (khtml::isEmptyStyleSpan): Improved the test in this function, rolling together the old implementation with some code that did this work inline elsewhere. Sum of the parts is better than either test was by itself. (khtml::isStyleSpan): Check for ID_SPAN. (khtml::ApplyStyleCommand::removeCSSStyle): Call isEmptyStyleSpan. This was the place with an inline implementation before. (khtml::ReplacementFragment::ReplacementFragment): Now takes a DocumentImpl argument. No longer does a "default style" check, but rather calls functions which do a similar check to that, and much more. (khtml::ReplacementFragment::~ReplacementFragment): Deref document, and computed styles. (khtml::ReplacementFragment::styleForNode): New helper. Looks up and returns computed style for a node. (khtml::ReplacementFragment::removeNodePreservingChildren): New helper. (khtml::ReplacementFragment::computeStylesForNodes): New function which computes the "desired" style for every node in the fragment. This information is used later after paste is done as a reference for testing what styles need to be added, and which can be removed as redundant, from all the nodes inserted by the replacement code. (khtml::ReplacementFragment::removeStyleNodes): Clears out all style nodes from the fragment. They are no longer needed after the call to computeStylesForNodes(), (khtml::ReplaceSelectionCommand::ReplaceSelectionCommand): Add a document to the call to initialize the command's ReplacementFragment. (khtml::ReplaceSelectionCommand::doApply): Call applyStyleToInsertedNodes() after inserting nodes to make styles come out right. (khtml::ReplaceSelectionCommand::applyStyleToInsertedNodes): This is the "style smooshing" function. It computes the styles that need to be added to each node inserted, comparing the style it gets from just being inserted into its correct destination with the computed "desired style" done in the ReplacementFragment constructor. It then adds in all the necessary styles, and will also remove redundant styles.
- khtml/editing/htmlediting.h: Update declarations and member variables as needed.
- khtml/editing/markup.cpp: (khtml::startMarkup): Add additional style annotations to the markup we generate, so that paste code can preserve it. (khtml::markup): Ditto. (khtml::createMarkup): Ditto.
These test results are subtly better with this change. They no longer have an unneeded empty span.
Visually the same as before.
- layout-tests/editing/style/remove-underline-across-paragraph-expected.txt
- layout-tests/editing/style/remove-underline-across-paragraph-in-bold-expected.txt
- layout-tests/editing/style/remove-underline-expected.txt
- layout-tests/editing/style/remove-underline-from-stylesheet-expected.txt
New tests:
- layout-tests/editing/style/smoosh-styles-001-expected.txt
- layout-tests/editing/style/smoosh-styles-002-expected.txt
- layout-tests/editing/style/smoosh-styles-001.html
- layout-tests/editing/style/smoosh-styles-002.html
- 1:29 PM Changeset in webkit [8565] by
-
- 2 edits in trunk/WebCore
Reviewed by Adele.
- fixed <rdar://problem/3974988> WebHTMLView drops scroll wheel events when deltas are 0
- kwq/WebCoreScrollView.m: (-[WebCoreScrollView autoforwardsScrollWheelEvents]): Added, for Tiger only. For Tiger, removed the override of scrollWheel:, which doesn't work quite right because of how the delta attributes return all 0 for newfangled scrolling events from the new trackpads.
- 11:46 AM Changeset in webkit [8564] by
-
- 1 edit1 delete in trunk/JavaScriptCore
"Reviewed" by Richard (he told me the file was obsolete).
- got rid of an obsolete file
- bindings/npsap.h: Removed.
- 11:45 AM Changeset in webkit [8563] by
-
- 2 edits1 delete in trunk/WebKit
"Reviewed" by Richard (he told me the file was obsolete).
- got rid of an obsolete file
- Plugins.subproj/npsap.h: Removed.
- copy-webcore-files-to-webkit: Removed npsap.h.
- 11:12 AM Changeset in webkit [8562] by
-
- 3 edits in trunk/WebCore
Reviewed by Darin.
<rdar://problem/3991532> REGRESSION (Mail): Triple-click on trailing blank line should select previous line but doesn't
- khtml/css/cssvalues.c: (hash_val): (findValue):
- khtml/editing/selection.cpp: (khtml::Selection::validate): Do moral equiavalent of LeftWordIfOnBoundary for PARAGRAPH.
- 11:03 AM Changeset in webkit [8561] by
-
- 3 edits in trunk/WebCore
Reviewed by Darin.
<rdar://problem/3991848> Double-click on first character selects wrong item
- khtml/editing/selection.cpp: (khtml::Selection::validate): Honor the fact that clicking on a character positions the cursor on the left side of the character.
- 2:21 AM Changeset in webkit [8560] by
-
- 2 edits in trunk/WebCore
Fix for 3980778, repro crash in RootInlineBox::paint. Make sure that when merging blocks we dirty them for layout
up front. That way as we do the merge, we dont attempt to examine the lines in dirtyLinesForChangedChild.
Reviewed by mjs
- khtml/rendering/render_block.cpp: (khtml::RenderBlock::removeChild):
- 1:55 AM Changeset in webkit [8559] by
-
- 2 edits in trunk/WebCore
Fix for 3987010, fix a bug that caused the self-collapsing-block-cleared-float bit to never get set correctly.
Reviewed by mjs
- khtml/rendering/render_block.h: (khtml::RenderBlock::MarginInfo::setSelfCollapsingBlockClearedFloat):
- 1:34 AM Changeset in webkit [8558] by
-
- 2 edits in trunk/WebCore
Fix for 3992440, text not wrapping correctly on half moon bay web site. Refine an incorrect optimization I
added to be less restrictive.
Reviewed by mjs
- khtml/rendering/render_block.cpp: (khtml::RenderBlock::layoutBlockChildren):
- 12:40 AM Changeset in webkit [8557] by
-
- 5 edits in trunk/WebCore
Reviewed by Darin.
<rdar://problem/3977973> pages on ebay leak referenced JavaScript objects -- over time browsing becomes super-slow
I fixed this by removing all event listeners for a document, it's
children, and any disconnected nodes that used to be in the
document at document detach time. Mozilla temporarily disables
event listeners on such nodes, but re-enables them if you
re-parant a node into a new document. However, in WebCore, you
can't re-parent a node into another document, so there is no
observable change in behavior.
We have to do this to break the possible reference cycles between
event listeners and the dom nodes they are attached to (e.g. via
scope chain, as in this case).
- khtml/xml/dom_docimpl.cpp: (DocumentImpl::detach): (DocumentImpl::removeAllEventListenersFromAllNodesx): (DocumentImpl::registerDisconnectedNodeWithEventListeners): (DocumentImpl::unregisterDisconnectedNodeWithEventListeners): (DocumentImpl::removeAllDisconnectedNodeEventListeners):
- khtml/xml/dom_docimpl.h:
- khtml/xml/dom_nodeimpl.cpp: (NodeImpl::~NodeImpl): (NodeImpl::addEventListener): (NodeImpl::removeEventListener): (NodeImpl::removeAllEventListeners): (NodeImpl::removeHTMLEventListener): (NodeImpl::insertedIntoDocument): (NodeImpl::removedFromDocument):
- khtml/xml/dom_nodeimpl.h:
Feb 9, 2005:
- 4:39 PM Changeset in webkit [8556] by
-
- 2 edits in trunk/WebCore
Fixed: <rdar://problem/3999213> Sometimes 2 Windows Media Player plugin instances are loaded
Reviewed by hyatt.
- khtml/html/html_objectimpl.cpp: (HTMLObjectElementImpl::attach): Set needWidgetUpdate to false before calling updateWidget because updateWidget may cause this method or another method (which also calls updateWidget) to be called. (HTMLObjectElementImpl::recalcStyle): ditto
- 4:33 PM Changeset in webkit [8555] by
-
- 2 edits in trunk/WebKit
Fixed <rdar://problem/4000073> non-screen font error on www.worldofwarcraft.com
Reviewed by John Sullivan.
- WebCoreSupport.subproj/WebTextRenderer.m: (-[WebTextRenderer _smallCapsFont]):
- 4:30 PM Changeset in webkit [8554] by
-
- 23 edits in trunk/WebCore
Reviewed by Darin.
<rdar://problem/3937447> Mail-689: Arrow key navigation in new message body stops working when a line ends with a bold word
Added affinity to VisiblePosition. Changed Selection code to use affinity more.
(Partial) <rdar://problem/3982096> editing/pasteboard/paste-text-007 is failing
Changed ReplaceSelectionCommand to also pay attention to the top children of the incoming fragment, not just the very last node inserted, when deciding whether to insert a paragraph for the Apple interchange newline.
- khtml/ecma/kjs_window.cpp: (SelectionFunc::tryCall):
- khtml/editing/htmlediting.cpp: (khtml::EditCommandPtr::setStartingSelection): (khtml::EditCommandPtr::setEndingSelection): (khtml::EditCommand::setStartingSelection): (khtml::EditCommand::setEndingSelection): (khtml::CompositeEditCommand::deleteInsignificantTextDownstream): (khtml::CompositeEditCommand::moveParagraphContentsToNewBlockIfNecessary): (khtml::ApplyStyleCommand::splitTextAtStartIfNeeded): (khtml::ApplyStyleCommand::splitTextAtEndIfNeeded): (khtml::ApplyStyleCommand::splitTextElementAtStartIfNeeded): (khtml::ApplyStyleCommand::splitTextElementAtEndIfNeeded): (khtml::ApplyStyleCommand::mergeStartWithPreviousIfIdentical): (khtml::ApplyStyleCommand::mergeEndWithNextIfIdentical): (khtml::ApplyStyleCommand::joinChildTextNodes): (khtml::DeleteSelectionCommand::initializePositionData): (khtml::DeleteSelectionCommand::handleGeneralDelete): (khtml::DeleteSelectionCommand::calculateTypingStyleAfterDelete): (khtml::DeleteSelectionCommand::doApply): (khtml::InsertLineBreakCommand::doApply): (khtml::InsertParagraphSeparatorCommand::doApply): (khtml::InsertParagraphSeparatorInQuotedContentCommand::doApply): (khtml::InsertTextCommand::input): (khtml::MoveSelectionCommand::doApply): (khtml::ReplaceSelectionCommand::ReplaceSelectionCommand): (khtml::ReplaceSelectionCommand::~ReplaceSelectionCommand): (khtml::ReplaceSelectionCommand::doApply): (khtml::ReplaceSelectionCommand::completeHTMLReplacement): (khtml::ReplaceSelectionCommand::updateNodesInserted): (khtml::TypingCommand::deleteKeyPressed): (khtml::TypingCommand::forwardDeleteKeyPressed): (khtml::TypingCommand::markMisspellingsAfterTyping):
- khtml/editing/htmlediting.h:
- khtml/editing/selection.cpp: (khtml::Selection::Selection): (khtml::Selection::init): (khtml::Selection::moveTo): (khtml::Selection::modifyExtendingRightForward): (khtml::Selection::modifyMovingRightForward): (khtml::Selection::modifyExtendingLeftBackward): (khtml::Selection::modifyMovingLeftBackward): (khtml::Selection::modify): (khtml::Selection::xPosForVerticalArrowNavigation): (khtml::Selection::clear): (khtml::Selection::setBase): (khtml::Selection::setExtent): (khtml::Selection::setBaseAndExtent): (khtml::Selection::layout): (khtml::Selection::validate):
- khtml/editing/selection.h: (khtml::Selection::startAffinity): (khtml::Selection::endAffinity): (khtml::Selection::baseAffinity): (khtml::Selection::extentAffinity): (khtml::operator==):
- khtml/editing/text_affinity.h: (khtml::):
- khtml/editing/visible_position.cpp: (khtml::VisiblePosition::VisiblePosition): (khtml::VisiblePosition::init): (khtml::VisiblePosition::initUpstream): (khtml::VisiblePosition::initDownstream): (khtml::VisiblePosition::next): (khtml::VisiblePosition::previous): (khtml::startVisiblePosition): (khtml::endVisiblePosition):
- khtml/editing/visible_position.h: (khtml::VisiblePosition::): (khtml::VisiblePosition::VisiblePosition): (khtml::VisiblePosition::affinity): (khtml::VisiblePosition::setAffinity): (khtml::operator==):
- khtml/editing/visible_units.cpp: (khtml::previousBoundary): (khtml::nextBoundary): (khtml::startOfLine): (khtml::endOfLine): (khtml::previousLinePosition): (khtml::nextLinePosition): (khtml::startOfParagraph): (khtml::endOfParagraph): (khtml::previousParagraphPosition): (khtml::nextParagraphPosition): (khtml::startOfBlock): (khtml::endOfBlock): (khtml::startOfDocument): (khtml::endOfDocument):
- khtml/editing/visible_units.h:
- khtml/khtml_part.cpp: (KHTMLPart::findTextNext): (KHTMLPart::selectClosestWordFromMouseEvent): (KHTMLPart::handleMousePressEventTripleClick): (KHTMLPart::handleMousePressEventSingleClick): (KHTMLPart::handleMouseMoveEventSelection): (KHTMLPart::khtmlMouseReleaseEvent): (KHTMLPart::selectAll): (KHTMLPart::computeAndSetTypingStyle): (KHTMLPart::selectionComputedStyle):
- khtml/rendering/render_br.cpp: (RenderBR::positionForCoordinates):
- khtml/xml/dom_docimpl.cpp: (DocumentImpl::updateSelection):
- khtml/xml/dom_nodeimpl.cpp: (NodeBaseImpl::setFocus):
- khtml/xml/dom_position.cpp: (DOM::Position::previousCharacterPosition): (DOM::Position::nextCharacterPosition):
- khtml/xml/dom_position.h:
- kwq/KWQAccObject.mm: (-[KWQAccObject value]): (-[KWQAccObject visiblePositionForStartOfTextMarkerRange:]): (-[KWQAccObject visiblePositionForEndOfTextMarkerRange:]): (-[KWQAccObject accessibilityAttributeValue:]): (-[KWQAccObject doAXLineForTextMarker:]): (-[KWQAccObject doAXTextMarkerRangeForLine:]): (-[KWQAccObject doAXTextMarkerForPosition:]): (-[KWQAccObject doAXLeftLineTextMarkerRangeForTextMarker:]): (-[KWQAccObject doAXRightLineTextMarkerRangeForTextMarker:]): (-[KWQAccObject doAXNextWordEndTextMarkerForTextMarker:]): (-[KWQAccObject doAXPreviousWordStartTextMarkerForTextMarker:]): (-[KWQAccObject doAXNextLineEndTextMarkerForTextMarker:]): (-[KWQAccObject doAXPreviousLineStartTextMarkerForTextMarker:]): (-[KWQAccObject doSetAXSelectedTextMarkerRange:]):
- kwq/KWQAccObjectCache.mm: (KWQAccObjectCache::textMarkerForVisiblePosition): (KWQAccObjectCache::visiblePositionForTextMarker):
- kwq/KWQKHTMLPart.mm: (KWQKHTMLPart::findString): (KWQKHTMLPart::advanceToNextMisspelling): (KWQKHTMLPart::styleForSelectionStart): (KWQKHTMLPart::baseWritingDirectionForSelectionStart): (KWQKHTMLPart::setSelectionFromNone): (KWQKHTMLPart::respondToChangedSelection):
- kwq/WebCoreBridge.mm: (-[WebCoreBridge setSelectedDOMRange:affinity:]): (-[WebCoreBridge selectionAffinity]): (-[WebCoreBridge setMarkDOMRange:]): (-[WebCoreBridge _visiblePositionForPoint:]): (-[WebCoreBridge moveDragCaretToPoint:]): (-[WebCoreBridge editableDOMRangeForPoint:]): (-[WebCoreBridge ensureSelectionVisible]): (-[WebCoreBridge rangeOfCharactersAroundCaret]):
- 1:52 PM Changeset in webkit [8553] by
-
- 3 edits in trunk/WebCore
Fixed: <rdar://problem/3985211> Seed: Mail: Drag-and-drop destination indicator / insertion point disappears
Reviewed by kocienda.
- khtml/rendering/render_block.cpp: (khtml::RenderBlock::paintCaret): new (khtml::RenderBlock::paintObject): call paintCaret for the cursor caret and the drag caret
- khtml/rendering/render_block.h:
- 1:30 PM Changeset in webkit [8552]
-
- 10 copies4 deletes in tags/JavaScriptCore-125~6~1
This commit was manufactured by cvs2svn to create tag
'JavaScriptCore-125~6~1'.
- 1:30 PM Changeset in webkit [8551] by
-
- 1 edit in branches/Safari-1-2-branch/JavaScriptCore/JavaScriptCore.pbproj/project.pbxproj
Added "-lobjc" for buildit.
- 10:42 AM Changeset in webkit [8550] by
-
- 2 edits in branches/Safari-1-2-branch/JavaScriptCore
Versioning for the Panther Security Update 2005-002
Feb 8, 2005:
- 6:11 PM Changeset in webkit [8549] by
-
- 1 edit in branches/Safari-1-2-branch/JavaScriptCore/JavaScriptCore.pbproj/project.pbxproj
More changes for Java update.
- 6:05 PM Changeset in webkit [8548] by
-
- 2 edits in branches/Safari-1-2-branch/JavaScriptCore/bindings
More stuff for Java update.
- 5:45 PM Changeset in webkit [8547] by
-
- 23 edits2 deletes in branches/Safari-1-2-branch/JavaScriptCore
ck-ported Java LiveConnect implementation from Tiger/SUPanWheat.
Reviewed by Darin.
- JavaScriptCore.pbproj/project.pbxproj:
- Makefile.am:
- bindings/jni/jni_class.cpp: (JavaClass::methodsNamed): (JavaClass::fieldNamed):
- bindings/jni/jni_class.h:
- bindings/jni/jni_instance.cpp: (JavaInstance::JavaInstance): (JavaInstance::invokeMethod): (JavaInstance::invokeDefaultMethod):
- bindings/jni/jni_instance.h:
- bindings/jni/jni_jsobject.cpp: Added. (isJavaScriptThread): (JSObject::invoke): (JSObject::JSObject): (JSObject::call): (JSObject::eval): (JSObject::getMember): (JSObject::setMember): (JSObject::removeMember): (JSObject::getSlot): (JSObject::setSlot): (JSObject::toString): (JSObject::finalize): (JSObject::createNative): (JSObject::convertValueToJObject): (JSObject::convertJObjectToValue): (JSObject::listFromJArray):
- bindings/jni/jni_jsobject.h: Added. (KJS::Bindings::):
- bindings/jni/jni_objc.mm: Added. (convertNSStringToString): (KJS::Bindings::dispatchJNICall): (KJS::Bindings::getLastPolledView): (pollForAppletInView): (initializeWorkaround):
- bindings/jni/jni_runtime.cpp: (JavaField::JavaField): (JavaArray::convertJObjectToArray): (JavaField::dispatchValueFromInstance): (JavaField::valueFromInstance): (JavaField::dispatchSetValueToInstance): (JavaField::setValueToInstance): (JavaMethod::JavaMethod): (JavaArray::JavaArray): (JavaArray::valueAt):
- bindings/jni/jni_runtime.h: (KJS::Bindings::JavaString::JavaString): (KJS::Bindings::JavaString::_commonInit): (KJS::Bindings::JavaString::UTF8String): (KJS::Bindings::JavaString::uchars): (KJS::Bindings::JavaString::length): (KJS::Bindings::JavaString::ustring): (KJS::Bindings::JavaMethod::returnType): (KJS::Bindings::JavaMethod::isStatic): (KJS::Bindings::JavaArray::operator=): (KJS::Bindings::JavaArray::executionContext):
- bindings/jni/jni_utility.cpp: (callJNIStaticMethod): (KJS::Bindings::getMethodID): (KJS::Bindings::callJNIStaticBooleanMethod): (KJS::Bindings::getJNIField): (KJS::Bindings::convertValueToJValue):
- bindings/jni/jni_utility.h:
- bindings/jni_jsobject.cpp: Removed.
- bindings/jni_jsobject.h: Removed.
- bindings/runtime.cpp: (MethodList::MethodList): (MethodList::operator=): (Instance::setDidExecuteFunction): (Instance::didExecuteFunction): (Instance::getValueOfField): (Instance::setValueOfField): (Instance::createBindingForLanguageInstance): (Instance::createRuntimeObject): (Instance::Instance): (Instance::operator=):
- bindings/runtime.h: (KJS::Bindings::Class::fallbackObject): (KJS::Bindings::Instance::): (KJS::Bindings::Instance::Instance): (KJS::Bindings::Instance::getValueOfUndefinedField): (KJS::Bindings::Instance::supportsSetValueOfUndefinedField): (KJS::Bindings::Instance::setValueOfUndefinedField): (KJS::Bindings::Instance::valueOf): (KJS::Bindings::Instance::setExecutionContext): (KJS::Bindings::Instance::executionContext):
- bindings/runtime_array.cpp: (RuntimeArrayImp::RuntimeArrayImp): (RuntimeArrayImp::get):
- bindings/runtime_array.h:
- bindings/runtime_method.cpp: (RuntimeMethodImp::RuntimeMethodImp): (RuntimeMethodImp::get): (RuntimeMethodImp::call):
- bindings/runtime_method.h:
- bindings/runtime_object.cpp: (RuntimeObjectImp::~RuntimeObjectImp): (RuntimeObjectImp::RuntimeObjectImp): (RuntimeObjectImp::get): (RuntimeObjectImp::put): (RuntimeObjectImp::canPut): (RuntimeObjectImp::hasProperty): (RuntimeObjectImp::defaultValue): (RuntimeObjectImp::implementsCall): (RuntimeObjectImp::call):
- bindings/runtime_object.h:
- kjs/ustring.cpp: (KJS::CString::operator=):
- 5:45 PM Changeset in webkit [8546]
-
- 5 copies in branches/Safari-1-2-branch/JavaScriptCore/bindings
This commit was manufactured by cvs2svn to create branch
'Safari-1-2-branch'.
- 3:41 PM Changeset in webkit [8545] by
-
- 3 edits in trunk
Versioning for TOT, Safari 2.0 (185+). The tree is open.
- 3:31 PM Changeset in webkit [8544]
-
- 1 copy in tags/Safari-185
This commit was manufactured by cvs2svn to create tag 'Safari-185'.
- 3:31 PM Changeset in webkit [8543] by
-
- 6 edits in trunk
Safari-185 stamp (can't use 184 b/c of the "4", of course)
- 9:33 AM Changeset in webkit [8542] by
-
- 2 edits in trunk/WebCore
Reviewed by John
Fix for this bug:
<rdar://problem/3996344> Entire document content is deleted when only the first paragraph was supposed to be
Problem stems from my attempt to fix this bug: <rdar://problem/3986155> Insertion point goes
to beginning of doc after deleting.
I added an "optimization" that proved to do more harm than good. So, basically, the fix is to remove code.
- khtml/editing/htmlediting.cpp: (khtml::DeleteSelectionCommand::handleGeneralDelete)
- 8:53 AM Changeset in webkit [8541] by
-
- 1 edit in trunk/WebCore/ChangeLog-2005-08-23
Reviewed by Kevin.
- fixed <rdar://problem/3890352> REGRESSION (125-170, Panther-only): pasted textarea contents disappear (exception in NSText)
- kwq/KWQTextArea.mm: (-[KWQTextArea tile]): Don't resize the text view immediately here. Use performWithDelay to defer it to avoid the re-entrancy that bothers the Panther version of NSTextView. On Tiger, leave the code alone.
- 8:52 AM Changeset in webkit [8540] by
-
- 2 edits in trunk/WebCore
Reviewed by NOBODY (OOPS!).
- fixed <rdar://problem/3890352> REGRESSION (125-170, Panther-only): pasted textarea contents disappear (exception in NSText)
- kwq/KWQTextArea.mm: (-[KWQTextArea tile]): Don't resize the text view immediately here. Use performWithDelay to defer it to avoid the re-entrancy that bothers the Panther version of NSTextView. On Tiger, leave the code alone.
Feb 7, 2005:
- 5:33 PM Changeset in webkit [8539] by
-
- 2 edits in trunk/WebCore
Reviewed by Darin.
Fix for <rdar://problem/3993628> REGRESSION (180-181): Logitelnet bank's website doesn't work
This fixes an oversight in the fix for <rdar://problem/3964286>.
We're now making sure there is a document before calling checkCompleted in slotLoaderRequestDone.
That function is called even when other parts finish loads of their subresources, so we could end
up calling checkCompleted before we had a document. We also looked over all the other calls to
checkCompleted to convince ourselves no other call sites had a similar issue.
- khtml/khtml_part.cpp: (KHTMLPart::slotLoaderRequestDone): Check if doc is nil before calling checkCompleted.
- 2:42 PM Changeset in webkit [8538] by
-
- 2 edits in trunk/WebKit
Fixed: <rdar://problem/3993354> Safari claims to put RTFD on the pasteboard, but doesn't, in some cases
Reviewed by john.
- WebView.subproj/WebHTMLView.m: (-[WebHTMLView _stripAttachmentCharactersFromAttributedString:]): moved (-[WebHTMLView _writeSelectionWithPasteboardTypes:toPasteboard:cachedAttributedString:]): take cachedAttributedString parameter in case the attributed string was gotten already (-[WebHTMLView _writeSelectionToPasteboard:]): omit RTFD from the types list when there are no attachments
- 1:09 PM Changeset in webkit [8537] by
-
- 2 edits in trunk/WebKit
Reviewed by Ken.
<rdar://problem/3990693> REGRESSION (8A373): ctrl-k now deletes just one character instead of line
- WebView.subproj/WebHTMLView.m: (-[WebHTMLView _deleteWithDirection:granularity:killRing:isTypingAction:]): Set the selection so that deleteKeyPressedWithSmartDelete knows what to delete.
- 8:32 AM Changeset in webkit [8536] by
-
- 11 edits in trunk
Reviewed by Darin
Fix for this bug:
<rdar://problem/3953302> Replacing quoted text ends up with blue-colored text that is not quoted
- khtml/editing/htmlediting.cpp: (khtml::DeleteSelectionCommand::doApply): Removed special case delete code for select all. It was causing as many bugs as it fixed. What's more, the design concept is a bit shaky. By removing this special case, the bug goes away.
- khtml/editing/htmlediting.h: Remove declaration.
Test results using selectAll() updated to reflect changed behavior.
- layout-tests/editing/deleting/delete-3775172-fix-expected.txt:
- layout-tests/editing/deleting/delete-select-all-001-expected.txt:
- layout-tests/editing/deleting/delete-select-all-003-expected.txt:
- layout-tests/editing/inserting/insert-3654864-fix-expected.txt:
- layout-tests/editing/inserting/insert-3775316-fix-expected.txt:
- layout-tests/editing/inserting/insert-3851164-fix-expected.txt:
- layout-tests/editing/inserting/insert-3907422-fix-expected.txt:
- layout-tests/editing/pasteboard/paste-text-015-expected.txt:
- 8:26 AM Changeset in webkit [8535] by
-
- 4 edits in trunk/WebCore
Reviewed by Ken.
- fixed <rdar://problem/3994164> setting a new style attribute with setAttribute("style") doesn't blow away the old style
- khtml/css/css_valueimpl.h: Renamed parseProperty to parseDeclaration, since it's used to parse an entire style declaration, not a single property.
- khtml/css/css_valueimpl.cpp: (DOM::CSSMutableStyleDeclarationImpl::parseDeclaration): Renamed, and added code to clear m_values.
- khtml/html/html_elementimpl.cpp: (HTMLElementImpl::parseHTMLAttribute): Call function by its new name, and remove some unnecessary comments.
Feb 6, 2005:
- 10:44 PM Changeset in webkit [8534] by
-
- 2 edits in trunk/WebCore
Reviewed by Maciej.
- fixed <rdar://problem/3993722> need oncut and onpaste handlers implemented for <textarea> (needed for widgets)
- kwq/KWQTextArea.mm: (-[KWQTextAreaTextView dispatchHTMLEvent:]): Added. (-[KWQTextAreaTextView cut:]): Dispatch "before cut" and "cut" events. (-[KWQTextAreaTextView copy:]): Dispatch "before copy" and "copy" events. (-[KWQTextAreaTextView paste:]): Dispatch "before paste" and "paste" events. (-[KWQTextAreaTextView pasteAsPlainText:]): Ditto. (-[KWQTextAreaTextView pasteAsRichText:]): Ditto.
- 10:37 PM Changeset in webkit [8533] by
-
- 3 edits in trunk/WebCore
Reviewed by Maciej.
- fixed <rdar://problem/3943038> <input type=search> that is focused in onload handler doesn't have a visible editor
- khtml/xml/dom_docimpl.cpp: (DocumentImpl::setFocusNode): Always update layout before giving focus to a widget. This prevents the bad case where we give a widget focus before it has been positioned or sized, causing us to exercise edge cases AppKit doesn't handle well.
- kwq/KWQTextField.mm: (-[KWQTextFieldController initWithTextField:QLineEdit:]): Remove workaround code I added to fix bug 3943049. Updating the layout fixes the same problem in a cleaner, safer way, and solves another problem, with the way the clip view is set up.
- 10:31 PM Changeset in webkit [8532] by
-
- 3 edits in trunk/WebCore
Reviewed by Maciej.
- fixed <rdar://problem/3425232> textarea won't trigger onchange action when clicking to new field
- khtml/rendering/render_form.h: Added new m_dirty data member.
- khtml/rendering/render_form.cpp: (RenderTextArea::RenderTextArea): Initialize m_dirty to false. (RenderTextArea::detach): Call value() on the DOM element to cause it to fetch the value from this object. (RenderTextArea::handleFocusOut): Ditto. Also send the onchange event based only on the m_dirty flag. (RenderTextArea::updateFromElement): Clear the m_dirty flag if the edited value is blown away by a value that comes from the DOM element. Remove code to clear the element's m_dirtyvalue flag; that's an unnecessary optimization, and ideally we'll stop having code in the render object that knows about that flag later. (RenderTextArea::slotTextChanged): Set the m_dirty flag.
- 10:26 PM Changeset in webkit [8531] by
-
- 2 edits in trunk/WebCore
Reviewed by Maciej.
- re-fixed <rdar://problem/3760910> please add support for custom tag names in HTML
- khtml/xml/dom_docimpl.cpp: (DocumentImpl::tagId): Use ID_LAST_TAG + 1 for the ID of the first assigned tag ID. Before we'd use ID_LAST_TAG, which resulted in the same number being used for ID_COMMENT and the first custom tag. (DocumentImpl::tagName): Use ID_LAST_TAG + 1, as above. (DocumentImpl::namespaceURI): Change a < ID_LAST_TAG to <= ID_LAST_TAG in the same spirit as above.
- 10:18 PM Changeset in webkit [8530] by
-
- 2 edits in trunk/WebCore
Reviewed by Maciej.
- fixed <rdar://problem/3986639> Crash occurs after choosing Undo Typing from the Edit menu
- kwq/KWQTextArea.mm: (-[KWQTextArea viewWillMoveToWindow:]): Remove actions from undo manager when the view is removed from the window. Unfortunately, to do this the code has to know that the target of NSTextView actions will be the text storage object, but given the NSText architecture, that's pretty clear.
- 10:13 PM Changeset in webkit [8529] by
-
- 3 edits in trunk/WebKit
Reviewed by Maciej.
- fixed <rdar://problem/3963166> PDFView SPI print method is being deprecated, moving to PDFDocument; please update WebKit
- WebView.subproj/WebPDFView.m: (-[WebPDFView printOperationWithPrintInfo:]): Target the document instead of the view.
- English.lproj/StringsNotToBeLocalized.txt: Updated for recent changes and also moved one translation to be a file-specific item rather than a file-independent one.
- 12:19 PM Changeset in webkit [8528] by
-
- 6 edits in trunk
WebCore:
Fixed: <rdar://problem/3991974> REGRESSION: www.jabra.com world location screen does not work
Reviewed by hyatt.
- kwq/KWQKJavaAppletWidget.mm: (KJavaAppletWidget::KJavaAppletWidget): fallback to the document's base URL if there is no baseURL attribute
- kwq/WebCoreBridge.h:
- kwq/WebCoreBridge.mm: (-[WebCoreBridge baseURL]): new
WebKit:
Fixed: <rdar://problem/3991974> REGRESSION: www.jabra.com world location screen does not work
Reviewed by hyatt.
- WebCoreSupport.subproj/WebBridge.m: (-[WebBridge viewForPluginWithURL:attributeNames:attributeValues:MIMEType:]): use the baseURL from the bridge rather than from the response
Feb 4, 2005:
- 5:49 PM Changeset in webkit [8527] by
-
- 3 edits in trunk/WebCore
Reviewed by Darin.
Rolled out Ken's accidental checkin when committing <rdar://problem/3986155> fix yesterday.
- khtml/editing/selection.cpp: (khtml::Selection::validate):
- 5:45 PM Changeset in webkit [8526] by
-
- 2 edits in trunk/WebCore
Reviewed by Darin.
Fix for <rdar://problem/3758785> Safari no longer works at BankOfAmerica online banking for military users
When closing the document, if a body doesn't exist we now create one. This bug was preventing the onload handler from
firing in cases where there wasn't a body. In the BankOfAmerica case, the page was just a bit of script where the onload
handler redirected to the correct page.
- khtml/xml/dom_docimpl.cpp: (DocumentImpl::close):
- 2:41 PM Changeset in webkit [8525] by
-
- 2 edits in trunk/WebKit
Fixed: <rdar://problem/3802781> rtf->html pasteboard conversion using xhtml
Reviewed by kocienda.
- WebView.subproj/WebHTMLView.m: (+[WebHTMLView _excludedElementsForAttributedStringConversion]): new (-[WebHTMLView _documentFragmentFromPasteboard:allowPlainText:]): call _excludedElementsForAttributedStringConversion
- 2:18 PM Changeset in webkit [8524] by
-
- 6 edits12 adds in trunk
Reviewed by Chris
Fix for this bug:
<rdar://problem/3986155> Insertion point goes to beginning of doc after deleting
- khtml/editing/htmlediting.cpp: (khtml::DeleteSelectionCommand::setStartNode): New convenience to handle reference counting when setting. (khtml::DeleteSelectionCommand::handleGeneralDelete): This contains the crux of the bug fix. Improve tests that detect when a selected node needs to be retained, rather than deleted, to preserve the intent of the user. This has the side effect of causing the insertion point placement code to succeed rather than fail. Before this fix, the failure of the insertion point placement code caused the insertion point to jump to the start of the document, which is the symptom that can be perceived by users when editing.
- khtml/editing/htmlediting.h: Add setStartNode declaration.
- khtml/editing/visible_units.cpp: (khtml::startOfBlock): This function had a stubbed-in non-tested implementation. Implement and
- layout-tests/editing/deleting/delete-at-paragraph-boundaries-001-expected.txt: Added.
- layout-tests/editing/deleting/delete-at-paragraph-boundaries-001.html: Added.
- layout-tests/editing/deleting/delete-at-paragraph-boundaries-002-expected.txt: Added.
- layout-tests/editing/deleting/delete-at-paragraph-boundaries-002.html: Added.
- layout-tests/editing/deleting/delete-at-paragraph-boundaries-003-expected.txt: Added.
- layout-tests/editing/deleting/delete-at-paragraph-boundaries-003.html: Added.
- layout-tests/editing/deleting/delete-at-paragraph-boundaries-004-expected.txt: Added.
- layout-tests/editing/deleting/delete-at-paragraph-boundaries-004.html: Added.
- layout-tests/editing/deleting/delete-at-paragraph-boundaries-005-expected.txt: Added.
- layout-tests/editing/deleting/delete-at-paragraph-boundaries-005.html: Added.
- layout-tests/editing/deleting/delete-at-paragraph-boundaries-006-expected.txt: Added.
- layout-tests/editing/deleting/delete-at-paragraph-boundaries-006.html: Added.
- 10:45 AM Changeset in webkit [8523]
-
- 3 copies in tags/Safari-183
This commit was manufactured by cvs2svn to create tag 'Safari-183'.
- 10:45 AM Changeset in webkit [8522] by
-
- 1 edit in trunk/JavaScriptCore/ChangeLog
Move the Safari-183 marker in the ChangeLog, since we're going to include <rdar://problem/3972905> in today's Safari-183 submission
- 10:25 AM Changeset in webkit [8521] by
-
- 2 edits in trunk/WebKit
Fixed: <rdar://problem/3832973> copy text from PowerPoint, paste into Blot (or presumably Mail) and get a single missing image icon
Reviewed by john.
- WebView.subproj/WebHTMLView.m: (-[WebHTMLView _documentFragmentFromPasteboard:allowPlainText:]): prefer RTF and RTFD over images just as NSTextView does
Feb 3, 2005:
- 5:44 PM Changeset in webkit [8520] by
-
- 2 edits in trunk/WebKit
Fixed: <rdar://problem/3555137> REGRESSION (125-173): Flash animation can erase parts of chrome (bookmarks bar & tab bar)
convertRect:toView: returns incorrect results inside of viewWillMoveToWindow: with a nil window. Workaround this by catching this case.
Reviewed by darin.
- Plugins.subproj/WebBaseNetscapePluginView.m: (-[WebBaseNetscapePluginView superviewsHaveSuperviews]): new (-[WebBaseNetscapePluginView saveAndSetPortStateForUpdate:]): clip out the plug-in view when superviewsHaveSuperviews returns NO
- 5:41 PM Changeset in webkit [8519] by
-
- 2 edits in trunk/JavaScriptCore
Fixed <rdar://problem/3972905> CrashTracer: ...36 crashes at com.apple.WebCore: khtml::CSSStyleSelector::applyDeclarations + 120
Revert to old (and correct) behavior of returning runtime object
when passed as a parameter, rather than it's corresponding DOM
object.
Reviewed by Chris.
- bindings/objc/WebScriptObject.mm: (+[WebScriptObject _convertValueToObjcValue:KJS::originExecutionContext:Bindings::executionContext:Bindings::]):
- 4:02 PM Changeset in webkit [8518] by
-
- 2 edits in trunk/WebKit
Fixed: <rdar://problem/3893513> Sun iPlanet app: when saving to a file it brings up a window with the thing to be saved instead
Reviewed by adele.
- WebView.subproj/WebTextView.m: (+[WebTextView unsupportedTextMIMETypes]): added "text/ldif" to the list of MIME types that our text view doesn't handle
- 3:57 PM Changeset in webkit [8517] by
-
- 3 edits in trunk
versioning for TOT, Safari 2.0 (183+)
The tree is open!
- 3:46 PM Changeset in webkit [8516] by
-
- 6 edits in trunk
Safari-183 stamp
- 2:22 PM Changeset in webkit [8515] by
-
- 2 edits in trunk/WebCore
Fixed <rdar://problem/3987419> Stocks and Weather leak what appears to XMLHTTPRequest results
XMLHTTPRequests were causing massive leaks. _webcore_initWithHeaderString: did funky things with
self replacement. Re-wrote to use more traditional factory constructor avoiding self replacement.
Reviewed by David Harrison.
- kwq/KWQLoader.mm: (+[NSDictionary _webcore_dictionaryWithHeaderString:]): (KWQServeRequest): (KWQServeSynchronousRequest):
- 2:09 PM Changeset in webkit [8514] by
-
- 2 edits in trunk/WebKit
- English.lproj/StringsNotToBeLocalized.txt: updated
- 1:59 PM Changeset in webkit [8513] by
-
- 2 edits in trunk/WebKit
Fixed: <rdar://problem/3989611> Evite style "add vCalendar to calendar" do not work
Reviewed by adele.
- WebView.subproj/WebTextView.m: (+[WebTextView unsupportedTextMIMETypes]): added "text/x-vcalendar" to the list of MIME types our text view doesn't handle
- 11:56 AM Changeset in webkit [8512] by
-
- 2 edits in trunk/WebCore
Fixed: <rdar://problem/3938763> Cannot view Windows Media Player videos (soundtrack is played twice with delay)
Reviewed by hyatt.
- khtml/html/html_objectimpl.cpp: (HTMLObjectElementImpl::attach): set needWidgetUpdate to false right after calling updateWidget because dispatchHTMLEvent can end up calling this method again (HTMLObjectElementImpl::recalcStyle): ditto
- 10:17 AM Changeset in webkit [8511] by
-
- 2 edits in trunk/WebKit
Reviewed by Darin.
- fix deployment build breakage on Panther
- WebView.subproj/WebHTMLView.m: (-[WebHTMLView toggleBaseWritingDirection:]):
Feb 2, 2005:
- 5:44 PM Changeset in webkit [8510] by
-
- 2 edits in trunk/WebKit
Reviewed by Chris.
- WebKit part of fix for <rdar://problem/3980651> REGRESSION (125-180): Huge number of pages printed from certain page, iFrame involved
This also fixes the problems with printing from GMail, yay!
- WebView.subproj/WebHTMLView.m: (-[WebHTMLView _setPrinting:minimumPageWidth:maximumPageWidth:adjustViewSize:]): Don't adjust margins for header/footer here, because this is called for each subframe. (-[WebHTMLView knowsPageRange:]): Do adjust margins for header/footer here (analogous to WebTextView and WebImageView). Also, round the page height to an integer here (noticed in passing).
- 5:44 PM Changeset in webkit [8509] by
-
- 3 edits in trunk/WebCore
Reviewed by Chris.
- WebCore part of fix for <rdar://problem/3980651> REGRESSION (125-180): Huge number of pages printed from certain page, iFrame involved
This also fixes the problems with printing from GMail, yay!
- khtml/rendering/render_flow.cpp: (RenderFlow::paintLines): If the current line is taller than the entire page height (e.g. tall iFrame), don't try to avoid splitting it across pages.
- kwq/WebCoreBridge.mm: (-[WebCoreBridge computePageRectsWithPrintWidthScaleFactor:printHeight:]): Handle error cases in a more obvious manner; this will cause future problems like this to print a blank page and complain to the console on debug builds, rather than print a zillionty mostly-blank pages.
- 4:47 PM Changeset in webkit [8508] by
-
- 2 edits in trunk/WebCore
Fixed: <rdar://problem/3960304> can't load a particular applet (at www.escape.de) unless it's the first applet to be loaded
Reviewed by hyatt.
- khtml/rendering/render_frames.cpp: (RenderPartObject::updateWidget): when getting the MIME type from the PARAM tag, make sure the MIME type is the text from the left of the semi-colon if there is one. We do this elsewhere as well.
- 4:14 PM Changeset in webkit [8507] by
-
- 2 edits in trunk/WebKit
Fixed: <rdar://problem/3986546> Cut, delete, and paste menu items are active when a image is opened in window
Reviewed by john.
- WebView.subproj/WebView.m: (-[WebView _responderValidateUserInterfaceItem:]): new, has the responder validate the item (-[WebView validateUserInterfaceItem:]): call VALIDATE for each repsonder selector using FOR_EACH_RESPONDER_SELECTOR macro (-[WebView _performResponderOperation:with:]): call factored out method _responderForResponderOperations (-[WebView _responderForResponderOperations]): new, code from _performResponderOperation:with:
- 2:01 PM Changeset in webkit [8506] by
-
- 8 edits in trunk
WebCore:
Fixed: <rdar://problem/3983628> control-click on WebView is not selecting the word under the cursor (Mail, non-editable WebView)
Reviewed by rjw.
- kwq/KWQKHTMLPart.mm: (KWQKHTMLPart::sendContextMenuEvent): check if SPI to always enable selecting closest word is enabled
- kwq/WebCoreBridge.h:
WebKit:
Fixed: <rdar://problem/3983628> control-click on WebView is not selecting the word under the cursor (Mail, non-editable WebView)
Reviewed by rjw.
- WebCoreSupport.subproj/WebBridge.m: (-[WebBridge selectWordBeforeMenuEvent]): new
- WebView.subproj/WebView.m: (-[WebView _selectWordBeforeMenuEvent]): new SPI (-[WebView _setSelectWordBeforeMenuEvent:]): new SPI
- WebView.subproj/WebViewInternal.h:
- WebView.subproj/WebViewPrivate.h:
- 1:31 PM Changeset in webkit [8505] by
-
- 2 edits in trunk/WebKit
Fixed: <rdar://problem/3986013> Assertion failure going back after page load error (no apparent problem in nondebug build)
Reviewed by rjw.
- WebView.subproj/WebDataSource.m: (-[WebDataSource _setPrimaryLoadComplete:]): don't set the data source data when the main client is nil
- 11:53 AM Changeset in webkit [8504] by
-
- 2 edits in trunk/WebCore
Reviewed by me
- khtml/editing/markup.cpp: (khtml::createMarkup): Removed debug spam I committed earlier in error.
- 11:23 AM Changeset in webkit [8503] by
-
- 1 edit in trunk/WebCore/ChangeLog-2005-08-23
Missed adding changelog comments for one of a batch of fixes I landed
- 11:09 AM Changeset in webkit [8502] by
-
- 2 edits in trunk/WebKit
Reviewed by Darin
Fix for this bug:
<rdar://problem/3823109> WebKit should support -toggleBaseWritingDirection: (bidi editing support)
- WebView.subproj/WebHTMLView.m: (-[WebHTMLView _applyParagraphStyleToSelection:withUndoAction:]): New function that calls through to new feature that allows callers to force all properties in a style to be applied as block styles. (-[WebHTMLView _alignSelectionUsingCSSValue:withUndoAction:]): Removed FIXME comment for something that has been fixed. (-[WebHTMLView toggleBaseWritingDirection:]): Implemented.
- 11:09 AM Changeset in webkit [8501] by
-
- 11 edits in trunk/WebCore
Reviewed by Darin
Fix for this bug:
<rdar://problem/3823109> WebKit should support -toggleBaseWritingDirection: (bidi editing support)
Since base writing direction is a paragraph-level property in AppKit, and we use the CSS direction
property in WebCore, which can be applied to inline elements as well as blocks, a new notion has
been added to the WebCore apply style logic. It is now possible to force all properties in a
style declaration to be applied as though they were block properties.
- khtml/editing/htmlediting.cpp: (khtml::ApplyStyleCommand::ApplyStyleCommand): Add an enum and a flag to this command that controls whether to force all properties in the style to be applied as block styles. Default is "no", retaining previous behavior. (khtml::ApplyStyleCommand::doApply): Switch on new flag to apply styles as before, or force all preoperties to be applied as block styles.
- khtml/editing/htmlediting.h: (khtml::ApplyStyleCommand::): Add an enum and a flag, as above.
- khtml/khtml_part.cpp: (KHTMLPart::applyParagraphStyle): New method to force application of all style properties as block styles.
- khtml/khtml_part.h: Update header declarations.
- kwq/KWQKHTMLPart.h: Update header declarations.
- kwq/KWQKHTMLPart.mm: (KWQKHTMLPart::baseWritingDirectionForSelectionStart): Accessor to help WebKit do a toggle operation on writing direction.
- kwq/WebCoreBridge.h: Update header declarations.
- kwq/WebCoreBridge.mm: (-[WebCoreBridge applyParagraphStyle:withUndoAction:]): New method to force application of all style properties as block styles. (-[WebCoreBridge baseWritingDirectionForSelectionStart]): Accessor to help WebKit do a toggle operation on writing direction.
Feb 1, 2005:
- 6:51 PM Changeset in webkit [8500] by
-
- 2 edits in trunk/WebCore
Fixed <rdar://problem/3985535> QT Plug-in JavaScript support now fails in <embed> tag only case
Reviewed by Maciej.
- khtml/ecma/kjs_html.cpp: (KJS::HTMLDocument::tryGet):
- 6:13 PM Changeset in webkit [8499] by
-
- 2 edits in trunk/WebKit
Fixed <rdar://problem/3977727> WebKit should use new SPI to support faster GIF rendering
Note: This REQUIRES build >= 3A362 when building on Tiger.
Reviewed by John.
- WebCoreSupport.subproj/WebImageData.m: (-[WebImageData _imageSourceOptions]):
- 5:54 PM Changeset in webkit [8498] by
-
- 2 edits in trunk/WebCore
Written by Darin, reviewed and tested by me
- fixed <rdar://problem/3969684> Panther-only: extra blank lines between pasted content from Blot
- kwq/KWQKHTMLPart.mm: (KWQKHTMLPart::attributedString): don't emit paragraph breaks if the margins are tiny; matches what we do for plain-text conversion
- 5:06 PM Changeset in webkit [8497] by
-
- 3 edits in trunk
versioning for TOT, Safari 2.0 (182+)
the tree is open!
- 4:50 PM Changeset in webkit [8496]
-
- 1 copy in tags/Safari-182
This commit was manufactured by cvs2svn to create tag 'Safari-182'.
- 4:50 PM Changeset in webkit [8495] by
-
- 6 edits in trunk
Safari-182 stamp
- 3:06 PM Changeset in webkit [8494] by
-
- 1 edit in trunk/WebKit/WebView.subproj/WebViewPrivate.h
Additional part of last checkin that I missed.
- 2:28 PM Changeset in webkit [8493] by
-
- 4 edits in trunk/WebKit
WebKit:
Added new SPI for <rdar://problem/3967063> need spi on WebView to turn of lcd text for Dashboard
Reviewed by Chris.
- WebCoreSupport.subproj/WebTextRenderer.m: (_drawGlyphs):
- WebView.subproj/WebView.m: (-[WebView drawRect:]): (-[WebView _dashboardBehavior:]): (+[WebView _setShouldUseFontSmoothing:]): (+[WebView _shouldUseFontSmoothing]):
- WebView.subproj/WebViewInternal.h:
- WebView.subproj/WebViewPrivate.h:
WebBrowser:
Used new SPI (from <rdar://problem/3967063> need spi on WebView to turn of lcd text for Dashboard)
Reviewed by Chris.
- EtchedStringButtonCell.m: (-[EtchedStringButtonCell drawInteriorWithFrame:inView:]):
- 1:23 PM Changeset in webkit [8492] by
-
- 13 edits in trunk
Reviewed by John
Fix for this bug:
<rdar://problem/3985160> Deficiencies in pasting architecture blocking progress on other bugs
- khtml/editing/html_interchange.h: Move style span text used to mark element added to add style to this header.
- khtml/editing/htmlediting.cpp: (khtml::styleSpanClassString): Change to use constant moved to html_interchange.h. (khtml::isStyleSpan): New helper function. Checks if this is a span we added to apply style. (khtml::CompositeEditCommand::insertNodeBefore): Added an assert to check that the node we are inserting before is not the body. (khtml::CompositeEditCommand::insertNodeAfter): Ditto, but check is for after. (khtml::ReplacementFragment::ReplacementFragment): Added code to process the "default style" that is added by the copy code. (khtml::ReplaceSelectionCommand::ReplaceSelectionCommand): first and last nodes inserted are now member variables instead of function locals. Initialize them here. (khtml::ReplaceSelectionCommand::~ReplaceSelectionCommand): Deref first and last nodes inserted if necessary. (khtml::ReplaceSelectionCommand::doApply): Change design to fix the bug. Major change is to separate out the code that inserts nodes into the tree so additional styling checks can be done in a centralized way. Also got rid of the notion of "merging into the end block." That concept was just wrong. (khtml::ReplaceSelectionCommand::completeHTMLReplacement): Tweak interface now that first and last nodes inserted are member variables. (khtml::ReplaceSelectionCommand::insertNodeAfterAndUpdateNodesInserted): New helper used by replace code to do the stated DOM operation and update state internal to the command. This will also be a catch point to handle the kinds of additional style checks needed to make paste work right. (khtml::ReplaceSelectionCommand::insertNodeAtAndUpdateNodesInserted): Ditto. (khtml::ReplaceSelectionCommand::insertNodeBeforeAndUpdateNodesInserted): Ditto. (khtml::ReplaceSelectionCommand::updateNodesInserted): Ditto.
- khtml/editing/htmlediting.h: Update declarations as needed.
- khtml/editing/markup.cpp: (khtml::createMarkup): Adds a "default style" span to the content written to the pasteboard. This will help us to fix some of the bugs blocked by the bug above.
- khtml/xml/dom_nodeimpl.cpp: (NodeImpl::lastDescendent): New helper.
- khtml/xml/dom_nodeimpl.h: Ditto.
- khtml/xml/dom_position.cpp: (DOM::Position::upstream): Fixed a bug which would allow the upstream position returned to be in unrendered content. (DOM::Position::downstream): Ditto.
- layout-tests/editing/deleting/delete-3775172-fix-expected.txt: Ending positions tweaked due to changes in upstream() and downstream() functions.
- layout-tests/editing/inserting/insert-3851164-fix-expected.txt: Ditto
- layout-tests/editing/inserting/insert-3907422-fix-expected.txt: Ditto
- layout-tests/editing/selection/extend-by-character-006-expected.txt: Ditto
- layout-tests/editing/pasteboard/paste-text-003-expected.txt: Changed what we expect, given new behavior of paste code.
Jan 31, 2005:
- 5:20 PM Changeset in webkit [8491] by
-
- 3 edits in trunk/WebCore
Reviewed by Dave Hyatt.
- fixed <rdar://problem/3983097> Tabbing on RSS pages gets stuck in search field with "full keyboard navigation" off
- kwq/KWQSlider.h:
- kwq/KWQSlider.mm: (QSlider::focusPolicy): Implemented this method for KWQSlider. It is needed for our widget subclasses that can become focused in some situations. I missed this when fixing 3949203 because it only comes into play when tab-to-controls is on, and because the other relevant methods are objective-C methods.
- 4:40 PM Changeset in webkit [8490] by
-
- 5 edits in trunk/WebKit
Fixed: <rdar://problem/3949806> REGRESSION: Source window fails to refresh correctly on reload
The data method was being called on WebDataSource before the data was set. This fix makes WebDataSource set the data before releasing the main client instead of waiting for the main client to set it when it is dealloced.
Reviewed by darin.
- WebView.subproj/WebDataSource.m: (-[WebDataSource _setData:]): moved within file (-[WebDataSource _setPrimaryLoadComplete:]): call _setData: with the data from the main client before letting go of the main client
- WebView.subproj/WebDataSourcePrivate.h:
- WebView.subproj/WebMainResourceClient.m: (-[WebMainResourceClient releaseResources]): removed call to _setData: since the data source may need the data before releaseResources is called
- 4:04 PM Changeset in webkit [8489] by
-
- 2 edits in trunk/WebKit
Fixed: <rdar://problem/3946285> Seed: Safari crashed by selecting all at internet-moebel.com
Reviewed by john.
- WebView.subproj/WebHTMLView.m: (-[WebHTMLView _hitViewForEvent:]): new, factored hit test hack to this method (-[WebHTMLView _updateMouseoverWithEvent:): call _hitViewForEvent: (-[WebHTMLView acceptsFirstMouse:]): call _setMouseDownEvent: and _isSelectionEvent: on the hit HTMLView or else when it's asked to drag it will assert (-[WebHTMLView shouldDelayWindowOrderingForEvent:]): ditto
- 3:52 PM Changeset in webkit [8488] by
-
- 2 edits in trunk/WebKit
Reviewed by Darin.
<rdar://problem/3961239> AX Setting AXFocused on AXScrollArea of AXWebArea will cause keyboard selection change
- WebView.subproj/WebHTMLView.m: (-[WebHTMLView maintainsInactiveSelection]): Keep the selection when the new first respomder is our own scrollview, in both editable and non-editaqble content.
- 3:16 PM Changeset in webkit [8487] by
-
- 2 edits in trunk/WebCore
Reviewed by Darin.
<rdar://problem/3964164> AXWebArea needs to unregister on going invisible
- khtml/xml/dom_docimpl.cpp: (DocumentImpl::detach): Detach the AX UIElement for the AXWebArea.
- 3:08 PM Changeset in webkit [8486] by
-
- 4 edits in trunk/WebCore
Reviewed by Darin
<rdar://problem/3850876> AX: button exposed as only an AXImage at http://appleseed.apple.com/ site (<input type=image>)
- khtml/rendering/render_form.h: (khtml::RenderImageButton::isImageButton): New.
- khtml/rendering/render_image.h: (khtml::RenderImage::isImageButton): New.
- kwq/KWQAccObject.mm: (-[KWQAccObject isImageButton]): (-[KWQAccObject actionElement]): (-[KWQAccObject role]): (-[KWQAccObject accessibilityActionNames]): (-[KWQAccObject accessibilityPerformAction:]): Represent RenderImageButton elements as buttons instead of images.
- 12:12 PM Changeset in webkit [8485] by
-
- 2 edits in trunk/WebCore
Prevent nil dereference in debug code.
- khtml/xml/dom_nodeimpl.cpp: (NodeImpl::displayTree): Stop when parent is 0, too.
- 11:14 AM Changeset in webkit [8484] by
-
- 2 edits in trunk/WebCore
Reviewed by Dave Hyatt.
- fixed <rdar://problem/3949203> cannot tab to, within, or out of the RSS sidebar
- kwq/KWQSlider.mm: (-[KWQSlider becomeFirstResponder]): (-[KWQSlider resignFirstResponder]): (-[KWQSlider nextKeyView]): (-[KWQSlider previousKeyView]): (-[KWQSlider canBecomeKeyView]): (-[KWQSlider nextValidKeyView]): (-[KWQSlider previousValidKeyView]): Copied these methods from KWQButton. The lack of special handling for first-responder-ness here was causing the focus to get "stuck" on the RSS page's slider widget. Added FIXME about how it would be nice to share more of this code rather than replicating it in each KWQ widget subclass.
- 10:58 AM Changeset in webkit [8483] by
-
- 4 edits in trunk/WebCore
Reviewed by Harrison.
- fixed <rdar://problem/3980066> Double-click on single character moves insertion point to previous line
- khtml/khtml_part.cpp: (KHTMLPart::selectClosestWordFromMouseEvent): Set affinity too. (KHTMLPart::handleMousePressEventTripleClick): Ditto. (KHTMLPart::handleMouseMoveEventSelection): Ditto. (KHTMLPart::khtmlMouseReleaseEvent): Ditto.
- khtml/editing/selection.cpp: (khtml::Selection::modifyExtendingRightForward): Use endOfLine and endOfDocument. (khtml::Selection::modifyMovingRightForward): Ditto. (khtml::Selection::modifyExtendingLeftBackward): Use startOfLine and startOfDocument. (khtml::Selection::modifyMovingLeftBackward): Ditto. (khtml::Selection::validate): Rewrote the section that handles double-click. Two main fixes: 1) use isStartOfLine to check for another case where we want to select the word to the right, and 2) use isEndOfParagraph, which seems to work correctly in cases where isLastVisiblePositionInParagraph is giving the wrong answer. Also changed the line code to use startOfLine/endOfLine and the document code to use startOfDocument/endOfDocument.
- 10:49 AM Changeset in webkit [8482] by
-
- 2 edits in trunk/WebCore
Reviewed by Harrison.
- fixed <rdar://problem/3935275> unexpected quit scrolling over link; last.fm (works in IE and Firefox)
- kwq/WebCoreBridge.mm: (-[WebCoreBridge elementAtPoint:]): By using the correct document, fix the crash reported here. The page still crashes when you close the browser window, but it's not trivial to fix so I'll file a new bug after that.
- 10:48 AM Changeset in webkit [8481] by
-
- 2 edits in trunk/WebKit
[3903199] Large background patterns slide around while loading
- 10:03 AM Changeset in webkit [8480] by
-
- 4 edits in trunk/WebCore
Reviewed by Ken and Harrison.
- fixed <rdar://problem/3947901> REGRESSION (Mail): Pasting paragraph of rich text leaves insertion point before pasted text
- fixed <rdar://problem/3949790> hitting return after underlined line results in too much or too little underlined
- fixed <rdar://problem/3981759> nil-deref and crash when pasting just a paragraph break
- fixed a couple problems I discovered while working with bug 3949790
- khtml/editing/htmlediting.cpp: (khtml::ApplyStyleCommand::applyInlineStyle): Pass StayInBlock to upstream. Without this, we end up going too far upstream in the test case in bug 3949790. (khtml::ApplyStyleCommand::removeInlineStyle): Pass StayInBlock to upstream and downstream. Same reason as above. (khtml::ReplaceSelectionCommand::doApply): Update endPos if inserting a new node and endPos is using that node's parent and an offset past the node being inserted. That change fixes a problem with the position of the insertion point after pasting into the top level of a document (from test cases in 3947901 and 3949790). When setting insertionPos, use code that works when lastNodeInserted is a block rather than a text node. That change fixes a problem where a newline is not added when pasting an entire paragraph into the end of a document (from test case in 3949790). Added nil check before checking if lastNodeInserted is a <br> element, which fixes the crash when pasting just a paragraph break.
- khtml/editing/visible_units.h: Filled out the set of calls to add some boolean checks for lines (needed for the bug fix), and calls for blocks (not yet implemented), and documents. The document checks may need refinement to properly handle documents with a mix of editable and non-editable content, but for now they just refactor code and make things a little clearer. Also removed the "include line break" parameter from endOfSentence.
- khtml/editing/visible_units.cpp: (khtml::rootBoxForLine): Added. (khtml::startOfLine): Added. Algorithm taken from selectionForLine in selection.cpp. (khtml::endOfLine): Ditto. (khtml::inSameLine): Added. (khtml::isStartOfLine): Added. (khtml::isEndOfLine): Added. (khtml::endOfSentence): Removed "include line break" parameter. (khtml::inSameParagraph): Added a null check. (khtml::isStartOfParagraph): Ditto. (khtml::isEndOfParagraph): Ditto. (khtml::startOfBlock): Added. (khtml::endOfBlock): Added. (khtml::inSameBlock): Added. (khtml::isStartOfBlock): Added. (khtml::isEndOfBlock): Added. (khtml::startOfDocument): Added. (khtml::endOfDocument): Added. (khtml::inSameDocument): Added. (khtml::isStartOfDocument): Added. (khtml::isEndOfDocument): Added.
Jan 30, 2005:
- 10:21 AM Changeset in webkit [8479] by
-
- 2 edits in trunk/WebCore
Reviewed by John.
- fixed <rdar://problem/3977000> form data set posted for <input type="image" ...> omits name/value pair
- khtml/html/html_formimpl.cpp: (DOM::HTMLInputElementImpl::appendFormData): Append a name/value pair for type IMAGE in addition to the X/Y coordinates.
- 10:08 AM Changeset in webkit [8478] by
-
- 4 edits in trunk/WebCore
Reviewed by John.
- fixed <rdar://problem/3974246> REGRESSION (125-180): popup menus are missing item text on Harmony Remote web site
- khtml/html/html_formimpl.cpp: (DOM::HTMLOptionElementImpl::text): Change this function to traverse the entire tree and gather all the text rather than just looking at immediate children.
- khtml/xml/dom_nodeimpl.h: Added const.
- khtml/xml/dom_nodeimpl.cpp: (NodeImpl::traverseNextNode): Added const. (NodeImpl::traverseNextSibling): Ditto. (NodeImpl::traversePreviousNodePostOrder): Ditto. (NodeImpl::detach): Add a missing nil check.
- 9:52 AM Changeset in webkit [8477] by
-
- 3 edits in trunk/WebKit
WebKit:
Reviewed by John.
- fixed <rdar://problem/3965265> Safari displays HTML as source when default encoding is Hebrew (due to direction overrides added by encoding converter)
- WebView.subproj/WebPreferencesPrivate.h: Added _systemCFStringEncoding, and changed _setInitialDefaultTextEncodingToSystemEncoding to be a class method.
- WebView.subproj/WebPreferences.m: (+[WebPreferences _systemCFStringEncoding]): Added. New SPI to be used by Safari. Broken out of _setInitialDefaultTextEncodingToSystemEncoding, but also added cases for MacArabic and MacHebrew. (+[WebPreferences _setInitialDefaultTextEncodingToSystemEncoding]): Refactor to use _systemCFStringEncoding.
WebBrowser:
- fixed <rdar://problem/3965265> Safari displays HTML as source when default encoding is Hebrew (due to direction overrides added by encoding converter)
- Preferences.subproj/AppearancePreferences.m: (-[AppearancePreferences awakeFromNib]): Use the new +[WebPreferences _systemCFStringEncoding] instead of CFStringGetSystemEncoding because the latter can return Mac-specific encodings that we never want to use.
- TextEncodingMenu.m: (-[NSMenu addStandardTextEncodingMenuItemsWithTarget:action:preferredEncoding:]): Same as above.
- AppController.m: (-[AppController applicationDidFinishLaunching:]): Update call to use class method.
- 9:33 AM Changeset in webkit [8476] by
-
- 2 edits in trunk/WebCore
Reviewed by John.
- fixed <rdar://problem/3864536> crash copying text from other apps and pasting in a sticky in dashboard
- khtml/editing/markup.cpp: (khtml::createFragmentFromText): Added missing ref/deref of newly created element.
Jan 28, 2005:
- 4:38 PM Changeset in webkit [8475] by
-
- 2 edits in trunk/WebCore
- khtml/css/cssproperties.c: Regenerated with newer gperf.
- 4:13 PM Changeset in webkit [8474] by
-
- 4 edits in trunk/JavaScriptCore
Fixed <rdar://problem/3980389> JavaScript bindings access incorrect runtime object
Only use special 'back door' property to get the runtime object if thisObj isn't
already a runtime object.
<gratuitous> Cleaned up a couple of strcmp on ClassInfo name. Used == on
ClassInfo pointer instead.
Reviewed by Chris.
- bindings/c/c_utility.cpp: (convertValueToNPVariant):
- bindings/objc/WebScriptObject.mm: (+[WebScriptObject _convertValueToObjcValue:KJS::originExecutionContext:Bindings::executionContext:Bindings::]):
- bindings/runtime_method.cpp: (RuntimeMethodImp::call):
- 3:19 PM Changeset in webkit [8473] by
-
- 3 edits in trunk/WebKit
[3727680] printing some page with WebKit generates a PDF with a 1x1 image with soft mask
- 3:02 PM Changeset in webkit [8472] by
-
- 2 edits in trunk/WebCore
Reviewed by John Sullivan.
<rdar://problem/3968144> AX need to be able to focus an AXLink by setting AXFocused to true
- kwq/KWQAccObject.mm: (-[KWQAccObject accessibilityPerformAction:]): (-[KWQAccObject accessibilityIsAttributeSettable:]): Add AXFocused for AXLinks.
- 1:26 PM Changeset in webkit [8471] by
-
- 2 edits in trunk/WebKit
Reviewed by Darin.
<rdar://problem/3584942> AX: Safari Accessibility parent-child mismatch
Use AppKit SPI _accessibilityParentForSubview to return KWQAccObject parent of AppKit AX object.
- WebView.subproj/WebHTMLView.m: (-[WebHTMLView _accessibilityParentForSubview:]): New.
- 1:04 PM Changeset in webkit [8470] by
-
- 2 edits in trunk/WebCore
Reviewed by Darin.
<rdar://problem/3584942> AX: Safari Accessibility parent-child mismatch
Use AppKit SPI _accessibilityParentForSubview to return KWQAccObject parent of AppKit AX object.
- kwq/KWQAccObject.mm: (-[KWQAccObject _accessibilityParentForSubview:]): New.
- 11:30 AM Changeset in webkit [8469] by
-
- 4 edits in trunk/WebKit
WebKit side of: <rdar://problem/3951283> can view pages from the back/forward cache that should be disallowed by Parental Controls
Reviewed by john.
- WebView.subproj/WebDefaultPolicyDelegate.m: (-[WebDefaultPolicyDelegate webView:shouldGoToHistoryItem:]): new private delegate method
- WebView.subproj/WebFrame.m: (-[WebFrame _goToItem:withLoadType:]): call new delegate method
- WebView.subproj/WebPolicyDelegatePrivate.h:
Jan 27, 2005:
- 7:20 PM Changeset in webkit [8468] by
-
- 2 edits in trunk/WebCore
fixed by Darin, reviewed by me.
<rdar://problem/3976314> REGRESSION (180-TOT): submitting password fields fail on Panther
- kwq/KWQTextField.mm: (-[KWQTextFieldController string]): on panther, the secure text field's editor does not contain the real string, so now we just call stringValue on the field in that case.
- 5:16 PM Changeset in webkit [8467] by
-
- 1 edit in trunk/WebCore/kwq/KWQLineEdit.mm
Tweak the previous checkin to deal with a dynamic change to 0 results properly.
- 5:13 PM Changeset in webkit [8466] by
-
- 19 edits16 adds in trunk
WebCore:
Reviewed by Darin, Hyatt and Ken.
<rdar://problem/3790449> REGRESSION (Mail): underline behavior is flaky because of how CSS handles text-decoration
- khtml/css/css_computedstyle.cpp: (DOM::CSSComputedStyleDeclarationImpl::getPropertyCSSValue): Add support for -khtml-text-decorations-in-effect property. This works like text-docration but follows proper inline semantics, that is, if a parent is causing text decoration then -khtml-text-decorations-in-effect on this element will reflect that.
- khtml/css/cssproperties.in: Add -khtml-text-decorations-in-effect property.
- khtml/css/cssproperties.h: regenerated
- khtml/css/cssvalues.c: regenerated
- khtml/css/cssparser.cpp: regenerated
- khtml/css/cssproperties.c: regenerated
- khtml/css/css_valueimpl.h: Made copyPropertiesInSet public.
- khtml/editing/htmlediting.cpp: (khtml::StyleChange::init): Handle -khtml-text-decorations-in-effect specially, translate to text-decoration (khtml::ApplyStyleCommand::applyInlineStyle): Fix a comment. (khtml::ApplyStyleCommand::removeInlineStyle): Add new way of pushing down text-decoration styles around the edges of the selected range. (khtml::ApplyStyleCommand::pushDownTextDecorationStyleAroundNode): Helper for this. (khtml::ApplyStyleCommand::pushDownTextDecorationStyleAtBoundaries): ditto (khtml::ApplyStyleCommand::nodeFullyUnselected): ditto (khtml::hasTextDecorationProperty): ditto (khtml::highestAncestorWithTextDecoration): ditto (khtml::ApplyStyleCommand::extractTextDecorationStyle): ditto (khtml::ApplyStyleCommand::extractAndNegateTextDecorationStyle): ditto (khtml::ApplyStyleCommand::applyTextDecorationStyle): ditto
- khtml/editing/htmlediting.h: Prototype new methods.
- khtml/editing/jsediting.cpp: Make underline execCommand use the new CSS property.
- as a necessary part of the fix, fixed the longstanding problem that mutating an element's inlineStyleDecl would not property update its style attribute. now it does.
- khtml/css/css_valueimpl.cpp: (DOM::CSSMutableStyleDeclarationImpl::setChanged): If this is an inline style declaration, tell the element it's style attribute needs updating.
- khtml/html/html_elementimpl.cpp: (HTMLElementImpl::invalidateStyleAttribute): New method, just calls down to the dom element. (HTMLElementImpl::updateStyleAttribute): Regenerate style attribute from inline style declaration.
- khtml/html/html_elementimpl.h: Prototype new stuff.
- khtml/xml/dom_elementimpl.cpp: (ElementImpl::ElementImpl): Initialize new attribute. (ElementImpl::updateStyleAttributeIfNeeded): New method to check if the style is dirty and this is an html element, and if so call the html element to regenerate the style attribute. (ElementImpl::attributes): update style if needed (ElementImpl::getAttribute): ditto (ElementImpl::hasAttributes): ditto (ElementImpl::dump): ditto (XMLElementImpl::cloneNode): ditto
- khtml/xml/dom_elementimpl.h: (DOM::ElementImpl::isStyleAttributeValid): new method to manage style attr dirty bit (DOM::ElementImpl::setStyleAttributeValid): ditto
- added new layout tests for underlining:
- layout-tests/editing/editing.js:
- layout-tests/editing/style/remove-underline-across-paragraph-expected.txt: Added.
- layout-tests/editing/style/remove-underline-across-paragraph-in-bold-expected.txt: Added.
- layout-tests/editing/style/remove-underline-across-paragraph-in-bold.html: Added.
- layout-tests/editing/style/remove-underline-across-paragraph.html: Added.
- layout-tests/editing/style/remove-underline-after-paragraph-expected.txt: Added.
- layout-tests/editing/style/remove-underline-after-paragraph-in-bold-expected.txt: Added.
- layout-tests/editing/style/remove-underline-after-paragraph-in-bold.html: Added.
- layout-tests/editing/style/remove-underline-after-paragraph.html: Added.
- layout-tests/editing/style/remove-underline-expected.txt: Added.
- layout-tests/editing/style/remove-underline-from-stylesheet-expected.txt: Added.
- layout-tests/editing/style/remove-underline-from-stylesheet.html: Added.
- layout-tests/editing/style/remove-underline-in-bold-expected.txt: Added.
- layout-tests/editing/style/remove-underline-in-bold.html: Added.
- layout-tests/editing/style/remove-underline.html: Added.
- layout-tests/editing/style/underline-expected.txt: Added.
- layout-tests/editing/style/underline.html: Added.
WebKit:
Reviewed by Darin, Hyatt and Ken.
<rdar://problem/3790449> REGRESSION (Mail): underline behavior is flaky because of how CSS handles text-decoration
- WebView.subproj/WebHTMLView.m: (-[WebHTMLView _styleFromFontAttributes:]): Use new -khtml-text-decorations-in-effect property (-[WebHTMLView _styleForAttributeChange:]): likewise (-[WebHTMLView underline:]): likewise
- 4:56 PM Changeset in webkit [8465] by
-
- 3 edits in trunk/WebCore
Fix for 3875199, search field needs to be able to show a magnifying glass without a dropdown menu.
Reviewed by kocienda
- khtml/html/html_formimpl.cpp: (DOM::HTMLInputElementImpl::HTMLInputElementImpl): (DOM::HTMLInputElementImpl::parseHTMLAttribute):
- kwq/KWQLineEdit.mm: (QLineEdit::setMaxResults):
- 4:43 PM Changeset in webkit [8464] by
-
- 9 edits4 adds in trunk
WebCore:
Reviewed by Maciej
Fix for this bug:
<rdar://problem/3973254> Deletions of ranges does not coalesce correctly with subsequent typing
- khtml/editing/htmlediting.cpp: (khtml::InsertTextCommand::deleteCharacter): Remove this dead code. (khtml::ReplaceSelectionCommand::editingAction): Moved this code to a better place in the file. It was in with unrelated functions. (khtml::TypingCommand::TypingCommand): Reorganize initialization list so it is easier to read. (khtml::TypingCommand::issueCommandForDeleteKey): Remove dead code. Roll in remaining code into deleteKeyPressed. (khtml::TypingCommand::deleteKeyPressed): Add in support for carrying along smart delete flag. (khtml::TypingCommand::forwardDeleteKeyPressed): New function. Makes forward delete work like "regular" delete in terms of coalescing typing. (khtml::TypingCommand::doApply): Add case for ForwardDeleteKey. (khtml::TypingCommand::preservesTypingStyle): Ditto.
- khtml/editing/htmlediting.h: (khtml::TypingCommand::): Add ForwardDeleteKey constant. Remove a couple declarations for now-dead code. (khtml::TypingCommand::smartDelete): New accessor. (khtml::TypingCommand::setSmartDelete): Ditto.
- kwq/WebCoreBridge.h:
- kwq/WebCoreBridge.mm: (-[WebCoreBridge deleteKeyPressedWithSmartDelete:]): Add smart delete flag. (-[WebCoreBridge forwardDeleteKeyPressedWithSmartDelete:]): New method.
- khtml/editing/jsediting.cpp: Add supprt for ForwardDelete command
- layout-tests/editing/editing.js: Ditto.
- layout-tests/editing/deleting/delete-and-undo-expected.txt: Added.
- layout-tests/editing/deleting/delete-and-undo.html: Added.
- layout-tests/editing/deleting/forward-delete-expected.txt: Added.
- layout-tests/editing/deleting/forward-delete.html: Added.
WebKit:
Reviewed by Maciej
- WebView.subproj/WebHTMLView.m: (-[WebHTMLView _handleKillRing:prepend:]): New helper function. Code factored out from _deleteRange:killRing:prepend:smartDeleteOK:isTypingAction:. (-[WebHTMLView _deleteRange:killRing:prepend:smartDeleteOK:isTypingAction:]): No longer takes unused preflight argument. Now takes new isTypingAction argument. Uses isTypingAction to determine which flavor of delete command to call. (-[WebHTMLView _deleteSelection]): No longer passes unused preflight argument. Now passes new isTypingAction argument. (-[WebHTMLView _deleteWithDirection:granularity:killRing:isTypingAction:]): Rearranged code to call correct flavor of delete command, based on whether typing should be preserved. Some other cleanups. (-[WebHTMLView deleteForward:]): Add _isEditable check. (-[WebHTMLView deleteBackward:]): Now calls _deleteWithDirection instead of having unique behavior different from forward delete. (-[WebHTMLView deleteWordForward:]): Add new isTypingAction flag to _deleteWithDirection call. (-[WebHTMLView deleteWordBackward:]): Ditto. (-[WebHTMLView deleteToBeginningOfLine:]): Ditto. (-[WebHTMLView deleteToEndOfLine:]): Ditto. (-[WebHTMLView deleteToBeginningOfParagraph:]): Ditto. (-[WebHTMLView deleteToEndOfParagraph:]): Ditto. (-[WebHTMLView deleteToMark:]): Ditto.
- 3:45 PM Changeset in webkit [8463] by
-
- 3 edits in trunk
Versioning for tip of tree, Safari 2.0 (181+).
The tree is open!
- 3:35 PM Changeset in webkit [8462]
-
- 1 copy in tags/Safari-181
This commit was manufactured by cvs2svn to create tag 'Safari-181'.
- 3:35 PM Changeset in webkit [8461] by
-
- 6 edits in trunk
Safari-181 stamp
- 11:36 AM Changeset in webkit [8460] by
-
- 2 edits in trunk/WebCore
Reviewed by Ken.
<rdar://problem/3962214> AX: AXLeftLineTextMarkerRangeForTextMarker returns incorrect range
- kwq/KWQAccObject.mm: (-[KWQAccObject doAXRightLineTextMarkerRangeForTextMarker:]): Allowed for selection to end of line including the linebreak.
- 11:30 AM Changeset in webkit [8459] by
-
- 2 edits in trunk/WebCore
Reviewed by Darin, Ken.
<rdar://problem/3964470> AX: Include attachments in AXAttributedStringForTextMarkerRange
- kwq/KWQAccObject.mm: (-[KWQAccObject isAttachment]): (-[KWQAccObject attachmentView]): (-[KWQAccObject role]): (-[KWQAccObject subrole]): (-[KWQAccObject roleDescription]): (-[KWQAccObject value]): (-[KWQAccObject title]): (-[KWQAccObject accessibilityDescription]): (-[KWQAccObject accessibilityIsIgnored]): (-[KWQAccObject accessibilityAttributeNames]): (-[KWQAccObject accessibilityAttributeValue:]): Make attachments accessible.
(CreateCGColorIfDifferent):
(AXAttributeStringSetColor):
(AXAttributeStringSetNumber):
(AXAttributeStringSetFont):
(AXAttributeStringSetStyle):
(AXAttributeStringSetElement):
(AXLinkElementForNode):
(AXAttributedStringAppendText):
(AXAttributedStringAppendReplaced):
(-[KWQAccObject doAXAttributedStringForTextMarkerRange:]):
Add attachments and more text attributes to AXAttributedStringForTextMarkerRange.
- 11:27 AM Changeset in webkit [8458] by
-
- 2 edits in trunk/WebCore
Reviewed by John.
- fixed <rdar://problem/3807935> DOM CSS computed style line-height is wrong in two ways
- khtml/css/css_computedstyle.cpp: (DOM::CSSComputedStyleDeclarationImpl::getPropertyCSSValue): Use specified size rather than computed size when dealing with a percentage for line height.
- 11:24 AM Changeset in webkit [8457] by
-
- 3 edits1 add in trunk/WebCore
Reviewed by John.
- fixed <rdar://problem/3971372> SWB: template function DOM_cast() won't compile with gcc 4.0
- fixed other gcc 4.0 compiling problems Patrick Beard pointed out on the phone
- kwq/DOMInternal.h: (DOM_cast): Change the "failToCompile()" trick to use a dependent name. Nowadays, if a name is not dependent, it is checked at template definition time. But we want a failure only at template instantiation time.
- ForwardingHeaders/editing/text_granularity.h: Added. Needed but a bug in the 3.3 compiler made it compile anyway without this.
- other changes
- khtml/html/html_miscimpl.h: For clarity, mark these functions virtual too. They are automatically virtual because the base class ones are virtual, but it's ugly to leave it this way.
- 10:46 AM Changeset in webkit [8456] by
-
- 2 edits in trunk/WebKit
Fixed: <rdar://problem/3973272> REGRESSION: Safari uses QT plugin to display PNG images
Reviewed by john.
- Plugins.subproj/WebBasePluginPackage.m: use renamed QT bundle ID
- 8:02 AM Changeset in webkit [8455] by
-
- 6 edits in trunk/WebCore
Reviewed by Hyatt
Fix for this bug:
<rdar://problem/3971609> REGRESSION (Mail): up/down arrow navigation broken after rewrapping text by resizing window
<rdar://problem/3975661> REGRESSION (Mail): left/right arrow navigation can place insertion point after last character on line
- khtml/editing/selection.cpp: (khtml::Selection::modifyAffinity): PARAGRAPH and LINE movements should not alter affinity. This was just a mistake before when it reset to upstream in some cases.
- khtml/rendering/render_line.cpp: (khtml::RootInlineBox::closestLeafChildForXPos): Move this function down from InlineBox, and rework the implementation. This fixes 3971609.
- khtml/rendering/render_line.h:
- khtml/rendering/render_text.cpp: (RenderText::caretRect): Rework the algorithm to fix 3975661. This regressed when we began placing the spaces on the end of lines in text boxes when lines wrap.
Jan 26, 2005:
- 6:01 PM Changeset in webkit [8454] by
-
- 4 edits in trunk/WebKit
Reviewed by John.
- fixed <rdar://problem/3829517> WebView still draws white when setDrawsBackground set to NO and no content loaded yet
- WebView.subproj/WebFrameView.m: (-[WebFrameView drawRect:]): Check drawsBackground, and don't draw the white "no document" background if it's NO. This fixes things for frames with no document.
- WebView.subproj/WebImageView.m: (-[WebImageView drawRect:]): Same as above. This fixes things for frames with just an image.
- WebView.subproj/WebFrame.m: (-[WebFrame _updateDrawsBackground]): Call setDrawsBackground: on the document view if it implements it. This fixes things for frames with plain text.
- 1:38 PM Changeset in webkit [8453] by
-
- 12 edits in trunk
Fixed <rdar://problem/3972522> (179-180) 40% slowdown on iBench JavaScript test
I added a member variable to ObjectImp. This changed it's size and consequently
hampered the optimizations built into the garbage collector. Objects no longer
fit within the allocators cell size, and thus allocation fell back to a slower
allocator.
As a result of this fix I also dramatically cleaned up how runtime objects are
accessed. The path mostly *removes* code.
Reviewed by Chris.
- bindings/runtime_method.cpp: (RuntimeMethodImp::call):
- bindings/runtime_object.cpp: (RuntimeObjectImp::get): (RuntimeObjectImp::put): (RuntimeObjectImp::canPut): (RuntimeObjectImp::hasProperty): (RuntimeObjectImp::defaultValue):
- bindings/runtime_object.h:
- kjs/object.cpp: (KJS::ObjectImp::ObjectImp):
- kjs/object.h:
WebCore:
Fixed <rdar://problem/3972522> (179-180) 40% slowdown on iBench JavaScript test
I added a member variable to ObjectImp. This changed it's size and consequently
hampered the optimizations built into the garbage collector. Objects no longer
fit within the allocators cell size, and thus allocation fell back to a slower
allocator.
As a result of this fix I also dramatically cleaned up how runtime objects are
accessed. The path mostly *removes* code.
Reviewed by Chris.
- khtml/ecma/kjs_dom.cpp: (DOMDocumentProtoFunc::tryCall): (DOMElementProtoFunc::tryCall): (KJS::getRuntimeObject):
- khtml/ecma/kjs_dom.h:
- khtml/ecma/kjs_html.cpp: (KJS::HTMLDocument::tryGet): (KJS::HTMLElement::tryGet): (KJS::HTMLElement::implementsCall): (KJS::HTMLElement::call): (KJS::HTMLElement::tryPut): (KJS::HTMLCollection::tryGet): (KJS::HTMLCollection::getNamedItems):
- khtml/ecma/kjs_html.h:
- khtml/ecma/kjs_window.cpp: (Window::get):
- 1:26 PM Changeset in webkit [8452] by
-
- 2 edits in trunk/WebCore
Fixed <rdar://problem/3757712> REGRESSION (Mail): WebCore does not allow Devanagari ligature input
For now we are using ICU UBreakIterator to determine grapheme boundaries for
cursor and deletion. This does not match what Cocoa does exactly, but does match
what Carbon does. The areas are difference are obscure, but, according to
Deborah Goldsmith, using the UBreakIterator is the reasonable approach.
Reviewed by Ken.
- khtml/rendering/render_text.cpp: (RenderText::previousOffset): (RenderText::nextOffset):
Jan 25, 2005:
- 4:28 PM Changeset in webkit [8451] by
-
- 2 edits in trunk/WebCore
Reviewed by Maciej and Richard.
<rdar://problem/3963731> AX VO: Changing window sizes causes a crash using with Voice Over - KWQPtrDictImpl::clear
- khtml/html/html_miscimpl.cpp: (HTMLCollectionImpl::HTMLCollectionImpl): Ensure that isHTMLDocument before calling HTMLDocument-only method.
- 2:51 PM Changeset in webkit [8450] by
-
- 9 edits in trunk/WebCore
Part one of fix for <rdar://problem/3757712> REGRESSION (Mail): WebCore does not allow Devanagari ligature input
This patch changes the semantics of next() and previous() on
VisiblePosition to move a grapheme (character cluster) at a
time. This means that cursor navigation with correctly move
over an entire cluster.
However, the expected behavior for deleting a grapheme is to
delete individual code points, thus decomposing the grapheme
into it constituent parts. That will be addressed in the next
part of the fix.
Reviewed by Ken.
- khtml/editing/visible_position.cpp: (khtml::VisiblePosition::previousPosition): (khtml::VisiblePosition::nextPosition):
- khtml/editing/visible_position.h:
- khtml/rendering/render_object.cpp: (RenderObject::previousOffset): (RenderObject::nextOffset):
- khtml/rendering/render_object.h:
- khtml/rendering/render_text.cpp: (RenderText::previousOffset): (RenderText::nextOffset): (RenderText::findNextInlineTextBox):
- khtml/rendering/render_text.h:
- khtml/xml/dom_nodeimpl.cpp: (NodeImpl::previousOffset): (NodeImpl::nextOffset):
- khtml/xml/dom_nodeimpl.h:
- 2:41 PM Changeset in webkit [8449] by
-
- 4 edits in trunk/WebKit
Reviewed by Chris.
- WebKit part of fix for: <rdar://problem/3970670> Text context menu in WebKit needs "Look Up in Dictionary" item
- WebView.subproj/WebDefaultContextMenuDelegate.m: (localizedMenuTitleFromAppKit): return English string in the case where AppKit bundle is found but doesn't contain the expected string. This case will be hit by people testing with an older AppKit. (-[WebDefaultUIDelegate menuItemWithTag:]): create Look Up in Dictionary item (-[WebDefaultUIDelegate contextMenuItemsForElement:]): add Look Up in Dictionary item and separator (-[WebDefaultUIDelegate editingContextMenuItemsForElement:]): ditto
- WebView.subproj/WebHTMLView.m: (-[WebHTMLView _lookUpInDictionaryFromMenu:]): new method, handles bringing up the Dictionary window. Includes FIXMEs for a couple of the known loose ends. (-[WebHTMLView validateUserInterfaceItem:]): handle Look Up in Dictionary item like the other new items
- WebView.subproj/WebUIDelegatePrivate.h: added SPI constant for Look Up in Dictionary menu item
- 2:03 PM Changeset in webkit [8448] by
-
- 2 edits in trunk/WebCore
Reviewed by Maciej.
<rdar://problem/3973067> AXWebArea for http://apple.netscape.com/ has an empty AXLinkUIElements
- kwq/KWQAccObject.mm: (-[KWQAccObject accessibilityAttributeValue:]): Omit ignored AXLinks from AXLinkUIElements result
- 1:34 PM Changeset in webkit [8447] by
-
- 2 edits in trunk/WebCore
Reviewed by John
Fix for this bug:
<rdar://problem/3972851> REGRESSION (179-180+): Repro crash in ApplyStyleCommand::cleanUpEmptyStyleSpans
- khtml/editing/htmlediting.cpp: (khtml::ApplyStyleCommand::cleanUpEmptyStyleSpans): Added two null checks.
- 1:21 PM Changeset in webkit [8446] by
-
- 3 edits in trunk/WebCore
Reviewed by John
Fix for this bug:
<rdar://problem/3954710> Mail crashed while editing signatures - NodeImpl::isBlockFlow
The fix is more general than for this one bug, and may work to fix many crashers. The problem
is that the ReplaceSelectionCommand never checked whether its starting selection is empty. If
it is, then we need to bail before doing the work of the command, which we need to deref the
start and end points of the selection in order to do its work. I think you can see the crash
potential.
- khtml/editing/htmlediting.cpp: (khtml::ReplaceSelectionCommand::doApply): Assert selection is not empty.
- kwq/WebCoreBridge.mm: (partHasSelection): New helper function to test that bridge has a part with a selection.
Use new helper function to test part and selection; return from these function if this test fails.
(-[WebCoreBridge rangeByExpandingSelectionWithGranularity:])
(-[WebCoreBridge rangeByAlteringCurrentSelection:direction:granularity:])
(-[WebCoreBridge alterCurrentSelection:direction:granularity:])
(-[WebCoreBridge rangeByAlteringCurrentSelection:verticalDistance:])
(-[WebCoreBridge alterCurrentSelection:verticalDistance:])
(-[WebCoreBridge documentFragmentWithText:])
(-[WebCoreBridge replaceSelectionWithFragment:selectReplacement:smartReplace:])
(-[WebCoreBridge insertLineBreak])
(-[WebCoreBridge insertParagraphSeparator])
(-[WebCoreBridge insertParagraphSeparatorInQuotedContent])
(-[WebCoreBridge insertText:selectInsertedText:])
(-[WebCoreBridge deleteSelectionWithSmartDelete:])
(-[WebCoreBridge ensureSelectionVisible])
Jan 24, 2005:
- 7:56 PM Changeset in webkit [8445] by
-
- 2 edits in trunk/WebCore
Reviewed by Darin.
Fixed <rdar://problem/3932374> REGRESSION: 'ReferenceError - Can't find variable' JavaScript error at webxpress.fidelity.com
- khtml/html/html_miscimpl.h: Missing virtual identifiers for namedItem() and nextNamedItem() exposed a flaw that prevented finding variables in form [HTMLFormCollectionImpl] scopes.
- 5:18 PM Changeset in webkit [8444] by
-
- 2 edits in trunk/WebKit
Fixed Panther build (missing ifdef)
- WebView.subproj/WebDefaultContextMenuDelegate.m:
- 4:46 PM Changeset in webkit [8443] by
-
- 5 edits in trunk/WebKit
Reviewed by Darin.
- WebKit part of fix for <rdar://problem/3960231> Text context menu in WebKit needs Spotlight and Google items
- WebView.subproj/WebDefaultContextMenuDelegate.m: (localizedMenuTitleFromAppKit): new function, gets localized string from AppKit so we can avoid adding localized strings to WebKit at this late date in Tiger. Returns the non-localized English string if we can't find the localized string in AppKit. (-[WebDefaultUIDelegate menuItemWithTag:]): handle the two new menu items by tag name (-[WebDefaultUIDelegate contextMenuItemsForElement:]): add menu items for Search in Google and Search in Spotlight to selected-text menu item for the noneditable case (-[WebDefaultUIDelegate editingContextMenuItemsForElement:]): add menu items for Search in Google and Search in Spotlight to selected-text menu item for the editable case
- WebView.subproj/WebHTMLView.m: (-[WebHTMLView _searchWithGoogleFromMenu:]): implement this menu item action method, using same method name and implementation as NSTextView (-[WebHTMLView _searchWithSpotlightFromMenu:]): implement this menu item action method, using same basic implementation as NSTextView (-[WebHTMLView validateUserInterfaceItem:]): validate new menu items
- WebView.subproj/WebUIDelegatePrivate.h: define new tags for new menu items
- English.lproj/StringsNotToBeLocalized.txt: updated for these changes
- 4:35 PM Changeset in webkit [8442] by
-
- 2 edits in trunk/WebCore
Reviewed by kocienda.
- fix <rdar://problem/3810661> computed style not handled for Apple extensions
- khtml/css/css_computedstyle.cpp: (DOM::): (DOM::CSSComputedStyleDeclarationImpl::getPropertyCSSValue): add -apple-line-clamp and -apple-text-size-adjust
- 2:21 PM Changeset in webkit [8441] by
-
- 2 edits in trunk/WebCore
Reviewed by Kevin.
- fixed <rdar://problem/3969884> REGRESSION (179-180): Typing password not echoed as "bullets" at paypal.com when field is first focused
- kwq/KWQTextField.mm: (-[KWQTextFieldController initWithTextField:QLineEdit:]): Sizing up the form editor, which fixes things for normal fields and search fields, screws things up for password fields. Eventually, I'll need to figure out why this is and file a bug so that the AppKit team fixes it. In the mean time, just check for the case of the secure text field, and don't size up in that case.
- 2:20 PM Changeset in webkit [8440] by
-
- 2 edits in trunk/WebCore
Reviewed by Hyatt
Fix for this bug:
<rdar://problem/3963560> 8A354: Inserting Japanese text to the line head causes line break
- khtml/editing/htmlediting.cpp: (khtml::ReplaceSelectionCommand::doApply): Add one more case where we merge content into the existing line. This covers the situation see using the steps to reproduce this bug.
- 2:06 PM Changeset in webkit [8439] by
-
- 3 edits2 adds in trunk
Reviewed by Darin.
<rdar://problem/3967572> Editing should split elements before removing style
- khtml/editing/htmlediting.cpp: (khtml::CompositeEditCommand::splitElement): (khtml::CompositeEditCommand::mergeIdenticalElements): (khtml::CompositeEditCommand::wrapContentsInDummySpan): (khtml::CompositeEditCommand::splitTextNodeContainingElement): (khtml::ApplyStyleCommand::applyInlineStyle): (khtml::ApplyStyleCommand::splitTextAtStartIfNeeded): (khtml::ApplyStyleCommand::splitTextAtEndIfNeeded): (khtml::ApplyStyleCommand::splitTextElementAtStartIfNeeded): (khtml::ApplyStyleCommand::splitTextElementAtEndIfNeeded): (khtml::areIdenticalElements): (khtml::ApplyStyleCommand::mergeStartWithPreviousIfIdentical): (khtml::ApplyStyleCommand::mergeEndWithNextIfIdentical): (khtml::ApplyStyleCommand::cleanUpEmptyStyleSpans): (khtml::ApplyStyleCommand::addInlineStyleIfNeeded): (khtml::InsertParagraphSeparatorCommand::doApply): (khtml::InsertParagraphSeparatorInQuotedContentCommand::doApply): (khtml::InsertTextCommand::prepareForTextInsertion): (khtml::SplitTextNodeCommand::doUnapply): (khtml::SplitElementCommand::SplitElementCommand): (khtml::SplitElementCommand::~SplitElementCommand): (khtml::SplitElementCommand::doApply): (khtml::SplitElementCommand::doUnapply): (khtml::MergeIdenticalElementsCommand::MergeIdenticalElementsCommand): (khtml::MergeIdenticalElementsCommand::~MergeIdenticalElementsCommand): (khtml::MergeIdenticalElementsCommand::doApply): (khtml::MergeIdenticalElementsCommand::doUnapply): (khtml::WrapContentsInDummySpanCommand::WrapContentsInDummySpanCommand): (khtml::WrapContentsInDummySpanCommand::~WrapContentsInDummySpanCommand): (khtml::WrapContentsInDummySpanCommand::doApply): (khtml::WrapContentsInDummySpanCommand::doUnapply): (khtml::SplitTextNodeContainingElementCommand::SplitTextNodeContainingElementCommand): (khtml::SplitTextNodeContainingElementCommand::~SplitTextNodeContainingElementCommand): (khtml::SplitTextNodeContainingElementCommand::doApply):
- khtml/editing/htmlediting.h:
New layout test that shows the side benefit of this.
- layout-tests/editing/style/unbold-in-bold-expected.txt: Added.
- layout-tests/editing/style/unbold-in-bold.html: Added.
- 1:07 PM Changeset in webkit [8438] by
-
- 2 edits in trunk/WebKit
- WebView.subproj/WebDataSource.m: (+[WebDataSource _repTypesAllowImageTypeOmission:]): Do the same check as for view types, so the representation types are consistent.
- 12:48 PM Changeset in webkit [8437] by
-
- 7 edits in trunk/WebCore
Reviewed by John.
- fixed <rdar://problem/3933435> -[DOMRange cloneContents] sometimes alters the original DOMRange
- khtml/xml/dom2_rangeimpl.cpp: (DOM::RangeImpl::processContents): Fixed code that was collapsing the range after processing the contents. That's right for extract and delete, but not clone.
- fixed <rdar://problem/3714184> inline input works incorrectly when I type Korean slowly in textfield in form on www.google.co.kr
- fixed <rdar://problem/3193848> Can't enter SSN to sign up for Chase visa online account (changing focus inside key press handler)
- fixed <rdar://problem/3874683> REGRESSION (161-162): Crash after typing command-Z to undo after pasting text with newline in it into a text field <input type=text>
- kwq/KWQLineEdit.mm: (QLineEdit::text): Changed to call a new string method on the controller instead of calling stringValue, since stringValue has a bad side effect of ending inline input. (QLineEdit::selectAll): Changed to only call selectText: when the field is already selected. When you are giving the field focus, it automatically gets all selected, and this change is required in the case where we defer the focus change.
- kwq/KWQTextField.h: Added a new string method to the controller.
- kwq/KWQTextField.mm: (-[KWQTextFieldController setMaximumLength:]): Call the new string method instead of using stringValue. (-[KWQTextFieldController controlTextDidChange:]): Removed the code to truncate at the first CR or LF. That's now handled in the shouldChangeTextInRange method instead. (-[KWQTextFieldController textView:shouldHandleEvent:]): Add new logic to defer responder changes until after the event is handled. This makes sure the key gets into the field that's already handling it at rather than ending up in the newly-focused field if the key press handler focuses a different element. (-[KWQTextFieldController textView:didHandleEvent:]): Turn off deferral here, now that the key press has been handled. (-[KWQTextFieldController string]): Added. Calls stringValue only if there's no editor. If there is an editor, calls string on that instead. (-[KWQTextFieldController textView:shouldChangeTextInRange:replacementString:]): Added. Called by the three field subclasses. Truncates incoming strings at the first CR or LF character. This works properly with Undo, and the old technique did not. (-[KWQTextFieldController preprocessString:]): Added. Helper used for all the setStringValue methods so they all truncate at the first CR or LF as well as truncating to the appropriate length. (-[KWQTextField setStringValue:]): Changed to call the controller. (-[KWQTextField textView:shouldChangeTextInRange:replacementString:]): Added. Calls the controller. (-[KWQSecureTextField setStringValue:]): More of the same. (-[KWQSecureTextField textView:shouldChangeTextInRange:replacementString:]): Ditto. (-[KWQSearchField setStringValue:]): Ditto. (-[KWQSearchField textView:shouldChangeTextInRange:replacementString:]): Ditto.
- kwq/KWQWidget.h: Added the new setDeferFirstResponderChanges function.
- kwq/KWQWidget.mm: (QWidget::~QWidget): Clear out the deferredFirstResponder global just in case we are destroyed while we "have the ball". (QWidget::hasFocus): If we are in the deferred mode, use the global to decide who to say is focused. (QWidget::setFocus): If we are in the deferred mode, set the global instead of making something be the first responder. (QWidget::setDeferFirstResponderChanges): Set the boolean. If the boolean is being cleared, then get the deferred first responder and call setFocus on it again, which will do the work we didn't want to do earlier.
- 12:48 PM Changeset in webkit [8436] by
-
- 4 edits in trunk/WebKit
Reviewed by John.
- fixed <rdar://problem/3791158> REGRESSION (Mail): copyFont: and pasteFont: copy and paste only the NSFont, not other attributes
- WebView.subproj/WebHTMLView.m: (-[WebHTMLView _styleFromFontAttributes:]): Added the last few loose ends here: strikethrough and underline.
- fixed <rdar://problem/3967393> add a user default that lets you turn off WebKit PDF support
- WebView.subproj/WebFrameView.m: (+[WebFrameView _viewTypesAllowImageTypeOmission:]): Leave the PDF-handling classes out of the dictionary if the secret default is set.
- English.lproj/StringsNotToBeLocalized.txt: Updated for recent changes.
- 10:28 AM Changeset in webkit [8435] by
-
- 2 edits in trunk/WebCore
Reviewed by John
Fix for this bug:
<rdar://problem/3964350> Deleting all content and typing in a message gets one letter, then beeps
This is a problem with the way we turn key events, when a user starts typing, into editing commands.
Right now, that initial delete key in an empty window is turned into an editing command, and much
editing code runs that need not run. What's more, this is confusing the selection machinery. The
solution is to detect the "delete in an empty window" case and don't turn this into an editing
command at all.
- khtml/editing/htmlediting.cpp: (khtml::TypingCommand::deleteKeyPressed)
Jan 23, 2005:
- 5:09 PM Changeset in webkit [8434] by
-
- 4 edits in trunk/WebCore
Fixed <rdar://problem/3964286> REGRESSION (178-179): menus and "go to old site" link at Ameritrade's new site don't work
Removed check for document from checkCompleted. In this case, WebCore never knew that a WebImageView was complete because
it fell into this document check case in checkCompleted.
Added check for document to tokenizerProcessedData (see <rdar://problem/3807144>)
Reviewed by Darin.
- khtml/khtml_part.cpp: (KHTMLPart::stop): (KHTMLPart::checkCompleted):
- khtml/khtml_part.h:
- kwq/KWQKHTMLPart.mm: (KWQKHTMLPart::tokenizerProcessedData):