Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(585)

Side by Side Diff: third_party/WebKit/Source/modules/geolocation/Geolocation.h

Issue 2809783004: Revert of Geolocation: rename Geoposition to Position to follow Spec (Closed)
Patch Set: Created 3 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2008, 2009, 2010, 2011 Apple Inc. All Rights Reserved. 2 * Copyright (C) 2008, 2009, 2010, 2011 Apple Inc. All Rights Reserved.
3 * Copyright 2010, The Android Open Source Project 3 * Copyright 2010, The Android Open Source Project
4 * 4 *
5 * Redistribution and use in source and binary forms, with or without 5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions 6 * modification, are permitted provided that the following conditions
7 * are met: 7 * are met:
8 * 1. Redistributions of source code must retain the above copyright 8 * 1. Redistributions of source code must retain the above copyright
9 * notice, this list of conditions and the following disclaimer. 9 * notice, this list of conditions and the following disclaimer.
10 * 2. Redistributions in binary form must reproduce the above copyright 10 * 2. Redistributions in binary form must reproduce the above copyright
(...skipping 16 matching lines...) Expand all
27 #ifndef Geolocation_h 27 #ifndef Geolocation_h
28 #define Geolocation_h 28 #define Geolocation_h
29 29
30 #include "bindings/core/v8/ScriptWrappable.h" 30 #include "bindings/core/v8/ScriptWrappable.h"
31 #include "core/dom/ContextLifecycleObserver.h" 31 #include "core/dom/ContextLifecycleObserver.h"
32 #include "core/page/PageVisibilityObserver.h" 32 #include "core/page/PageVisibilityObserver.h"
33 #include "device/geolocation/public/interfaces/geolocation.mojom-blink.h" 33 #include "device/geolocation/public/interfaces/geolocation.mojom-blink.h"
34 #include "modules/ModulesExport.h" 34 #include "modules/ModulesExport.h"
35 #include "modules/geolocation/GeoNotifier.h" 35 #include "modules/geolocation/GeoNotifier.h"
36 #include "modules/geolocation/GeolocationWatchers.h" 36 #include "modules/geolocation/GeolocationWatchers.h"
37 #include "modules/geolocation/Position.h" 37 #include "modules/geolocation/Geoposition.h"
38 #include "modules/geolocation/PositionCallback.h" 38 #include "modules/geolocation/PositionCallback.h"
39 #include "modules/geolocation/PositionError.h" 39 #include "modules/geolocation/PositionError.h"
40 #include "modules/geolocation/PositionErrorCallback.h" 40 #include "modules/geolocation/PositionErrorCallback.h"
41 #include "modules/geolocation/PositionOptions.h" 41 #include "modules/geolocation/PositionOptions.h"
42 #include "platform/Timer.h" 42 #include "platform/Timer.h"
43 #include "platform/heap/Handle.h" 43 #include "platform/heap/Handle.h"
44 44
45 #include "third_party/WebKit/public/platform/modules/permissions/permission.mojo m-blink.h" 45 #include "third_party/WebKit/public/platform/modules/permissions/permission.mojo m-blink.h"
46 #include "third_party/WebKit/public/platform/modules/permissions/permission_stat us.mojom-blink.h" 46 #include "third_party/WebKit/public/platform/modules/permissions/permission_stat us.mojom-blink.h"
47 47
(...skipping 65 matching lines...) Expand 10 before | Expand all | Expand 10 after
113 explicit Geolocation(ExecutionContext*); 113 explicit Geolocation(ExecutionContext*);
114 114
115 typedef HeapVector<Member<GeoNotifier>> GeoNotifierVector; 115 typedef HeapVector<Member<GeoNotifier>> GeoNotifierVector;
116 typedef HeapHashSet<Member<GeoNotifier>> GeoNotifierSet; 116 typedef HeapHashSet<Member<GeoNotifier>> GeoNotifierSet;
117 117
118 bool HasListeners() const { 118 bool HasListeners() const {
119 return !one_shots_.IsEmpty() || !watchers_.IsEmpty(); 119 return !one_shots_.IsEmpty() || !watchers_.IsEmpty();
120 } 120 }
121 121
122 void SendError(GeoNotifierVector&, PositionError*); 122 void SendError(GeoNotifierVector&, PositionError*);
123 void SendPosition(GeoNotifierVector&, Position*); 123 void SendPosition(GeoNotifierVector&, Geoposition*);
124 124
125 // Removes notifiers that use a cached position from |notifiers| and 125 // Removes notifiers that use a cached position from |notifiers| and
126 // if |cached| is not null they are added to it. 126 // if |cached| is not null they are added to it.
127 static void ExtractNotifiersWithCachedPosition(GeoNotifierVector& notifiers, 127 static void ExtractNotifiersWithCachedPosition(GeoNotifierVector& notifiers,
128 GeoNotifierVector* cached); 128 GeoNotifierVector* cached);
129 129
130 // Copies notifiers from |src| vector to |dest| set. 130 // Copies notifiers from |src| vector to |dest| set.
131 static void CopyToSet(const GeoNotifierVector& src, GeoNotifierSet& dest); 131 static void CopyToSet(const GeoNotifierVector& src, GeoNotifierSet& dest);
132 132
133 static void StopTimer(GeoNotifierVector&); 133 static void StopTimer(GeoNotifierVector&);
(...skipping 46 matching lines...) Expand 10 before | Expand all | Expand 10 after
180 // granted then the notifier's timers are started. Otherwise, a fatal error 180 // granted then the notifier's timers are started. Otherwise, a fatal error
181 // is set on them. 181 // is set on them.
182 void OnGeolocationPermissionUpdated(mojom::blink::PermissionStatus); 182 void OnGeolocationPermissionUpdated(mojom::blink::PermissionStatus);
183 183
184 void OnGeolocationConnectionError(); 184 void OnGeolocationConnectionError();
185 void OnPermissionConnectionError(); 185 void OnPermissionConnectionError();
186 186
187 GeoNotifierSet one_shots_; 187 GeoNotifierSet one_shots_;
188 GeolocationWatchers watchers_; 188 GeolocationWatchers watchers_;
189 GeoNotifierSet pending_for_permission_notifiers_; 189 GeoNotifierSet pending_for_permission_notifiers_;
190 Member<Position> last_position_; 190 Member<Geoposition> last_position_;
191 191
192 // States of Geolocation permission as granted by the embedder. Unknown 192 // States of Geolocation permission as granted by the embedder. Unknown
193 // means that the embedder still has to be asked for the current permission 193 // means that the embedder still has to be asked for the current permission
194 // level; Requested means that the user has yet to make a decision. 194 // level; Requested means that the user has yet to make a decision.
195 enum Permission { 195 enum Permission {
196 kPermissionUnknown, 196 kPermissionUnknown,
197 kPermissionRequested, 197 kPermissionRequested,
198 kPermissionAllowed, 198 kPermissionAllowed,
199 kPermissionDenied 199 kPermissionDenied
200 }; 200 };
201 201
202 Permission geolocation_permission_; 202 Permission geolocation_permission_;
203 device::mojom::blink::GeolocationServicePtr geolocation_service_; 203 device::mojom::blink::GeolocationServicePtr geolocation_service_;
204 bool enable_high_accuracy_ = false; 204 bool enable_high_accuracy_ = false;
205 mojom::blink::PermissionServicePtr permission_service_; 205 mojom::blink::PermissionServicePtr permission_service_;
206 206
207 // Whether a GeoNotifier is waiting for a position update. 207 // Whether a GeoNotifier is waiting for a position update.
208 bool updating_ = false; 208 bool updating_ = false;
209 209
210 // Set to true when m_geolocationService is disconnected. This is used to 210 // Set to true when m_geolocationService is disconnected. This is used to
211 // detect when m_geolocationService is disconnected and reconnected while 211 // detect when m_geolocationService is disconnected and reconnected while
212 // running callbacks in response to a call to onPositionUpdated(). 212 // running callbacks in response to a call to onPositionUpdated().
213 bool disconnected_geolocation_service_ = false; 213 bool disconnected_geolocation_service_ = false;
214 }; 214 };
215 215
216 } // namespace blink 216 } // namespace blink
217 217
218 #endif // Geolocation_h 218 #endif // Geolocation_h
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698