ui/text: use default colors to guard against empty materials

Signed-off-by: Elias Naur <mail@eliasnaur.com>
This commit is contained in:
Elias Naur
2019-07-05 17:11:17 +02:00
parent e3629cc0fb
commit 0f576cf625
2 changed files with 7 additions and 0 deletions
+4
View File
@@ -4,6 +4,7 @@ package text
import (
"image"
"image/color"
"math"
"time"
"unicode/utf8"
@@ -203,9 +204,12 @@ func (e *Editor) Layout(ops *ui.Ops, cs layout.Constraints) layout.Dimens {
Offset: off,
}
ui.PushOp{}.Add(ops)
// Apply material. Set a default color in case the material is empty.
if e.rr.len() > 0 {
draw.ColorOp{Col: color.RGBA{A: 0xff}}.Add(ops)
e.Material.Add(ops)
} else {
draw.ColorOp{Col: color.RGBA{A: 0xaa}}.Add(ops)
e.HintMaterial.Add(ops)
}
for {
+3
View File
@@ -4,6 +4,7 @@ package text
import (
"image"
"image/color"
"math"
"unicode/utf8"
@@ -109,6 +110,8 @@ func (l Label) Layout(ops *ui.Ops, cs layout.Constraints) layout.Dimens {
ui.PushOp{}.Add(ops)
ui.TransformOp{Transform: ui.Offset(off)}.Add(ops)
l.Face.Path(str).Add(ops)
// Set a default color in case the material is empty.
draw.ColorOp{Col: color.RGBA{A: 0xff}}.Add(ops)
l.Material.Add(ops)
draw.DrawOp{Rect: lclip}.Add(ops)
ui.PopOp{}.Add(ops)