bool short_press = false;
bool long_press = false;
-stderr.printf("EVENT %d\n", (int)pressed);
-
if (pressed)
{
if (last_down.tv_sec == 0)
{
-stderr.printf(" FIRST PRESSED\n");
last_down = *t;
button_press_timeout = Timeout.add(1500, on_power_button_timeout);
}
else
{
long diff = timediff(t, &last_down);
-stderr.printf(" PRESSED FOR %ld\n", diff);
long_press = diff >= 1500000;
}
} else {
button_press_timeout = 0;
}
long diff = timediff(t, &last_down);
-stderr.printf(" RELEASED AFTER %ld\n", diff);
if (diff >= 1500000)
long_press = true;
else
}
}
-stderr.printf(" LP %d SP %d\n", (int)long_press, (int)short_press);
-
if (long_press) power_long_press();
if (short_press) power_short_press();
}