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

Side by Side Diff: chrome/browser/chromeos/login/views_network_screen_actor.cc

Issue 8436002: [cros] Remove Views implementation for login/OOBE. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: merge Created 9 years, 1 month 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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
(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 #include "chrome/browser/chromeos/login/views_network_screen_actor.h"
6
7 #include "base/logging.h"
8 #include "base/string16.h"
9 #include "base/utf_string_conversions.h"
10 #include "chrome/browser/chromeos/cros/cros_library.h"
11 #include "chrome/browser/chromeos/login/background_view.h"
12 #include "chrome/browser/chromeos/login/helper.h"
13 #include "chrome/browser/chromeos/login/help_app_launcher.h"
14 #include "chrome/browser/chromeos/login/login_utils.h"
15 #include "chrome/browser/chromeos/login/network_screen_actor.h"
16 #include "chrome/browser/chromeos/login/network_selection_view.h"
17 #include "chrome/browser/chromeos/login/screen_observer.h"
18 #include "chrome/browser/chromeos/login/wizard_screen.h"
19 #include "grit/chromium_strings.h"
20 #include "grit/generated_resources.h"
21 #include "grit/theme_resources.h"
22 #include "ui/base/l10n/l10n_util.h"
23 #include "ui/base/resource/resource_bundle.h"
24
25 namespace {
26
27 // Considering 10px shadow from each side & welcome title height at 30px.
28 const int kWelcomeScreenWidth = 580;
29 const int kWelcomeScreenHeight = 335;
30
31 } // namespace
32
33 namespace chromeos {
34
35 ///////////////////////////////////////////////////////////////////////////////
36 // ViewsNetworkScreenActor, public:
37
38 ViewsNetworkScreenActor::ViewsNetworkScreenActor(
39 ViewScreenDelegate* delegate)
40 : ViewScreen<NetworkSelectionView>(
41 delegate,
42 kWelcomeScreenWidth,
43 kWelcomeScreenHeight),
44 bubble_(NULL),
45 screen_(NULL) {
46 }
47
48 ViewsNetworkScreenActor::~ViewsNetworkScreenActor() {
49 ClearErrors();
50 }
51
52 void ViewsNetworkScreenActor::SetDelegate(Delegate* screen) {
53 screen_ = screen;
54 }
55
56 bool ViewsNetworkScreenActor::IsErrorShown() const {
57 return bubble_ != NULL;
58 }
59
60 bool ViewsNetworkScreenActor::IsContinueEnabled() const {
61 DCHECK(view());
62 if (view())
63 return view()->IsContinueEnabled();
64 return false;
65 }
66
67 bool ViewsNetworkScreenActor::IsConnecting() const {
68 DCHECK(view());
69 if (view())
70 return view()->IsConnecting();
71 return false;
72 }
73
74 ////////////////////////////////////////////////////////////////////////////////
75 // ViewsNetworkScreenActor, NetworkScreenActor implementation:
76 void ViewsNetworkScreenActor::PrepareToShow() {
77 ViewScreen<NetworkSelectionView>::PrepareToShow();
78 }
79
80 void ViewsNetworkScreenActor::Show() {
81 ViewScreen<NetworkSelectionView>::Show();
82 }
83
84 void ViewsNetworkScreenActor::Hide() {
85 ViewScreen<NetworkSelectionView>::Hide();
86 }
87
88 gfx::Size ViewsNetworkScreenActor::GetScreenSize() const {
89 return ViewScreen<NetworkSelectionView>::GetScreenSize();
90 }
91
92 void ViewsNetworkScreenActor::ShowError(const string16& message) {
93 if (!view()->is_dialog_open() &&
94 !(help_app_.get() && help_app_->is_open())) {
95 ClearErrors();
96 views::View* network_control = view()->GetNetworkControlView();
97 bubble_ = MessageBubble::Show(
98 network_control->GetWidget(),
99 network_control->GetScreenBounds(),
100 views::BubbleBorder::LEFT_TOP,
101 ResourceBundle::GetSharedInstance().GetBitmapNamed(IDR_WARNING),
102 UTF16ToWide(message),
103 UTF16ToWide(l10n_util::GetStringUTF16(IDS_LEARN_MORE)),
104 this);
105 network_control->RequestFocus();
106 }
107 }
108
109 void ViewsNetworkScreenActor::ClearErrors() {
110 // bubble_ will be set to NULL in callback.
111 if (bubble_)
112 bubble_->Close();
113 }
114
115 void ViewsNetworkScreenActor::ShowConnectingStatus(
116 bool connecting,
117 const string16& network_id) {
118 DCHECK(view());
119 if (view())
120 view()->ShowConnectingStatus(connecting, network_id);
121 }
122
123 void ViewsNetworkScreenActor::EnableContinue(bool enabled) {
124 DCHECK(view());
125 if (view())
126 view()->EnableContinue(enabled);
127 }
128
129 ///////////////////////////////////////////////////////////////////////////////
130 // views::ButtonListener implementation:
131
132 void ViewsNetworkScreenActor::ButtonPressed(views::Button* sender,
133 const views::Event& event) {
134 ClearErrors();
135 screen_->OnContinuePressed();
136 }
137
138 ///////////////////////////////////////////////////////////////////////////////
139 // ViewsNetworkScreenActor, views::BubbleDelegate implementation:
140
141 void ViewsNetworkScreenActor::BubbleClosing(Bubble* bubble,
142 bool closed_by_escape) {
143 bubble_ = NULL;
144 }
145
146 bool ViewsNetworkScreenActor::CloseOnEscape() {
147 return true;
148 }
149
150 bool ViewsNetworkScreenActor::FadeInOnShow() {
151 return false;
152 }
153
154 void ViewsNetworkScreenActor::OnLinkActivated(size_t index) {
155 ClearErrors();
156 if (!help_app_.get()) {
157 help_app_ = new HelpAppLauncher(
158 LoginUtils::Get()->GetBackgroundView()->GetNativeWindow());
159 }
160 help_app_->ShowHelpTopic(HelpAppLauncher::HELP_CONNECTIVITY);
161 }
162
163 ///////////////////////////////////////////////////////////////////////////////
164 // ViewsNetworkScreenActor, ViewScreen implementation:
165 void ViewsNetworkScreenActor::CreateView() {
166 language_switch_menu_.InitLanguageMenu();
167 ViewScreen<NetworkSelectionView>::CreateView();
168 }
169
170 NetworkSelectionView* ViewsNetworkScreenActor::AllocateView() {
171 return new NetworkSelectionView(this);
172 }
173
174 } // namespace chromeos
OLDNEW
« no previous file with comments | « chrome/browser/chromeos/login/views_network_screen_actor.h ('k') | chrome/browser/chromeos/login/views_oobe_display.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698