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

Unified Diff: chrome/browser/chromeos/night_light/night_light_client.h

Issue 2966873002: [Night Light] CL12: String changes and fix frequent requests. (Closed)
Patch Set: James comments Created 3 years, 6 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 side-by-side diff with in-line comments
Download patch
Index: chrome/browser/chromeos/night_light/night_light_client.h
diff --git a/chrome/browser/chromeos/night_light/night_light_client.h b/chrome/browser/chromeos/night_light/night_light_client.h
index 0f8580dfacd3c9e8766fd7e91f84d96ada9a8697..bdb7c4755d60b8d9faa31bf6cecd61aa585f8c9c 100644
--- a/chrome/browser/chromeos/night_light/night_light_client.h
+++ b/chrome/browser/chromeos/night_light/night_light_client.h
@@ -33,8 +33,16 @@ class NightLightClient
void OnScheduleTypeChanged(
ash::mojom::NightLightController::ScheduleType new_type) override;
+ const base::OneShotTimer& timer() const { return timer_; }
+
+ base::Time last_successful_geo_request_time() const {
+ return last_successful_geo_request_time_;
+ }
+
bool using_geoposition() const { return using_geoposition_; }
+ static base::TimeDelta GetNextRequestDelayAfterSuccessForTesting();
+
void SetNightLightControllerPtrForTesting(
ash::mojom::NightLightControllerPtr controller);
@@ -46,6 +54,9 @@ class NightLightClient
const base::TimeDelta elapsed);
private:
+ // Sends the most recent valid geoposition to NightLightController in ash.
+ void SendCurrentGeoposition();
+
void ScheduleNextRequest(base::TimeDelta delay);
// Virtual so that it can be overriden by a fake implementation in unit tests
@@ -63,6 +74,11 @@ class NightLightClient
base::OneShotTimer timer_;
+ // Last successful geoposition coordinates and its timestamp.
+ base::Time last_successful_geo_request_time_;
+ double latitude_ = 0.0;
+ double longitude_ = 0.0;
+
// True as long as the schedule type is set to "sunset to sunrise", which
// means this client will be retrieving the IP-based geoposition once per day.
bool using_geoposition_ = false;

Powered by Google App Engine
This is Rietveld 408576698