v0.6.2: adjusted action indicator to be more crash resistant

This commit is contained in:
Evan Debenham 2017-09-30 22:04:27 -04:00
parent b24e44db3d
commit 3e5c69b25e

View File

@ -46,11 +46,11 @@ public class ActionIndicator extends Tag {
super.destroy(); super.destroy();
instance = null; instance = null;
} }
@Override @Override
protected void layout() { protected void layout() {
super.layout(); super.layout();
if (icon != null){ if (icon != null){
icon.x = x + (width - icon.width()) / 2; icon.x = x + (width - icon.width()) / 2;
icon.y = y + (height - icon.height()) / 2; icon.y = y + (height - icon.height()) / 2;
@ -59,7 +59,9 @@ public class ActionIndicator extends Tag {
add(icon); add(icon);
} }
} }
private boolean needsLayout = false;
@Override @Override
public void update() { public void update() {
super.update(); super.update();
@ -77,6 +79,11 @@ public class ActionIndicator extends Tag {
} else { } else {
visible = action != null; visible = action != null;
} }
if (needsLayout){
layout();
needsLayout = false;
}
} }
@Override @Override
@ -103,7 +110,7 @@ public class ActionIndicator extends Tag {
} }
if (action != null){ if (action != null){
instance.icon = action.getIcon(); instance.icon = action.getIcon();
instance.layout(); instance.needsLayout = true;
} }
} }
} }