#7639 closed bug (fixed)
Vertically resizing leaves redrawing artifacts
Reported by: | humdinger | Owned by: | axeld |
---|---|---|---|
Priority: | normal | Milestone: | R1 |
Component: | Kits/Interface Kit | Version: | R1/Development |
Keywords: | BColumnListView | Cc: | |
Blocked By: | Blocking: | ||
Platform: | All |
Description (last modified by )
Attachments (2)
Change History (9)
by , 14 years ago
Attachment: | sounds-lines.png added |
---|
comment:1 by , 14 years ago
Description: | modified (diff) |
---|
comment:4 by , 12 years ago
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.
by , 12 years ago
Attachment: | 0001-Fix-7639.-Fixes-the-redraw-issue-in-ColumListView.patch added |
---|
follow-up: 6 comment:5 by , 12 years ago
patch: | 0 → 1 |
---|
comment:6 by , 12 years ago
Resolution: | → fixed |
---|---|
Status: | new → closed |
Replying to Janus:
That looks reasonable. After applying your patch I cannot reproduce this vertical resize artifacts anymore. Thank you.
artifacts when resizing Sounds prefs