ui: build paths as ops

Instead of allocating and constructing a clip path, store path data
directly in op lists. Use separate op lists for cached text layout
paths.

Signed-off-by: Elias Naur <mail@eliasnaur.com>
This commit is contained in:
Elias Naur
2019-06-02 16:43:28 +02:00
parent 9f58ed0fea
commit 1e38eec0ab
15 changed files with 248 additions and 160 deletions
+3 -3
View File
@@ -80,14 +80,14 @@ func resolveFocus(r *ui.OpsReader, focus Key) (Key, listenerPriority, bool) {
var hide bool
loop:
for {
data, refs, ok := r.Decode()
encOp, ok := r.Decode()
if !ok {
break
}
switch ops.OpType(data[0]) {
switch ops.OpType(encOp.Data[0]) {
case ops.TypeKeyHandler:
var op OpHandler
op.Decode(data, refs)
op.Decode(encOp.Data, encOp.Refs)
var newPri listenerPriority
switch {
case op.Focus: