Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 483dbe48 authored by TreeHugger Robot's avatar TreeHugger Robot Committed by Android (Google) Code Review
Browse files

Merge "Log time tick alarms"

parents d71ccc54 69d4b575
Loading
Loading
Loading
Loading
+6 −0
Original line number Diff line number Diff line
@@ -158,6 +158,12 @@ public class DozeLog {
        log("missedTick by=" + delay);
    }

    public static void traceTimeTickScheduled(long when, long triggerAt) {
        if (!ENABLED) return;
        log("timeTickScheduled at=" + FORMAT.format(new Date(when)) + " triggerAt="
                + FORMAT.format(new Date(triggerAt)));
    }

    public static void traceKeyguard(boolean showing) {
        if (!ENABLED) return;
        log("keyguard " + showing);
+6 −2
Original line number Diff line number Diff line
@@ -158,8 +158,12 @@ public class DozeUi implements DozeMachine.Part {
            return;
        }

        long delta = roundToNextMinute(System.currentTimeMillis()) - System.currentTimeMillis();
        mTimeTicker.schedule(delta, AlarmTimeout.MODE_IGNORE_IF_SCHEDULED);
        long time = System.currentTimeMillis();
        long delta = roundToNextMinute(time) - System.currentTimeMillis();
        boolean scheduled = mTimeTicker.schedule(delta, AlarmTimeout.MODE_IGNORE_IF_SCHEDULED);
        if (scheduled) {
            DozeLog.traceTimeTickScheduled(time, time + delta);
        }
        mLastTimeTickElapsed = SystemClock.elapsedRealtime();
    }

+11 −2
Original line number Diff line number Diff line
@@ -44,7 +44,15 @@ public class AlarmTimeout implements AlarmManager.OnAlarmListener {
        mHandler = handler;
    }

    public void schedule(long timeout, int mode) {
    /**
     * Schedules an alarm in {@code timeout} milliseconds in the future.
     *
     * @param timeout How long to wait from now.
     * @param mode {@link #MODE_CRASH_IF_SCHEDULED}, {@link #MODE_IGNORE_IF_SCHEDULED} or
     *             {@link #MODE_RESCHEDULE_IF_SCHEDULED}.
     * @return {@code true} when scheduled successfully, {@code false} otherwise.
     */
    public boolean schedule(long timeout, int mode) {
        switch (mode) {
            case MODE_CRASH_IF_SCHEDULED:
                if (mScheduled) {
@@ -53,7 +61,7 @@ public class AlarmTimeout implements AlarmManager.OnAlarmListener {
                break;
            case MODE_IGNORE_IF_SCHEDULED:
                if (mScheduled) {
                    return;
                    return false;
                }
                break;
            case MODE_RESCHEDULE_IF_SCHEDULED:
@@ -68,6 +76,7 @@ public class AlarmTimeout implements AlarmManager.OnAlarmListener {
        mAlarmManager.setExact(AlarmManager.ELAPSED_REALTIME_WAKEUP,
                SystemClock.elapsedRealtime() + timeout, mTag, this, mHandler);
        mScheduled = true;
        return true;
    }

    public boolean isScheduled() {