| OLD | NEW |
| (Empty) |
| 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | |
| 2 // Use of this source code is governed by a BSD-style license that can be | |
| 3 // found in the LICENSE file. | |
| 4 | |
| 5 #ifndef CHROME_BROWSER_CHROMEOS_LOGIN_UPDATE_VIEW_H_ | |
| 6 #define CHROME_BROWSER_CHROMEOS_LOGIN_UPDATE_VIEW_H_ | |
| 7 #pragma once | |
| 8 | |
| 9 #include "third_party/skia/include/core/SkColor.h" | |
| 10 #include "views/view.h" | |
| 11 | |
| 12 namespace views { | |
| 13 class Label; | |
| 14 class ProgressBar; | |
| 15 class Throbber; | |
| 16 } // namespace views | |
| 17 | |
| 18 namespace chromeos { | |
| 19 | |
| 20 class ScreenObserver; | |
| 21 | |
| 22 // View for the network selection/initial welcome screen. | |
| 23 class UpdateView : public views::View { | |
| 24 public: | |
| 25 explicit UpdateView(ScreenObserver* observer); | |
| 26 virtual ~UpdateView(); | |
| 27 | |
| 28 void Init(); | |
| 29 void Reset(); | |
| 30 void UpdateLocalizedStrings(); | |
| 31 | |
| 32 // Advances view's progress bar. Maximum progress is 100. | |
| 33 void AddProgress(int progress); | |
| 34 | |
| 35 // Sets the current value for the progress bar. Maximum progress is 100. | |
| 36 void SetProgress(int progress); | |
| 37 | |
| 38 // Shows label with instructions for user to do a manual reboot. | |
| 39 // Usually is not called since we rely on API that will reboot after update. | |
| 40 void ShowManualRebootInfo(); | |
| 41 | |
| 42 // Shows label for "Preparing updates" state. | |
| 43 void ShowPreparingUpdatesInfo(bool visible); | |
| 44 | |
| 45 // Whether curtain window with throbber and label in the center should | |
| 46 // be shown. | |
| 47 void ShowCurtain(bool show_curtain); | |
| 48 | |
| 49 // views::View implementation: | |
| 50 virtual void Layout(); | |
| 51 | |
| 52 private: | |
| 53 // Creates Label control and adds it as a child. | |
| 54 views::Label* InitLabel(SkColor background_color); | |
| 55 | |
| 56 // Updates visibility of the elements. | |
| 57 void UpdateVisibility(); | |
| 58 | |
| 59 // Keyboard accelerator to allow cancelling update by hitting escape. | |
| 60 views::Accelerator escape_accelerator_; | |
| 61 | |
| 62 // Dialog controls. | |
| 63 views::Label* installing_updates_label_; | |
| 64 views::Label* preparing_updates_label_; | |
| 65 views::Label* reboot_label_; | |
| 66 views::Label* manual_reboot_label_; | |
| 67 views::Label* escape_to_skip_label_; | |
| 68 views::ProgressBar* progress_bar_; | |
| 69 | |
| 70 // Curtain views. | |
| 71 views::Label* checking_label_; | |
| 72 views::Throbber* throbber_; | |
| 73 | |
| 74 // Show curtain view? | |
| 75 bool show_curtain_; | |
| 76 | |
| 77 // Show manual reboot label? | |
| 78 bool show_manual_reboot_label_; | |
| 79 | |
| 80 // Show preparing updates label? | |
| 81 bool show_preparing_updates_label_; | |
| 82 | |
| 83 // Notifications receiver. | |
| 84 chromeos::ScreenObserver* observer_; | |
| 85 | |
| 86 DISALLOW_COPY_AND_ASSIGN(UpdateView); | |
| 87 }; | |
| 88 | |
| 89 } // namespace chromeos | |
| 90 | |
| 91 #endif // CHROME_BROWSER_CHROMEOS_LOGIN_UPDATE_VIEW_H_ | |
| OLD | NEW |