Fix dirty pixels problem on window's right side

The last column of pixel on the window's right side isn't correctly
drawn and pixels appear dirty and more noticeably when the a NagView
message was previously shown, a stripe of red pixels remains on the right.

We use now a more souding roundig scheme. Now the rectangles to clip or to
draw are passed around as Lua numbers without any rounding. In turns, when
the rect coordinates are passed to the renderer we ensure the border of the
rect are correctly snapped to the pixel's grid. It works by computing the
coordinates of the edges, round them to integers and then compute the rect's
width based on the rounded coordinates values.
This commit is contained in:
Francesco Abbate
2021-10-10 14:52:55 +02:00
parent c179f909e2
commit cb08c5cbb7
3 changed files with 19 additions and 12 deletions
+1 -1
View File
@@ -140,7 +140,7 @@ end
function View:draw_background(color)
local x, y = self.position.x, self.position.y
local w, h = self.size.x, self.size.y
renderer.draw_rect(x, y, w + x % 1, h + y % 1, color)
renderer.draw_rect(x, y, w, h, color)
end