OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef CHROME_BROWSER_CHROMEOS_LOGIN_SCREENS_UPDATE_SCREEN_H_ | 5 #ifndef CHROME_BROWSER_CHROMEOS_LOGIN_SCREENS_UPDATE_SCREEN_H_ |
6 #define CHROME_BROWSER_CHROMEOS_LOGIN_SCREENS_UPDATE_SCREEN_H_ | 6 #define CHROME_BROWSER_CHROMEOS_LOGIN_SCREENS_UPDATE_SCREEN_H_ |
7 | 7 |
8 #include <set> | 8 #include <set> |
9 | 9 |
10 #include "base/callback.h" | 10 #include "base/callback.h" |
(...skipping 61 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
72 | 72 |
73 // Skip update UI, usually used only in debug builds/tests. | 73 // Skip update UI, usually used only in debug builds/tests. |
74 void CancelUpdate(); | 74 void CancelUpdate(); |
75 | 75 |
76 base::OneShotTimer& GetErrorMessageTimerForTesting(); | 76 base::OneShotTimer& GetErrorMessageTimerForTesting(); |
77 | 77 |
78 private: | 78 private: |
79 FRIEND_TEST_ALL_PREFIXES(UpdateScreenTest, TestBasic); | 79 FRIEND_TEST_ALL_PREFIXES(UpdateScreenTest, TestBasic); |
80 FRIEND_TEST_ALL_PREFIXES(UpdateScreenTest, TestUpdateAvailable); | 80 FRIEND_TEST_ALL_PREFIXES(UpdateScreenTest, TestUpdateAvailable); |
81 FRIEND_TEST_ALL_PREFIXES(UpdateScreenTest, TestAPReselection); | 81 FRIEND_TEST_ALL_PREFIXES(UpdateScreenTest, TestAPReselection); |
| 82 friend class UpdateScreenUnitTest; |
82 | 83 |
83 enum class State { | 84 enum class State { |
84 STATE_IDLE = 0, | 85 STATE_IDLE = 0, |
85 STATE_FIRST_PORTAL_CHECK, | 86 STATE_FIRST_PORTAL_CHECK, |
86 STATE_UPDATE, | 87 STATE_UPDATE, |
87 STATE_ERROR | 88 STATE_ERROR |
88 }; | 89 }; |
89 | 90 |
90 // BaseScreen: | 91 // BaseScreen: |
91 void Show() override; | 92 void Show() override; |
(...skipping 26 matching lines...) Expand all Loading... |
118 void HideErrorMessage(); | 119 void HideErrorMessage(); |
119 void UpdateErrorMessage( | 120 void UpdateErrorMessage( |
120 const NetworkState* network, | 121 const NetworkState* network, |
121 const NetworkPortalDetector::CaptivePortalStatus status); | 122 const NetworkPortalDetector::CaptivePortalStatus status); |
122 | 123 |
123 void DelayErrorMessage(); | 124 void DelayErrorMessage(); |
124 | 125 |
125 // The user requested an attempt to connect to the network should be made. | 126 // The user requested an attempt to connect to the network should be made. |
126 void OnConnectRequested(); | 127 void OnConnectRequested(); |
127 | 128 |
| 129 // Records the fact that we performed an update check but do not yet |
| 130 // know if this update check is going to result in an update. |
| 131 void RecordUpdateCheckWithNoUpdateYet(); |
| 132 |
| 133 // Records the fact that we found an update through the update check |
| 134 // we just did. |
| 135 void RecordUpdateCheckResultingInUpdate(); |
| 136 |
| 137 // Returns true if we should check for an update. |
| 138 bool ShouldCheckForUpdate(); |
| 139 |
128 // Timer for the interval to wait for the reboot. | 140 // Timer for the interval to wait for the reboot. |
129 // If reboot didn't happen - ask user to reboot manually. | 141 // If reboot didn't happen - ask user to reboot manually. |
130 base::OneShotTimer reboot_timer_; | 142 base::OneShotTimer reboot_timer_; |
131 | 143 |
132 // Returns a static InstanceSet. | 144 // Returns a static InstanceSet. |
133 // TODO(jdufault): There should only ever be one instance of this class. | 145 // TODO(jdufault): There should only ever be one instance of this class. |
134 // Remove support for supporting multiple instances. See crbug.com/672142. | 146 // Remove support for supporting multiple instances. See crbug.com/672142. |
135 typedef std::set<UpdateScreen*> InstanceSet; | 147 typedef std::set<UpdateScreen*> InstanceSet; |
136 static InstanceSet& GetInstanceSet(); | 148 static InstanceSet& GetInstanceSet(); |
137 | 149 |
(...skipping 51 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
189 ErrorScreen::ConnectRequestCallbackSubscription connect_request_subscription_; | 201 ErrorScreen::ConnectRequestCallbackSubscription connect_request_subscription_; |
190 | 202 |
191 base::WeakPtrFactory<UpdateScreen> weak_factory_; | 203 base::WeakPtrFactory<UpdateScreen> weak_factory_; |
192 | 204 |
193 DISALLOW_COPY_AND_ASSIGN(UpdateScreen); | 205 DISALLOW_COPY_AND_ASSIGN(UpdateScreen); |
194 }; | 206 }; |
195 | 207 |
196 } // namespace chromeos | 208 } // namespace chromeos |
197 | 209 |
198 #endif // CHROME_BROWSER_CHROMEOS_LOGIN_SCREENS_UPDATE_SCREEN_H_ | 210 #endif // CHROME_BROWSER_CHROMEOS_LOGIN_SCREENS_UPDATE_SCREEN_H_ |
OLD | NEW |