| // Copyright 2022 The Chromium Authors |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| #ifndef CHROME_BROWSER_UI_IDLE_DIALOG_H_ |
| #define CHROME_BROWSER_UI_IDLE_DIALOG_H_ |
| |
| #include "base/callback.h" |
| #include "base/memory/weak_ptr.h" |
| #include "base/time/time.h" |
| #include "ui/views/widget/widget.h" |
| |
| // Idle timeout dialog. This is shown to users to inform them that Chrome will |
| // be closed by the IdleService, as dictated by the IdleProfileCloseTimeout |
| // policy. |
| class IdleDialog { |
| public: |
| IdleDialog() = delete; |
| IdleDialog(const IdleDialog&) = delete; |
| IdleDialog& operator=(const IdleDialog&) = delete; |
| |
| // Implemented in //chrome/browser/ui/views/idle_dialog_view.cc |
| static base::WeakPtr<views::Widget> Show( |
| base::TimeDelta dialog_duration, |
| base::TimeDelta idle_threshold, |
| base::RepeatingClosure on_close_by_user); |
| }; |
| |
| #endif // CHROME_BROWSER_UI_IDLE_DIALOG_H_ |