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

Unified Diff: chrome/browser/chromeos/settings_contents_view.cc

Issue 231014: Add wifi menu button in status bar. (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: '' Created 11 years, 3 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
« no previous file with comments | « chrome/browser/chromeos/password_dialog_view.cc ('k') | chrome/browser/chromeos/status_area_view.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/browser/chromeos/settings_contents_view.cc
===================================================================
--- chrome/browser/chromeos/settings_contents_view.cc (revision 27164)
+++ chrome/browser/chromeos/settings_contents_view.cc (working copy)
@@ -12,19 +12,17 @@
#include "app/resource_bundle.h"
#include "base/basictypes.h"
#include "base/string_util.h"
+#include "chrome/browser/chromeos/password_dialog_view.h"
#include "chrome/common/pref_member.h"
#include "chrome/common/pref_names.h"
#include "grit/chromium_strings.h"
#include "grit/generated_resources.h"
-#include "grit/locale_settings.h"
#include "views/background.h"
#include "views/controls/button/checkbox.h"
#include "views/controls/combobox/combobox.h"
#include "views/controls/slider/slider.h"
-#include "views/controls/textfield/textfield.h"
#include "views/grid_layout.h"
#include "views/standard_layout.h"
-#include "views/window/dialog_delegate.h"
#include "views/window/window.h"
using views::GridLayout;
@@ -126,7 +124,8 @@
// Network section for wifi settings
class NetworkSection : public OptionsPageView,
- public views::Combobox::Listener {
+ public views::Combobox::Listener,
+ public PasswordDialogDelegate {
public:
explicit NetworkSection(Profile* profile);
virtual ~NetworkSection() {}
@@ -136,8 +135,10 @@
int prev_index,
int new_index);
- bool OnPasswordWindowCancel();
- bool OnPasswordWindowAccept(const string16& password);
+ // PasswordDialogDelegate implementation.
+ virtual bool OnPasswordDialogCancel();
+ virtual bool OnPasswordDialogAccept(const string16& password);
+
bool ConnectToWifi(const string16& ssid, const string16& password);
protected:
@@ -162,101 +163,6 @@
};
////////////////////////////////////////////////////////////////////////////////
-// PasswordWindowView
-
-static const int kDialogPadding = 7;
-
-// A view for showing a password textfield
-class PasswordWindowView : public views::View,
- public views::DialogDelegate {
- public:
- PasswordWindowView(NetworkSection* network_delegate, Profile* profile);
- views::Window* container() const { return container_; }
- void set_container(views::Window* container) {
- container_ = container;
- }
-
- // views::DialogDelegate methods.
- virtual bool Cancel();
- virtual bool Accept();
- virtual std::wstring GetWindowTitle() const;
-
- // views::WindowDelegate method.
- virtual bool IsModal() const { return true; }
- virtual views::View* GetContentsView() { return this; }
-
- // views::View overrides.
- virtual void Layout();
- virtual gfx::Size GetPreferredSize();
-
- protected:
- virtual void ViewHierarchyChanged(bool is_add, views::View* parent,
- views::View* child);
-
- private:
- void Init();
-
- // The Options dialog window.
- views::Window* container_;
-
- // Used for Call back to NetworkSection that password has been entered.
- NetworkSection* network_delegate_;
-
- // Combobox and its corresponding model.
- views::Textfield* password_textfield_;
-
- DISALLOW_COPY_AND_ASSIGN(PasswordWindowView);
-};
-
-PasswordWindowView::PasswordWindowView(
- NetworkSection* network_delegate,
- Profile* profile)
- : network_delegate_(network_delegate),
- password_textfield_(NULL) {
- Init();
-}
-
-std::wstring PasswordWindowView::GetWindowTitle() const {
- return l10n_util::GetString(IDS_OPTIONS_SETTINGS_SECTION_TITLE_PASSWORD);
-}
-
-bool PasswordWindowView::Cancel() {
- return network_delegate_->OnPasswordWindowCancel();
-}
-
-bool PasswordWindowView::Accept() {
- // TODO(chocobo): we should not need to call SyncText ourself here.
- password_textfield_->SyncText();
- return network_delegate_->OnPasswordWindowAccept(password_textfield_->text());
-}
-
-void PasswordWindowView::Layout() {
- gfx::Size sz = password_textfield_->GetPreferredSize();
- password_textfield_->SetBounds(kDialogPadding, kDialogPadding,
- width() - 2*kDialogPadding,
- sz.height());
-}
-
-gfx::Size PasswordWindowView::GetPreferredSize() {
- // TODO(chocobo): Create our own localized content size once the UI is done.
- return gfx::Size(views::Window::GetLocalizedContentsSize(
- IDS_ABOUT_DIALOG_WIDTH_CHARS,
- IDS_ABOUT_DIALOG_MINIMUM_HEIGHT_LINES));
-}
-
-void PasswordWindowView::ViewHierarchyChanged(bool is_add,
- views::View* parent,
- views::View* child) {
- if (is_add && child == this)
- Init();
-}
-
-void PasswordWindowView::Init() {
- password_textfield_ = new views::Textfield(views::Textfield::STYLE_PASSWORD);
- AddChildView(password_textfield_);
-}
-
-////////////////////////////////////////////////////////////////////////////////
// NetworkSection
NetworkSection::NetworkSection(Profile* profile)
@@ -279,7 +185,8 @@
views::Window* window = views::Window::CreateChromeWindow(
NULL,
gfx::Rect(),
- new PasswordWindowView(this, profile()));
+ new PasswordDialogView(this));
+ window->SetIsAlwaysOnTop(true);
window->Show();
} else {
ConnectToWifi(ssid, string16());
@@ -287,13 +194,13 @@
}
}
-bool NetworkSection::OnPasswordWindowCancel() {
+bool NetworkSection::OnPasswordDialogCancel() {
// Change combobox to previous setting
wifi_ssid_combobox_->SetSelectedItem(last_selected_wifi_ssid_index_);
return true;
}
-bool NetworkSection::OnPasswordWindowAccept(const string16& password) {
+bool NetworkSection::OnPasswordDialogAccept(const string16& password) {
// Try connecting to wifi
return ConnectToWifi(wifi_ssid_model_.GetSSIDAt(
wifi_ssid_combobox_->selected_item()), password);
« no previous file with comments | « chrome/browser/chromeos/password_dialog_view.cc ('k') | chrome/browser/chromeos/status_area_view.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698