cpicker: fix line indicator artifact
This commit is contained in:
@@ -1889,39 +1889,17 @@ static void lv_cpicker_invalidate(lv_obj_t * cpicker, bool all)
|
||||
{
|
||||
lv_area_t line_area;
|
||||
|
||||
lv_point_t p1, p2;
|
||||
p1.x = ext->rect_gradient_area.x1 + ind_pos;
|
||||
p1.y = ext->rect_gradient_area.y1;
|
||||
p2.x = p1.x;
|
||||
p2.y = ext->rect_gradient_area.y2;
|
||||
|
||||
line_area.x1 = p1.x;
|
||||
line_area.y1 = p1.y;
|
||||
line_area.x2 = p2.x;
|
||||
line_area.y2 = p2.x;
|
||||
|
||||
line_area.x1 -= 2*ext->indicator.style->line.width;
|
||||
line_area.y1 -= 2*ext->indicator.style->line.width;
|
||||
line_area.x2 += 2*ext->indicator.style->line.width;
|
||||
line_area.y2 += 2*ext->indicator.style->line.width;
|
||||
/*Invalidate the current position*/
|
||||
line_area.x1 = ext->rect_gradient_area.x1 + ind_pos - ext->indicator.style->line.width;
|
||||
line_area.x2 = ext->rect_gradient_area.x1 + ind_pos + ext->indicator.style->line.width;
|
||||
line_area.y1 = ext->rect_gradient_area.y1;
|
||||
line_area.y2 = ext->rect_gradient_area.y2;
|
||||
|
||||
lv_inv_area(disp, &line_area);
|
||||
|
||||
/* invalidate last postion */
|
||||
p1.x = ext->rect_gradient_area.x1 + prev_pos;
|
||||
//p1.y = ext->rect_gradient_area.y1;
|
||||
p2.x = p1.x;
|
||||
//p2.y = ext->rect_gradient_area.y2;
|
||||
|
||||
line_area.x1 = p1.x;
|
||||
line_area.y1 = p1.y;
|
||||
line_area.x2 = p2.x;
|
||||
line_area.y2 = p2.x;
|
||||
|
||||
line_area.x1 -= 2*ext->indicator.style->line.width;
|
||||
line_area.y1 -= 2*ext->indicator.style->line.width;
|
||||
line_area.x2 += 2*ext->indicator.style->line.width;
|
||||
line_area.y2 += 2*ext->indicator.style->line.width;
|
||||
/* Invalidate last position */
|
||||
line_area.x1 = ext->rect_gradient_area.x1 + prev_pos - ext->indicator.style->line.width;
|
||||
line_area.x2 = ext->rect_gradient_area.x1 + prev_pos + ext->indicator.style->line.width;
|
||||
|
||||
lv_inv_area(disp, &line_area);
|
||||
break;
|
||||
|
||||
Reference in New Issue
Block a user