Open adam-arold opened 4 years ago
I've noticed that we're creating a new Screen for the TileGrid in BaseView:
final override val screen = Screen.create(tileGrid)
Testing for the type of TileGrid passed to the View fixes the bug:
final override val screen =
if (tileGrid is Screen) {
tileGrid
} else {
Screen.create(tileGrid)
}
but I'm not sure if I'm not simply masking an underlying problem in the Screen implementation
I think this is masking, because outside of these View
s the problem still persists. I'm not sure that there is a simple solution for this problem unfortunately. 😢
If a
Screen
instance is passed to aView
's constructor it won't be displayed correctly because the underlyingScreen
implementation doesn't handle delegation to its underlyingTileGrid
properly. The display will be garbled.