Fixes for FlashlightTile lifecycle

Change-Id: I690440465ef5312d77a279e73eaa22ccbdfbcd53
Fixes: 33861261
Test: runtest systemui
This commit is contained in:
Jason Monk
2017-01-11 09:41:05 -05:00
parent fabf8e8187
commit 861e09ade2
2 changed files with 7 additions and 2 deletions

View File

@@ -47,13 +47,11 @@ public class FlashlightTile extends QSTile<QSTile.BooleanState> implements
public FlashlightTile(Host host) {
super(host);
mFlashlightController = host.getFlashlightController();
mFlashlightController.addCallback(this);
}
@Override
protected void handleDestroy() {
super.handleDestroy();
mFlashlightController.removeCallback(this);
}
@Override
@@ -63,6 +61,11 @@ public class FlashlightTile extends QSTile<QSTile.BooleanState> implements
@Override
public void setListening(boolean listening) {
if (listening) {
mFlashlightController.addCallback(this);
} else {
mFlashlightController.removeCallback(this);
}
}
@Override

View File

@@ -121,6 +121,8 @@ public class FlashlightControllerImpl implements FlashlightController {
}
cleanUpListenersLocked(l);
mListeners.add(new WeakReference<>(l));
l.onFlashlightAvailabilityChanged(mTorchAvailable);
l.onFlashlightChanged(mFlashlightEnabled);
}
}