void DeviceSensorEventController::fireDeviceEvent(Timer<DeviceSensorEventController>* timer)
{
    ASSERT_UNUSED(timer, timer == &m_timer);
    ASSERT(hasLastData());

    m_timer.stop();
    dispatchDeviceEvent(getLastEvent());
}
void DeviceOrientationController::didChangeDeviceOrientation(DeviceOrientationData* deviceOrientationData)
{
    dispatchDeviceEvent(DeviceOrientationEvent::create(EventTypeNames::deviceorientation, deviceOrientationData));
}
void DeviceSingleWindowEventController::didUpdateData()
{
    dispatchDeviceEvent(lastEvent());
}
void NewDeviceOrientationController::didChangeDeviceOrientation(DeviceOrientationData* deviceOrientationData)
{
    dispatchDeviceEvent(DeviceOrientationEvent::create(eventNames().deviceorientationEvent, deviceOrientationData));
}
void DeviceProximityController::didChangeDeviceProximity(const double value, const double min, const double max)
{
    dispatchDeviceEvent(DeviceProximityEvent::create(eventNames().webkitdeviceproximityEvent, value, min, max));
}
void DeviceMotionController::didChangeDeviceMotion(DeviceMotionData* deviceMotionData)
{
    dispatchDeviceEvent(DeviceMotionEvent::create(eventNames().devicemotionEvent, deviceMotionData));
}
void DeviceOrientationController::didUpdateData()
{
    if (m_overrideOrientationData)
        return;
    dispatchDeviceEvent(lastEvent());
}
void DeviceOrientationController::setOverride(DeviceOrientationData* deviceOrientationData)
{
    ASSERT(deviceOrientationData);
    m_overrideOrientationData = deviceOrientationData;
    dispatchDeviceEvent(lastEvent());
}