hal/android/AndroidAlarm.cpp
author Mike Hommey <mh+mozilla@glandium.org>
Thu, 24 Mar 2016 18:55:05 +0900
changeset 328798 bd956b7718c96998ed80143b0f77a7f0a1f87281
parent 298884 b0b053cb93e554b0b0dc8060d8aa3e01c993b096
child 346045 684888aeee810cbf3ab28acdd4edb8e92d6cbc59
permissions -rw-r--r--
Bug 1259381 - Don't add --with-ccache in mozconfigs doing --disable-compile-environment or --enable-artifact-builds. r=chmanchester While moving the ccache flag, we're going to make it disappear when the compiler environment is not enabled, so adding --with-ccache will fail.

/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
/* This Source Code Form is subject to the terms of the Mozilla Public
 * License, v. 2.0. If a copy of the MPL was not distributed with this
 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */

#include "Hal.h"
#include "AndroidBridge.h"

#include "GeneratedJNINatives.h"

using namespace mozilla::hal;

namespace mozilla {

class AlarmReceiver : public widget::AlarmReceiver::Natives<AlarmReceiver>
{
private:
    AlarmReceiver();

public:
    static void NotifyAlarmFired() {
        nsCOMPtr<nsIRunnable> runnable = NS_NewRunnableFunction([=]() {
            hal::NotifyAlarmFired();
        });
        NS_DispatchToMainThread(runnable);
    }
};

namespace hal_impl {

bool
EnableAlarm()
{
    AlarmReceiver::Init();
    return true;
}

void
DisableAlarm()
{
    widget::GeckoAppShell::DisableAlarm();
}

bool
SetAlarm(int32_t aSeconds, int32_t aNanoseconds)
{
    return widget::GeckoAppShell::SetAlarm(aSeconds, aNanoseconds);
}

} // hal_impl
} // mozilla