diff options
Diffstat (limited to 'chromium/content/browser/idle/idle_manager_impl.cc')
-rw-r--r-- | chromium/content/browser/idle/idle_manager_impl.cc | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/chromium/content/browser/idle/idle_manager_impl.cc b/chromium/content/browser/idle/idle_manager_impl.cc index cdb167b0713..20d52571e3f 100644 --- a/chromium/content/browser/idle/idle_manager_impl.cc +++ b/chromium/content/browser/idle/idle_manager_impl.cc @@ -86,6 +86,18 @@ void IdleManagerImpl::CreateService( receivers_.Add(this, std::move(receiver), origin); } +void IdleManagerImpl::SetIdleOverride( + blink::mojom::UserIdleState user_state, + blink::mojom::ScreenIdleState screen_state) { + state_override_ = IdleState::New(user_state, screen_state); + UpdateIdleState(); +} + +void IdleManagerImpl::ClearIdleOverride() { + state_override_ = nullptr; + UpdateIdleState(); +} + void IdleManagerImpl::AddMonitor( base::TimeDelta threshold, mojo::PendingRemote<blink::mojom::IdleMonitor> monitor_remote, @@ -167,6 +179,9 @@ void IdleManagerImpl::StopPolling() { blink::mojom::IdleStatePtr IdleManagerImpl::CheckIdleState( base::TimeDelta threshold) { + if (state_override_) { + return state_override_->Clone(); + } base::TimeDelta idle_time = idle_time_provider_->CalculateIdleTime(); bool locked = idle_time_provider_->CheckIdleStateIsLocked(); |