Updated X backend to match

This commit is contained in:
Sasha Koshka 2023-05-02 22:18:34 -04:00
parent 4a723ff296
commit 3caa9c53ef
2 changed files with 3 additions and 9 deletions

View File

@ -18,15 +18,11 @@ type entity struct {
selected bool
layoutInvalid bool
isContainer bool
}
func (backend *backend) NewEntity (owner tomo.Element) tomo.Entity {
entity := &entity { element: owner }
if _, ok := owner.(ability.Container); ok {
entity.isContainer = true
entity.InvalidateLayout()
}
return entity
}
@ -179,7 +175,7 @@ func (entity *entity) DrawBackground (destination artist.Canvas) {
func (entity *entity) InvalidateLayout () {
if entity.window == nil { return }
if !entity.isContainer { return }
if _, ok := entity.element.(ability.Layoutable); !ok { return }
entity.layoutInvalid = true
entity.window.system.anyLayoutInvalid = true
}

View File

@ -146,10 +146,8 @@ func (system *system) resizeChildToFit () {
system.child.bounds = system.canvas.Bounds()
system.child.clippedBounds = system.child.bounds
system.child.Invalidate()
if system.child.isContainer {
system.child.InvalidateLayout()
}
}
func (system *system) afterEvent () {
if system.anyLayoutInvalid {