Timeline
Oct 9, 2004:
- 4:32 PM Changeset in webkit [7801] by
-
- 3 edits in trunk/WebCore
Reviewed by Kevin.
- fixed <rdar://problem/3828147> REGRESSION: textareas with wrap="off" show their contents in a thin vertical line of text
- kwq/KWQTextArea.h: Added setTextColor and setBackgroundColor methods. This is really for another fix I'm landing later, but it does no harm to add these now.
- kwq/KWQTextArea.mm: (-[KWQTextArea _configureTextViewForWordWrapMode]): Set the container size after changing the flag that determines if the width tracks the text view. Otherwise, we won't successfully set the width in the case where we don't want it to track the text view. This caused the bug. (-[KWQTextArea _createTextView]): Remove unneeded call to setMaxSize. The above method already does that. (-[KWQTextArea setTextColor:]): Added. (-[KWQTextArea setBackgroundColor:]): Added.
- 3:44 PM Changeset in webkit [7800] by
-
- 7 edits in trunk/WebCore
Reviewed by Adele.
- fixed <rdar://problem/3829452> REGRESSION (156-157): onload handler doesn't run on page with meta refresh of 0 duration (new Apple start page)
The fix for <rdar://problem/3773150> made it so <meta> redirects prevent tokenizing the rest of the page.
This is incorrect; the reason the JavaScript-triggered loads prevent tokenizing is that they take place
"right away" in other browsers, but that is not true of <meta> redirect. We fixed this by using a separate
call for <meta> redirect and not preventing tokenizing when that's in effect.
- khtml/khtml_part.h: Removed userGesture parameter from scheduleRedirection. Renamed isImmediateRedirectPending to isScheduledLocationChangePending. Added scheduleLocationChange.
- khtml/khtml_part.cpp: (KHTMLPart::openURL): Updated for new constant name. (KHTMLPart::scheduleRedirection): Removed now-unneeded userGesture parameter, and removed code that does the special case for redirection during load; a <meta> refresh can never be one of those special redirects during a load because it redirects the frame itself, not another frame. Also tightened up the logic by always stopping the redirect timer even if we aren't restarting it. (KHTMLPart::scheduleLocationChange): Added. Like scheduleRedirection, but with a different constant so we can tell it apart and always a delay of 0. The "redirection during load" case was moved in here and renamed to locationChangeScheduledDuringLoad. (KHTMLPart::isScheduledLocationChangePending): Renamed from isImmediateRedirectPending. This now returns true only for location changes and history navigation, not <meta> redirects. (KHTMLPart::scheduleHistoryNavigation): Tightened up logic to do the stop() outside the if as above, and got rid of a silly timer delay computation that always resulted in 0.
- khtml/khtmlpart_p.h: Added a new value to the RedirectionScheduled enum for scheduleLocationChange and also renamed one of the existing values.
- khtml/html/htmltokenizer.cpp: (HTMLTokenizer::write): Changed to use isScheduledLocationChangePending instead of isImmediateRedirectPending, because we do want to continue tokenizing if it's actually a redirect.
- khtml/ecma/kjs_html.cpp: (KJS::HTMLDocument::putValue): Changed to call the new scheduleLocationChange instead of calling scheduleRedirection with delay of 0.
- khtml/ecma/kjs_window.cpp: (Window::put): Ditto. (WindowFunc::tryCall): Ditto. (Location::put): Ditto. (LocationFunc::tryCall): Ditto.
- 3:36 PM Changeset in webkit [7799] by
-
- 2 edits in trunk/WebCore
Reviewed by Kevin.
- fixed <rdar://problem/3658277> REGRESSION (1.1-1.2): form submission should either not simulate a click at all or use (0,0) the way Mozilla does
- khtml/html/html_elementimpl.cpp: (HTMLElementImpl::click): Use 0,0 for the coordinates.
- 3:17 PM Changeset in webkit [7798] by
-
- 3 edits in trunk/JavaScriptCore
Reviewed by Kevin.
- fixed <rdar://problem/3804661> REGRESSION: JavaScriptCore framework now has two init routines
- bindings/NP_jsobject.cpp: Fixed unnecessarily-complex globals set up that was creating an init routine.
- kjs/ustring.cpp: Changed around the UString::Rep::empty construction to not require a global constructor that creates an init routine.
- 2:46 PM Changeset in webkit [7797] by
-
- 5 edits in trunk/WebCore
Reviewed by Kevin.
- fixed <rdar://problem/3804665> REGRESSION: WebCore framework now has many init routines
- khtml/xml/dom_nodeimpl.h: Changed anyQName declaration to not use the inline function makeId. Surprisingly, the inline function was not "constant-folded" and we ended up with a copy of the function in each file as an init routine for the framework.
- khtml/ecma/kjs_html.cpp: (Gradient::colorStops): Get rid of initialized ColorStop globals; their constructors were showing up as init routines for the framework.
- khtml/rendering/render_style.h: Got rid of inline initialDashboardRegions function.
- khtml/rendering/render_style.cpp: (RenderStyle::initialDashboardRegions): Made this a normal function. When it was an inline function, the constructors for the per-file copies of the globals were showing up as init routines for the framework.
- 2:39 PM Changeset in webkit [7796] by
-
- 4 adds in trunk/LayoutTests/fast/js
Added layout test for just-fixed JavaScriptCore bug.
- 2:30 PM Changeset in webkit [7795] by
-
- 2 edits in trunk
Forgot to include that I also fixed <rdar://problem/3397658> scroll wheel does not work to scroll overflow:auto/scroll/overlay areas (RSS)
- 2:25 PM Changeset in webkit [7794] by
-
- 17 edits in trunk
WebCore:
Fixed:
<rdar://problem/3625352> up and down arrow and page up/down keys don't work to scroll overflow:auto/scroll/overlay areas
<rdar://problem/3822027> REGRESSION (Mail): When selection moves out of visible area, should center as NSText does
Reviewed by hyatt, kocienda.
- khtml/rendering/render_layer.cpp: (RenderLayer::scroll): new
- khtml/rendering/render_layer.h:
- khtml/rendering/render_object.cpp: (RenderObject::scroll): new
- khtml/rendering/render_object.h:
- kwq/KWQKHTMLPart.h:
- kwq/KWQKHTMLPart.mm: (KWQKHTMLPart::scrollOverflow): new (KWQKHTMLPart::scrollOverflowWithScrollWheelEvent): new (KWQKHTMLPart::khtmlMousePressEvent): store pressed node so we know where the focus is
- kwq/KWQScrollBar.h:
- kwq/KWQScrollBar.mm: (QScrollBar::setValue): return a bool (QScrollBar::scrollbarHit): ditto (QScrollBar::scroll): new
- kwq/WebCoreBridge.h:
- kwq/WebCoreBridge.mm: (-[WebCoreBridge scrollOverflowInDirection:granularity:]): new (-[WebCoreBridge scrollOverflowWithScrollWheelEvent:]): new (-[WebCoreBridge ensureSelectionVisible]): visually center the extent of the selection
WebKit:
Fixed: <rdar://problem/3625352> up and down arrow and page up/down keys don't work to scroll overflow:auto/scroll/overlay areas
Reviewed by hyatt.
- Plugins.subproj/WebBaseNetscapePluginStream.m: (-[WebBaseNetscapePluginStream initWithRequestURL:pluginPointer:notifyData:sendNotification:]): fixed typo in comment
- Plugins.subproj/WebNetscapePluginStream.m: (-[WebNetscapePluginStream initWithRequest:pluginPointer:notifyData:sendNotification:]): ditto
- WebView.subproj/WebFramePrivate.h:
- WebView.subproj/WebFrameView.m: (-[WebFrameView _bridge]): new (-[WebFrameView scrollToBeginningOfDocument:]): call the bridge to scroll, if that fails, scroll the document view (-[WebFrameView scrollToEndOfDocument:]): ditto (-[WebFrameView _pageVertically:]): ditto (-[WebFrameView _pageHorizontally:]): ditto (-[WebFrameView _scrollLineVertically:]): ditto (-[WebFrameView _scrollLineHorizontally:]): ditto
- WebView.subproj/WebHTMLView.m: (-[WebHTMLView scrollWheel:]): call the bridge to scroll, if that fails, pass to next responder
- 2:22 PM Changeset in webkit [7793] by
-
- 2 edits in trunk/JavaScriptCore
Reviewed by Kevin.
- fixed <rdar://problem/3822618> REGRESSION (164-165): expedia.com's popup help doesn't work
- kjs/reference.cpp: (Reference::putValue): Change so that references not found in any object work with the window object of the page the function is in, not the page of the caller. This is what all other browsers do. This code was hidden before by the "everything is defined on window object" hack in WebCore.
Oct 8, 2004:
- 3:27 PM Changeset in webkit [7792]
-
- 25 copies3 deletes in tags/WebKit-125~5~4
This commit was manufactured by cvs2svn to create tag
'WebKit-125~5~4'.
- 3:27 PM Changeset in webkit [7791] by
-
- 2 edits in branches/Safari-1-2-branch/WebKit
WebKit Versioning for SUPanNavy WebKit-125.5.4
- 3:18 PM Changeset in webkit [7790]
-
- 71 copies2 deletes in tags/WebCore-125~8~10
This commit was manufactured by cvs2svn to create tag
'WebCore-125~8~10'.
- 3:18 PM Changeset in webkit [7789] by
-
- 2 edits in branches/Safari-1-2-branch/WebCore
WebCore versioning for SUPanNavy, WebCore-125.8.10
Oct 7, 2004:
- 4:27 PM Changeset in webkit [7788] by
-
- 12 edits in branches/Safari-1-2-branch
WebCore:
Reviewed by Darin.
Some of this was rolled from HEAD, and some is a new bug fix that we'll do on TOT separately.
- fixed <rdar://problem/3827035> REGRESSION (Navy): Safari no longer works with Wachovia online banking after logging in
- fixed <rdar://problem/3830201> REGRESSION (Navy): onload handler doesn't run on page with meta refresh (0 duration) (clone for SUPanNavy)
The fix for <rdar://problem/3773150> made it so we stopped tokenizing once an immediate redirect was pending.
For the Wachovia bug, there was a failing history.go call in the <head>; even though it did not cause any
navigation, it prevented the rest of the page from being loaded. Now we check to see if the requested history
navigation is possible, and if it's not then we continue processing the rest of the page as normal.
Another problem caused by the same fix is that <meta> redirects were preventing tokenizing in the same way.
This is incorrect; the reason the JavaScript-triggered loads prevent tokenizing is that they take place
"right away" in other browsers, but that is not true of <meta> redirect. We fixed this by using a separate
call for <meta> redirect and not preventing tokenizing when that's in effect.
- khtml/khtml_part.h: Removed userGesture parameter from scheduleRedirection. Renamed isImmediateRedirectPending to isScheduledLocationChangePending. Added scheduleLocationChange.
- khtml/khtml_part.cpp: (KHTMLPart::openURL): Updated for new constant name. (KHTMLPart::scheduleRedirection): Removed now-unneeded userGesture parameter, and removed code that does the special case for redirection during load; a <meta> refresh can never be one of those special redirects during a load because it redirects the frame itself, not another frame. Also tightened up the logic by always stopping the redirect timer even if we aren't restarting it. (KHTMLPart::scheduleLocationChange): Added. Like scheduleRedirection, but with a different constant so we can tell it apart and always a delay of 0. The "redirection during load" case was moved in here and renamed to locationChangeScheduledDuringLoad. (KHTMLPart::isScheduledLocationChangePending): Renamed from isImmediateRedirectPending. This now returns true only for location changes and history navigation, not <meta> redirects. (KHTMLPart::scheduleHistoryNavigation): Added a check of canGoBackOrForward across bridge so we don't set up a history navigation that will just fail later. This fixes the Wachovia bug. Also tightened up logic to do the stop() outside the if as above, and got rid of a silly timer delay computation that always resulted in 0.
- khtml/khtmlpart_p.h: Added a new value to the RedirectionScheduled enum for scheduleLocationChange and also renamed one of the existing values.
- khtml/html/htmltokenizer.cpp: (HTMLTokenizer::write): Changed to use isScheduledLocationChangePending instead of isImmediateRedirectPending, because we do want to continue tokenizing if it's actually a redirect.
- khtml/ecma/kjs_html.cpp: (KJS::HTMLDocument::putValue): Changed to call the new scheduleLocationChange instead of calling scheduleRedirection with delay of 0.
- khtml/ecma/kjs_window.cpp: (Window::put): Ditto. (WindowFunc::tryCall): Ditto. (Location::put): Ditto. (LocationFunc::tryCall): Ditto.
- kwq/KWQKHTMLPart.h: Added canGoBackOrForward.
- kwq/KWQKHTMLPart.mm: (KWQKHTMLPart::canGoBackOrForward): Added. Calls across bridge to do the real work.
- kwq/WebCoreBridge.h: Added canGoBackOrForward.
WebKit:
Reviewed by Darin.
- roll in canGoBackOrForward method from HEAD; needed for WebCore bug fix
- WebCoreSupport.subproj/WebBridge.m: (-[WebBridge canGoBackOrForward:]): Added.
- 3:05 PM Changeset in webkit [7787] by
-
- 1 edit in trunk/JavaScriptCore/kjs/object.cpp
Fixed build error.
- 2:30 PM Changeset in webkit [7786] by
-
- 3 edits in trunk/JavaScriptCore
Added simple JavaScript call tracing. Very useful for
debugging complex pages.
Tracing is only available in development builds and is
enabled by:
(gdb) set traceJavaScript = 1
or programatically
setTraceJavaScript(true)
Function, args, and return values are printed to console. Very
verbose.
Reviewed by Ken.
- kjs/function_object.cpp: (FunctionProtoFuncImp::call):
- kjs/object.cpp: (KJS::Object::call):
Oct 6, 2004:
- 7:03 PM Changeset in webkit [7785] by
-
- 6 edits in trunk/WebCore
Back out style sharing perf fix.
- khtml/css/cssstyleselector.cpp: (khtml::CSSStyleSelector::locateCousinList): (khtml::CSSStyleSelector::canShareStyleWithElement): (khtml::CSSStyleSelector::locateSharedStyle):
- khtml/css/cssstyleselector.h:
- khtml/html/html_elementimpl.h: (DOM::HTMLElementImpl::inlineStyleDecl):
- khtml/xml/dom_elementimpl.cpp: (ElementImpl::recalcStyle):
- khtml/xml/dom_elementimpl.h:
- 4:27 PM Changeset in webkit [7784] by
-
- 1 edit in trunk/WebCore/khtml/css/cssstyleselector.cpp
Really bring the new code in line with the old style sharing code.
- 9:50 AM Changeset in webkit [7783]
-
- 3 copies in tags/Safari-166
This commit was manufactured by cvs2svn to create tag 'Safari-166'.
- 9:50 AM Changeset in webkit [7782] by
-
- 1 edit in trunk/JavaScriptCore/JavaScriptCore.pbproj/project.pbxproj
reversion JSC, for the -Wno-long-double changes
- 9:39 AM Changeset in webkit [7781] by
-
- 1 edit in trunk/JavaScriptCore/JavaScriptCore.pbproj/project.pbxproj
Add -Wno-long-double back to our warning flags. Without it, the x86 build fails.
Oct 5, 2004:
- 10:52 PM Changeset in webkit [7780] by
-
- 3 edits in trunk
versioning for TOT, Safari 2.0 (v167u)
- 10:13 PM Changeset in webkit [7779] by
-
- 6 edits in trunk
Safari-166 stamp for everything except WebBrowser. In these projects, CFBundleShortVersionString matches CFBundleVersion (166 for both).
- 6:43 PM Changeset in webkit [7778] by
-
- 2 edits in trunk/WebCore
Fix a bug in the iteration of locateCousinList and clean up the style sharing stats code.
Reviewed by NOBODY (OOPS!).
- khtml/css/cssstyleselector.cpp: (khtml::CSSStyleSelector::locateCousinList): (khtml::CSSStyleSelector::elementsCanShareStyle): (khtml::CSSStyleSelector::locateSharedStyle): (khtml::CSSStyleSelector::styleForElement):
- 4:19 PM Changeset in webkit [7777] by
-
- 5 edits in trunk/JavaScriptCore
Fixed <rdar://problem/3819234> NPN_SetException (and throwException:) isn't implemented
Reviewed by Chris.
- bindings/NP_jsobject.cpp: (_NPN_SetException):
- bindings/npruntime.cpp: (_NPN_SetExceptionWithUTF8):
- bindings/objc/WebScriptObject.mm: (+[WebScriptObject throwException:]):
- kjs/internal.h: (KJS::InterpreterImp::context):
WebBrowser:
Added debugging support for:
Fixed <rdar://problem/3819234> NPN_SetException (and throwException:) isn't implemented
Logging is not enabled in either development or deployment build.
Reviewed by Chris.
- LocationChangeHandler.m: (+[Logger isSelectorExcludedFromWebScript:]): (-[Logger logMessage:]): (-[LocationChangeHandler webView:windowScriptObjectAvailable:]): (-[LocationChangeHandler webView:locationChangeDone:forDataSource:]):
- 4:06 PM Changeset in webkit [7776] by
-
- 2 edits in trunk/WebCore
Reviewed by Hyatt
- khtml/rendering/bidi.cpp: (khtml::RenderBlock::computeHorizontalPositionsForLine): Fix coding mistake that broke layout tests involving compacts.
- 4:02 PM Changeset in webkit [7775] by
-
- 5 edits in trunk/WebCore
Fix style sharing optimization to be fast again. Go back to using pointer comparisons when looking for
cousins to share.
Reviewed by darin
- khtml/css/cssstyleselector.cpp: (khtml::CSSStyleSelector::locateCousinList):
- khtml/rendering/render_object.cpp: (RenderObject::setStyleInternal):
- khtml/rendering/render_object.h:
- khtml/xml/dom_elementimpl.cpp: (ElementImpl::recalcStyle):
- 3:45 PM Changeset in webkit [7774] by
-
- 3 edits in trunk/WebKit
Fixed: <rdar://problem/3827002> assertion failure in WebBaseNetscapePluginStream on abc.go.com
Reviewed by rjw.
- Plugins.subproj/WebBaseNetscapePluginStream.m: (-[WebBaseNetscapePluginStream initWithRequestURL:pluginPointer:notifyData:sendNotification:]): avoid assertion failure in dealloc by temporarily setting isTerminated to YES in case we are released in this method
- Plugins.subproj/WebNetscapePluginStream.m: (-[WebNetscapePluginStream initWithRequest:pluginPointer:notifyData:sendNotification:]): ditto
- 3:19 PM Changeset in webkit [7773] by
-
- 3 edits in trunk/WebCore
Fix lists so that they properly participate in line layout as though they are text (when text bullets are
used) and as images (when image bullets are used).
Reviewed by kocienda
- khtml/rendering/render_list.cpp: (RenderListMarker::createInlineBox):
- khtml/rendering/render_list.h: (khtml::ListMarkerBox:::InlineBox): (khtml::ListMarkerBox::isText):
- 3:14 PM Changeset in webkit [7772] by
-
- 2 edits in trunk/WebKit
- WebCoreSupport.subproj/WebBridge.m: (-[WebBridge pluginViewWithPackage:attributeNames:attributeValues:baseURL:]): initialize "arguments" var to nil to satisfy compiler on deployment build.
- 2:38 PM Changeset in webkit [7771] by
-
- 2 edits in trunk/JavaScriptCore
Fixed <rdar://problem/3821515> binding layer needs to convert NSNumber-bools to js type boolean not number
Reviewed by Ken.
- bindings/objc/objc_utility.mm: (KJS::Bindings::convertObjcValueToValue):
- 2:16 PM Changeset in webkit [7770] by
-
- 6 edits in trunk/WebKit
Fixed <rdar://problem/3825442> first click lost for Dashboard
Allow dashboard to force acceptsFirstMouse:
Reviewed by Chris.
- WebView.subproj/WebHTMLView.m: (-[WebHTMLView acceptsFirstMouse:]):
- WebView.subproj/WebView.m: (-[WebView _dashboardBehavior:]):
- WebView.subproj/WebViewInternal.h:
- WebView.subproj/WebViewPrivate.h:
- WebCoreSupport.subproj/WebImageRenderer.h: Comment change only
- 2:08 PM Changeset in webkit [7769] by
-
- 1 edit in trunk/WebCore/khtml/rendering/render_box.cpp
Back out the assertion.
- 1:42 PM Changeset in webkit [7768] by
-
- 7 edits in trunk/WebKit
Fixed: <rdar://problem/3760920> Need to record plugin view instances
Reviewed by rjw.
- Plugins.subproj/WebPluginController.h:
- Plugins.subproj/WebPluginController.m: (+[WebPluginController plugInViewWithArguments:fromPluginPackage:]): new, creates plug-in view and adds it to global list (+[WebPluginController isPlugInView:]): new, checks if the plug-in view is in the global list (-[WebPluginController destroyAllPlugins]): remove the plug-in from the global list
- Plugins.subproj/WebPluginDocumentView.m: (-[WebPluginDocumentView setDataSource:]): call [WebPluginController plugInViewWithArguments:fromPluginPackage:]
- WebCoreSupport.subproj/WebBridge.m: (-[WebBridge pluginViewWithPackage:attributeNames:attributeValues:baseURL:]): ditto
- WebView.subproj/WebFrame.m: (-[WebFrame _reloadForPluginChanges]): call [WebPluginController isPlugInView:]
- WebView.subproj/WebHTMLView.m: (-[WebHTMLView addSubview:]): ditto
- 1:37 PM Changeset in webkit [7767] by
-
- 5 edits in trunk/WebCore
Reviewed by Darin
Recent checkin adding upstreamDeepEquivalent had it backwards. The helper
we want is downstreamDeepEquivalent, as the deepEquivalent function returns
an upstream position.
- khtml/editing/selection.cpp: (khtml::Selection::layout): DOWNSTREAM case now uses downstreamDeepEquivalent. UPSTREAM uses deepEquivalent.
- khtml/editing/visible_position.cpp: (khtml::VisiblePosition::downstreamDeepEquivalent): New helper, replacing upstreamDeepEquivalent.
- khtml/editing/visible_position.h
- 1:25 PM Changeset in webkit [7766] by
-
- 28 edits in trunk/WebCore
New selection gap-filling architecture. Makes the gap-filling much more like NSTextView and puts the responsibility
for gap-filling in the block. Fixes numerous bugs with selection drawing including bidi issues, incorrect old
horizontal gap filling, and selection performance issues.
Reviewed by kocienda
- khtml/html/html_imageimpl.cpp: (HTMLImageLoader::notifyFinished):
- khtml/misc/khtmllayout.h: (khtml::GapRects::left): (khtml::GapRects::center): (khtml::GapRects::right): (khtml::GapRects::uniteLeft): (khtml::GapRects::uniteCenter): (khtml::GapRects::uniteRight): (khtml::GapRects::unite): (khtml::GapRects::operator QRect): (khtml::GapRects::operator==): (khtml::GapRects::operator!=):
- khtml/rendering/font.cpp: (Font::drawHighlightForText):
- khtml/rendering/font.h:
- khtml/rendering/render_block.cpp: (khtml:::RenderFlow): (khtml::RenderBlock::removeChild): (khtml::RenderBlock::paintObject): (khtml::RenderBlock::paintEllipsisBoxes): (khtml::RenderBlock::setSelectionState): (khtml::RenderBlock::shouldPaintSelectionGaps): (khtml::RenderBlock::isSelectionRoot): (khtml::RenderBlock::selectionGapRects): (khtml::RenderBlock::paintSelection): (khtml::RenderBlock::fillSelectionGaps): (khtml::RenderBlock::fillInlineSelectionGaps): (khtml::RenderBlock::fillBlockSelectionGaps): (khtml::RenderBlock::fillHorizontalSelectionGap): (khtml::RenderBlock::fillVerticalSelectionGap): (khtml::RenderBlock::fillLeftSelectionGap): (khtml::RenderBlock::fillRightSelectionGap): (khtml::RenderBlock::getHorizontalSelectionGapInfo): (khtml::RenderBlock::leftSelectionOffset): (khtml::RenderBlock::rightSelectionOffset):
- khtml/rendering/render_block.h: (khtml::RenderBlock::hasSelectedChildren): (khtml::RenderBlock::selectionState): (khtml::RenderBlock::BlockSelectionInfo::BlockSelectionInfo): (khtml::RenderBlock::BlockSelectionInfo::rects): (khtml::RenderBlock::BlockSelectionInfo::state): (khtml::RenderBlock::BlockSelectionInfo::block): (khtml::RenderBlock::selectionRect):
- khtml/rendering/render_box.cpp: (RenderBox::position):
- khtml/rendering/render_br.cpp: (RenderBR::inlineBox):
- khtml/rendering/render_br.h: (khtml::RenderBR::selectionRect): (khtml::RenderBR::paint):
- khtml/rendering/render_canvas.cpp: (RenderCanvas::selectionRect): (RenderCanvas::setSelection):
- khtml/rendering/render_canvasimage.cpp: (RenderCanvasImage::paint):
- khtml/rendering/render_image.cpp: (RenderImage::paint):
- khtml/rendering/render_image.h:
- khtml/rendering/render_line.cpp: (khtml::InlineBox::nextLeafChild): (khtml::InlineBox::prevLeafChild): (khtml::InlineBox::selectionState): (khtml::InlineFlowBox::addToLine): (khtml::InlineFlowBox::firstLeafChild): (khtml::InlineFlowBox::lastLeafChild): (khtml::InlineFlowBox::firstLeafChildAfterBox): (khtml::InlineFlowBox::lastLeafChildBeforeBox): (khtml::InlineFlowBox::selectionState): (khtml::RootInlineBox::fillLineSelectionGap): (khtml::RootInlineBox::setHasSelectedChildren): (khtml::RootInlineBox::selectionState): (khtml::RootInlineBox::firstSelectedBox): (khtml::RootInlineBox::lastSelectedBox): (khtml::RootInlineBox::selectionTop): (khtml::RootInlineBox::block):
- khtml/rendering/render_line.h: (khtml::RootInlineBox::RootInlineBox): (khtml::RootInlineBox::hasSelectedChildren): (khtml::RootInlineBox::selectionHeight):
- khtml/rendering/render_object.cpp: (RenderObject::selectionColor):
- khtml/rendering/render_object.h: (khtml::RenderObject::): (khtml::RenderObject::selectionState): (khtml::RenderObject::setSelectionState): (khtml::RenderObject::selectionRect): (khtml::RenderObject::canBeSelectionLeaf): (khtml::RenderObject::hasSelectedChildren): (khtml::RenderObject::hasDirtySelectionState): (khtml::RenderObject::setHasDirtySelectionState): (khtml::RenderObject::shouldPaintSelectionGaps): (khtml::RenderObject::SelectionInfo::SelectionInfo):
- khtml/rendering/render_replaced.cpp: (RenderReplaced::RenderReplaced): (RenderReplaced::shouldPaint): (RenderReplaced::selectionRect): (RenderReplaced::setSelectionState): (RenderReplaced::selectionColor): (RenderWidget::paint): (RenderWidget::setSelectionState):
- khtml/rendering/render_replaced.h: (khtml::RenderReplaced::canBeSelectionLeaf): (khtml::RenderReplaced::selectionState):
- khtml/rendering/render_text.cpp: (InlineTextBox::checkVerticalPoint): (InlineTextBox::isSelected): (InlineTextBox::selectionState): (InlineTextBox::selectionRect): (InlineTextBox::paintSelection): (InlineTextBox::paintMarkedTextBackground): (RenderText::paint): (RenderText::setSelectionState): (RenderText::selectionRect):
- khtml/rendering/render_text.h: (khtml::RenderText::canBeSelectionLeaf):
- kwq/KWQPainter.h:
- kwq/KWQPainter.mm: (QPainter::drawHighlightForText):
- kwq/KWQPtrDict.h: (QPtrDictIterator::toFirst):
- kwq/KWQRect.mm: (QRect::unite):
- kwq/WebCoreTextRenderer.h:
- kwq/WebCoreTextRendererFactory.mm: (WebCoreInitializeEmptyTextGeometry):
- 1:11 PM Changeset in webkit [7765] by
-
- 2 edits in trunk/WebKit
Fix to make selection more like NSTextView. All gap painting is now done by WebCore, so WebKit no longer
needs to try to fill gaps around text.
Reviewed by kocienda
- WebCoreSupport.subproj/WebTextRenderer.m: (-[WebTextRenderer _CG_drawHighlightForRun:style:geometry:]): (-[WebTextRenderer _ATSU_drawHighlightForRun:style:geometry:]):
- 1:05 PM Changeset in webkit [7764] by
-
- 9 edits in trunk/WebCore
Reviewed by Darin
Use the new CSS properties I added with my previous check-in. Also makes
some changes to caret positioning and drawing to make the proper editing
end-of-line behavior work correctly.
- khtml/editing/selection.cpp: (khtml::Selection::layout): Caret drawing now takes affinity into account when deciding where to paint the caret (finally!).
- khtml/editing/visible_position.cpp: (khtml::VisiblePosition::previousVisiblePosition): Move off Position::rendersInDifferentPosition to determine the result. Use a simpler test involving comparisons between downstream positions while iterating. This is cheaper to do and easier to understand. (khtml::VisiblePosition::nextVisiblePosition): Ditto.
- khtml/rendering/bidi.cpp: (khtml::BidiIterator::current): Do not return non-breaking spaces for empty text renderers and for non-text renderers. Return a null Qchar instead. Returning non-breaking spaces was causing errors when the new -khtml-nbsp-mode was set to "space". (khtml::RenderBlock::computeHorizontalPositionsForLine): Shrink line boxes that contain with more spaces than can fit on the end of a line. (khtml::RenderBlock::skipWhitespace): Factor this out from findNextLineBreak. (khtml::RenderBlock::findNextLineBreak): Use new skipWhitespace function. Add in code to check and use new CSS properties.
- khtml/rendering/break_lines.cpp: (khtml::isBreakable): Consider a non-breaking space a breakable character based on setting of new -khtml-nbsp-mode property.
- khtml/rendering/break_lines.h: Ditto.
- khtml/rendering/render_block.h: Declare skipWhitespace function.
- khtml/rendering/render_text.cpp: (RenderText::caretRect): Do not draw the caret beyond the right edge of the window when in white-space normal mode.
- 11:24 AM Changeset in webkit [7763] by
-
- 15 edits in trunk/WebCore
Reviewed by Darin
Fix for these bugs:
In this patch, I add two new CSS properties and their associated behavior.
This is to support end-of-line and word-wrapping features that match the
conventions of text editors.
There are also some other small changes here which begin to lay the groundwork
for using these new properties to bring about the desired editing behavior.
- khtml/css/cssparser.cpp: (CSSParser::parseValue): Add support for new CSS properties.
- khtml/css/cssproperties.c: Generated file.
- khtml/css/cssproperties.h: Ditto.
- khtml/css/cssproperties.in: Add new properties.
- khtml/css/cssstyleselector.cpp: (khtml::CSSStyleSelector::applyProperty): Add support for new CSS properties.
- khtml/css/cssvalues.c: Generated file.
- khtml/css/cssvalues.h: Ditto.
- khtml/css/cssvalues.in: Add support for new CSS properties.
- khtml/editing/visible_position.cpp: (khtml::VisiblePosition::upstreamDeepEquivalent): Added new helper.
- khtml/editing/visible_position.h:
- khtml/rendering/render_box.cpp: (RenderBox::deleteLineBoxWrapper): Zero out inlineBoxWrapper.
- khtml/rendering/render_replaced.cpp: (RenderWidget::detach): Zero out inlineBoxWrapper.
- khtml/rendering/render_style.cpp: (StyleCSS3InheritedData): (StyleCSS3InheritedData::operator==): Add support for new CSS properties. (RenderStyle::diff): Ditto.
- khtml/rendering/render_style.h: (khtml::RenderStyle::nbspMode): Ditto. (khtml::RenderStyle::khtmlLineBreak): Ditto. (khtml::RenderStyle::setNBSPMode): Ditto. (khtml::RenderStyle::setKHTMLLineBreak): Ditto. (khtml::RenderStyle::initialNBSPMode): Ditto. (khtml::RenderStyle::initialKHTMLLineBreak): Ditto.
- 8:44 AM Changeset in webkit [7762] by
-
- 2 edits in trunk/WebKit
Reviewed by John.
- fixed <rdar://problem/3577255> custom file icon shows up upside down in <input type=file>
- WebCoreSupport.subproj/WebFileButton.m: (-[WebFileButton setFilename:]): Added a call to setFlipped that fixes the problem, even though I don't know why.
- 8:43 AM Changeset in webkit [7761] by
-
- 2 edits in trunk/WebCore
Reviewed by John.
- fixed <rdar://problem/3673150> Pasting string from clipboard that is longer than input box will accept fails rather than truncating
- kwq/KWQTextField.mm: (-[KWQTextFieldFormatter isPartialStringValid:proposedSelectedRange:originalString:originalSelectedRange:errorDescription:]): Wrote a new version of this method that truncates incoming strings rather than rejecting them out of hand.
- 12:03 AM Changeset in webkit [7760] by
-
- 3 edits in trunk/WebKit
Reviewed by Maciej.
- fixed <rdar://problem/3814237> REGRESSION (Mail): Copy/paste style does not set color in Mail compose window
- WebView.subproj/WebHTMLView.m: (-[WebHTMLView _selectionStartFontAttributesAsRTF]): Changed to call new bridge method named fontAttributesForSelectionStart, deleted the method this used to use, and renamed this to have the word "start" in it. (-[WebHTMLView copyFont:]): Updated for name change.
- English.lproj/StringsNotToBeLocalized.txt: Updated for recent changes.
- 12:01 AM Changeset in webkit [7759] by
-
- 9 edits in trunk/WebCore
Reviewed by Maciej.
- fixed <rdar://problem/3826343> crash in KHTMLParser::setCurrent parsing document fragment (happens in Calendar widget)
- khtml/html/htmlparser.cpp: (KHTMLParser::KHTMLParser): Initialized currentIsReferenced to false (fixes bug). (KHTMLParser::reset): Use doc() to make code easier to read. (KHTMLParser::setCurrent): Ditto. (KHTMLParser::parseToken): Ditto. (KHTMLParser::insertNode): Ditto. (KHTMLParser::getElement): Ditto. (KHTMLParser::popOneBlock): Ditto.
- fixed <rdar://problem/3814237> REGRESSION (Mail): Copy/paste style does not set color in Mail compose window
- kwq/KWQKHTMLPart.h: Added fontAttributesForSelectionStart.
- kwq/KWQKHTMLPart.mm: (KWQKHTMLPart::styleForSelectionStart): Factored out most of fontForSelection. (KWQKHTMLPart::fontAttributesForSelectionStart): Added. (KWQKHTMLPart::fontAttributesForSelectionStart): Added. (KWQKHTMLPart::registerCommandForUndo): Updated for name change (see below). (KWQKHTMLPart::registerCommandForRedo): Ditto.
- kwq/WebCoreBridge.h: Added fontAttributesForSelectionStart.
- kwq/WebCoreBridge.mm: (-[WebCoreBridge undoEditing:]): Updated for name change (see below). (-[WebCoreBridge redoEditing:]): Ditto. (-[WebCoreBridge replaceSelectionWithFragment:selectReplacement:smartReplace:]): Got rid of named temporary EditCommandPtr variable to make things slightly more terse. (-[WebCoreBridge moveSelectionToDragCaret:smartMove:]): Ditto. (-[WebCoreBridge deleteSelectionWithSmartDelete:]): Ditto. (-[WebCoreBridge fontAttributesForSelectionStart]): Added.
- fix compile on Panther and other cleanup
- khtml/khtml_part.cpp: Removed unneeded include.
- kwq/KWQEditCommand.h: Got rid of use of "impl" when referring to EditCommand pointers.
- kwq/KWQEditCommand.mm: Added include so we compile on Panther. (-[KWQEditCommand initWithEditCommand:]): Changed name. (-[KWQEditCommand dealloc]): Updated for m_impl change to m_command. (-[KWQEditCommand finalize]): Ditto. (+[KWQEditCommand commandWithEditCommand:]): Changed name. (-[KWQEditCommand command]): Changed name.