rem: range.position = WMAX(0, rect.pos.y / rh - 1); range.count = WMAX(1, WMIN(rect.size.height / rh + 3, table->rows));
add: dif = rect.pos.y % rh;  range.position = WMAX(0, (rect.pos.y - dif) / rh); range.count = WMAX(1, WMIN((rect.size.height + dif) / rh, table->rows));
context: static WMRange rowsInRect(WMTableView *table, WMRect rect){    WMRange range;    int rh = table->rowHeight;        range.position = WMAX(0, rect.pos.y / rh - 1);    range.count = WMAX(1, WMIN(rect.size.height / rh + 3, table->rows));    return range;}