Skip to content
Snippets Groups Projects
Commit 9ec3f3e2 authored by Dima Zavin's avatar Dima Zavin
Browse files

charger: make the almost-full frame only show when it's current level


Change-Id: Id53de101dd3c211d376abfd748e7646e28291749
Signed-off-by: default avatarDima Zavin <dima@android.com>
parent 604f52e3
Branches
Tags
No related merge requests found
......@@ -87,6 +87,7 @@ struct frame {
const char *name;
int disp_time;
int min_capacity;
bool level_only;
gr_surface surface;
};
......@@ -157,6 +158,7 @@ static struct frame batt_anim_frames[] = {
.name = "charger/battery_4",
.disp_time = 750,
.min_capacity = 80,
.level_only = true,
},
{
.name = "charger/battery_5",
......@@ -735,7 +737,14 @@ static void update_screen_state(struct charger *charger, int64_t now)
* if necessary, advance cycle cntr, and reset frame cntr
*/
batt_anim->cur_frame++;
if (batt_anim->cur_frame == batt_anim->num_frames) {
/* if the frame is used for level-only, that is only show it when it's
* the current level, skip it during the animation.
*/
while (batt_anim->cur_frame < batt_anim->num_frames &&
batt_anim->frames[batt_anim->cur_frame].level_only)
batt_anim->cur_frame++;
if (batt_anim->cur_frame >= batt_anim->num_frames) {
batt_anim->cur_cycle++;
batt_anim->cur_frame = 0;
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment