Correct battery animation
This commit is contained in:
parent
7be74307eb
commit
635ed267bb
|
@ -122,6 +122,7 @@ public final class AnimationManager {
|
||||||
public void playCharging() {
|
public void playCharging() {
|
||||||
StatusManager.setChargingLedsActive(true);
|
StatusManager.setChargingLedsActive(true);
|
||||||
submit(() -> {
|
submit(() -> {
|
||||||
|
final int num_leds = mLEDManager.getNumLEDs();
|
||||||
int solid_leds = 0;
|
int solid_leds = 0;
|
||||||
mLEDManager.enableAllLEDs(false);
|
mLEDManager.enableAllLEDs(false);
|
||||||
mLEDManager.setColor(0xffffff);
|
mLEDManager.setColor(0xffffff);
|
||||||
|
@ -131,17 +132,17 @@ public final class AnimationManager {
|
||||||
while (check(Constants.SpotlightMode.CHARGING)) {
|
while (check(Constants.SpotlightMode.CHARGING)) {
|
||||||
int batteryLevel = getBatteryLevel();
|
int batteryLevel = getBatteryLevel();
|
||||||
if (oldBatteryLevel != batteryLevel) {
|
if (oldBatteryLevel != batteryLevel) {
|
||||||
solid_leds = Integer.valueOf(batteryLevel / mLEDManager.getNumLEDs());
|
solid_leds = (int) Math.floor(batteryLevel / 100.0d * num_leds);
|
||||||
for (int i = 0; i < solid_leds; i++) {
|
for (int i = 0; i < solid_leds; i++) {
|
||||||
mLEDManager.enableLED(i, true);
|
mLEDManager.enableLED(num_leds - i - 1, true);
|
||||||
Thread.sleep(150);
|
Thread.sleep(150);
|
||||||
}
|
}
|
||||||
oldBatteryLevel = batteryLevel;
|
oldBatteryLevel = batteryLevel;
|
||||||
}
|
}
|
||||||
if (100 - solid_leds * mLEDManager.getNumLEDs() > 0) {
|
if (100 - solid_leds * mLEDManager.getNumLEDs() > 0) {
|
||||||
mLEDManager.enableLED(solid_leds, true);
|
mLEDManager.enableLED(num_leds - solid_leds - 1, true);
|
||||||
Thread.sleep(500);
|
Thread.sleep(500);
|
||||||
mLEDManager.enableLED(solid_leds, false);
|
mLEDManager.enableLED(num_leds - solid_leds - 1, false);
|
||||||
Thread.sleep(500);
|
Thread.sleep(500);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue