| 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;
|
|
|