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

Unified Diff: ash/common/system/chromeos/session/logout_confirmation_controller.h

Issue 2732813002: chromeos: Move files in //ash/common to //ash, part 1 (Closed)
Patch Set: rebase Created 3 years, 9 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: ash/common/system/chromeos/session/logout_confirmation_controller.h
diff --git a/ash/common/system/chromeos/session/logout_confirmation_controller.h b/ash/common/system/chromeos/session/logout_confirmation_controller.h
deleted file mode 100644
index 8634bc03b654e1dbaecba702377d3554aa5b2691..0000000000000000000000000000000000000000
--- a/ash/common/system/chromeos/session/logout_confirmation_controller.h
+++ /dev/null
@@ -1,80 +0,0 @@
-// Copyright 2014 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-#ifndef ASH_COMMON_SYSTEM_CHROMEOS_SESSION_LOGOUT_CONFIRMATION_CONTROLLER_H_
-#define ASH_COMMON_SYSTEM_CHROMEOS_SESSION_LOGOUT_CONFIRMATION_CONTROLLER_H_
-
-#include <memory>
-
-#include "ash/ash_export.h"
-#include "ash/common/shell_observer.h"
-#include "ash/common/system/chromeos/session/last_window_closed_observer.h"
-#include "base/callback.h"
-#include "base/macros.h"
-#include "base/time/time.h"
-#include "base/timer/timer.h"
-
-namespace base {
-class TickClock;
-}
-
-namespace ash {
-
-class LogoutConfirmationDialog;
-
-// This class shows a dialog asking the user to confirm or deny logout and
-// terminates the session if the user either confirms or allows the countdown
-// shown in the dialog to expire.
-//
-// It is guaranteed that no more than one confirmation dialog will be visible at
-// any given time. If there are multiple requests to show a confirmation dialog
-// at the same time, the dialog whose countdown expires first is shown.
-//
-// In public sessions, asks the user to end the session when the last window is
-// closed.
-class ASH_EXPORT LogoutConfirmationController
- : public ShellObserver,
- public LastWindowClosedObserver {
- public:
- // The |logout_closure| must be safe to call as long as |this| is alive.
- explicit LogoutConfirmationController(const base::Closure& logout_closure);
- ~LogoutConfirmationController() override;
-
- base::TickClock* clock() const { return clock_.get(); }
-
- // Shows a LogoutConfirmationDialog. If a confirmation dialog is already being
- // shown, it is closed and a new one opened if |logout_time| is earlier than
- // the current dialog's |logout_time_|.
- void ConfirmLogout(base::TimeTicks logout_time);
-
- void SetClockForTesting(std::unique_ptr<base::TickClock> clock);
-
- // ShellObserver:
- void OnLockStateChanged(bool locked) override;
-
- // Called by the |dialog_| when the user confirms logout.
- void OnLogoutConfirmed();
-
- // Called by the |dialog_| when it is closed.
- void OnDialogClosed();
-
- LogoutConfirmationDialog* dialog_for_testing() const { return dialog_; }
-
- private:
- // LastWindowClosedObserver:
- void OnLastWindowClosed() override;
-
- std::unique_ptr<base::TickClock> clock_;
- base::Closure logout_closure_;
-
- base::TimeTicks logout_time_;
- LogoutConfirmationDialog* dialog_; // Owned by the Views hierarchy.
- base::Timer logout_timer_;
-
- DISALLOW_COPY_AND_ASSIGN(LogoutConfirmationController);
-};
-
-} // namespace ash
-
-#endif // ASH_COMMON_SYSTEM_CHROMEOS_SESSION_LOGOUT_CONFIRMATION_CONTROLLER_H_

Powered by Google App Engine
This is Rietveld 408576698