void DeviceSingleWindowEventController::didRemoveEventListener(LocalDOMWindow* window, const AtomicString& eventType)
{
    if (eventType != eventTypeName() || window->hasEventListeners(eventTypeName()))
        return;

    stopUpdating();
    m_hasEventListener = false;
}
Пример #2
0
void DeviceMotionController::didAddEventListener(
    LocalDOMWindow* window,
    const AtomicString& eventType) {
  if (eventType != eventTypeName())
    return;

  if (document().frame()) {
    String errorMessage;
    if (document().isSecureContext(errorMessage)) {
      UseCounter::count(document().frame(),
                        UseCounter::DeviceMotionSecureOrigin);
    } else {
      Deprecation::countDeprecation(document().frame(),
                                    UseCounter::DeviceMotionInsecureOrigin);
      HostsUsingFeatures::countAnyWorld(
          document(), HostsUsingFeatures::Feature::DeviceMotionInsecureHost);
      if (document().frame()->settings()->strictPowerfulFeatureRestrictions())
        return;
    }
  }

  if (!m_hasEventListener)
    Platform::current()->recordRapporURL("DeviceSensors.DeviceMotion",
                                         WebURL(document().url()));

  DeviceSingleWindowEventController::didAddEventListener(window, eventType);
}
void DeviceSingleWindowEventController::didAddEventListener(LocalDOMWindow* window, const AtomicString& eventType)
{
    if (eventType != eventTypeName())
        return;

    if (page() && page()->isPageVisible())
        startUpdating();

    m_hasEventListener = true;
}
void DeviceOrientationController::didAddEventListener(LocalDOMWindow* window, const AtomicString& eventType)
{
    if (eventType != eventTypeName())
        return;

    if (document().frame()) {
        String errorMessage;
        if (document().securityOrigin()->canAccessFeatureRequiringSecureOrigin(errorMessage)) {
            UseCounter::count(document().frame(), UseCounter::DeviceOrientationSecureOrigin);
        } else {
            UseCounter::count(document().frame(), UseCounter::DeviceOrientationInsecureOrigin);
            if (document().frame()->settings()->strictPowerfulFeatureRestrictions())
                return;
        }
    }

    DeviceSingleWindowEventController::didAddEventListener(window, eventType);
}
PassRefPtrWillBeRawPtr<Event> DeviceOrientationController::lastEvent() const
{
    return DeviceOrientationEvent::create(eventTypeName(), lastData());
}