Home | History | Annotate | Download | only in device_light
      1 // Copyright 2014 The Chromium Authors. All rights reserved.
      2 // Use of this source code is governed by a BSD-style license that can be
      3 // found in the LICENSE file.
      4 
      5 #ifndef DeviceLightController_h
      6 #define DeviceLightController_h
      7 
      8 #include "core/dom/DocumentSupplementable.h"
      9 #include "core/frame/DeviceSingleWindowEventController.h"
     10 
     11 namespace WebCore {
     12 
     13 class LocalDOMWindow;
     14 class Event;
     15 
     16 class DeviceLightController FINAL : public NoBaseWillBeGarbageCollectedFinalized<DeviceLightController>, public DeviceSingleWindowEventController, public DocumentSupplement {
     17     WILL_BE_USING_GARBAGE_COLLECTED_MIXIN(DeviceLightController);
     18 public:
     19     virtual ~DeviceLightController();
     20 
     21     static const char* supplementName();
     22     static DeviceLightController& from(Document&);
     23 
     24 private:
     25     explicit DeviceLightController(Document&);
     26 
     27     // Inherited from DeviceEventControllerBase.
     28     virtual void registerWithDispatcher() OVERRIDE;
     29     virtual void unregisterWithDispatcher() OVERRIDE;
     30     virtual bool hasLastData() OVERRIDE;
     31 
     32     // Inherited from DeviceSingleWindowEventController.
     33     virtual PassRefPtrWillBeRawPtr<Event> lastEvent() const OVERRIDE;
     34     virtual const AtomicString& eventTypeName() const OVERRIDE;
     35     virtual bool isNullEvent(Event*) const OVERRIDE;
     36 };
     37 
     38 } // namespace WebCore
     39 
     40 #endif // DeviceLightController_h
     41