Index: Source/modules/geolocation/GeolocationController.h |
diff --git a/Source/modules/geolocation/GeolocationController.h b/Source/modules/geolocation/GeolocationController.h |
index abfce42669383e3d95ae4e8262525f60877450a0..574c8b13ba0e574f1d3820f29a070450560fb37d 100644 |
--- a/Source/modules/geolocation/GeolocationController.h |
+++ b/Source/modules/geolocation/GeolocationController.h |
@@ -40,12 +40,13 @@ class GeolocationClient; |
class GeolocationError; |
class GeolocationPosition; |
-class GeolocationController FINAL : public Supplement<LocalFrame>, public PageLifecycleObserver { |
+class GeolocationController FINAL : public NoBaseWillBeGarbageCollectedFinalized<GeolocationController>, public WillBeHeapSupplement<LocalFrame>, public PageLifecycleObserver { |
+ WILL_BE_USING_GARBAGE_COLLECTED_MIXIN(GeolocationController); |
WTF_MAKE_NONCOPYABLE(GeolocationController); |
public: |
virtual ~GeolocationController(); |
- static PassOwnPtr<GeolocationController> create(LocalFrame&, GeolocationClient*); |
+ static PassOwnPtrWillBeRawPtr<GeolocationController> create(LocalFrame&, GeolocationClient*); |
void addObserver(Geolocation*, bool enableHighAccuracy); |
void removeObserver(Geolocation*); |
@@ -66,7 +67,9 @@ public: |
virtual void pageVisibilityChanged() OVERRIDE; |
static const char* supplementName(); |
- static GeolocationController* from(LocalFrame* frame) { return static_cast<GeolocationController*>(Supplement<LocalFrame>::from(frame, supplementName())); } |
+ static GeolocationController* from(LocalFrame* frame) { return static_cast<GeolocationController*>(WillBeHeapSupplement<LocalFrame>::from(frame, supplementName())); } |
+ |
+ virtual void trace(Visitor*) OVERRIDE; |
virtual void willBeDestroyed() OVERRIDE; |
@@ -79,8 +82,8 @@ private: |
GeolocationClient* m_client; |
bool m_hasClientForTest; |
- Persistent<GeolocationPosition> m_lastPosition; |
- typedef PersistentHeapHashSet<Member<Geolocation> > ObserversSet; |
+ PersistentWillBeMember<GeolocationPosition> m_lastPosition; |
haraken
2014/06/10 12:04:34
This should be RefPtrWillBeMember.
zerny-chromium
2014/06/10 12:12:51
Are Geolocation and GeolocationPosition no longer
|
+ typedef PersistentHeapHashSetWillBeHeapHashSet<Member<Geolocation> > ObserversSet; |
haraken
2014/06/10 12:04:34
This should be WillBeHeapHashSet.
|
// All observers; both those requesting high accuracy and those not. |
ObserversSet m_observers; |
ObserversSet m_highAccuracyObservers; |