Don't refresh pads with invalid coordinates. The window should be fully resizable, closes #20

This commit is contained in:
Yohann D'ANELLO
2020-11-26 20:58:46 +01:00
parent ca03caf3ba
commit f2f34bfbc6
5 changed files with 36 additions and 11 deletions

View File

@ -37,7 +37,7 @@ class MenuDisplay(Display):
self.menubox.refresh(self.y, self.x, self.height, self.width)
self.pad.clear()
self.update_pad()
self.pad.refresh(cornery, 0, self.y + 1, self.x + 2,
self.refresh_pad(self.pad, cornery, 0, self.y + 1, self.x + 2,
self.height - 2 + self.y,
self.width - 2 + self.x)
@ -81,7 +81,8 @@ class MainMenuDisplay(Display):
for i in range(len(self.title)):
self.addstr(self.pad, 4 + i, max(self.width // 2
- len(self.title[0]) // 2 - 1, 0), self.title[i])
self.pad.refresh(0, 0, self.y, self.x, self.height + self.y - 1,
self.refresh_pad(self.pad, 0, 0, self.y, self.x,
self.height + self.y - 1,
self.width + self.x - 1)
menuwidth = min(self.menudisplay.preferred_width, self.width)
menuy, menux = len(self.title) + 8, self.width // 2 - menuwidth // 2 - 1