Chromium Code Reviews| 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; |