#7639: Vertically resizing leaves redrawing artifacts ----------------------------------+----------------------------- Reporter: humdinger | Owner: axeld Type: bug | Status: new Priority: normal | Milestone: R1 Component: Kits/Interface Kit | Version: R1/Development Resolution: | Keywords: BColumnListView Blocked By: | Blocking: Has a Patch: 0 | Platform: All ----------------------------------+----------------------------- Comment (by x-ist): It seems there is an off-by-one error in the passed-in invalidBounds parameter of '''OutlineView::Draw(BRect invalidBounds)''' in ColumnListView.cpp. I still have to investigate where exactly the miscalculation happens though. If the method is changed like this: {{{ void OutlineView::Draw(BRect invalidBounds) { invalidBounds.top -= 1; invalidBounds.left -= 1; #if SMART_REDRAW BRegion invalidRegion; GetClippingRegion(&invalidRegion); #endif ... }}} the glitches disappear, and not only the horizontal ones at the bottom! In line 3398 the focus row can then be drawn with the correct width {{{ StrokeRect(BRect(0, line, invalidBounds.right, line + rowHeight)); }}} instead of {{{ StrokeRect(BRect(0, line, 10000.0, line + rowHeight)); }}} which I suppose was done due to glitches upon resizing the window to the right. -- Ticket URL: <http://dev.haiku-os.org/ticket/7639#comment:4> Haiku <http://dev.haiku-os.org> Haiku - the operating system.