| Index: chrome/browser/chromeos/options/internet_page_view.cc
|
| diff --git a/chrome/browser/chromeos/options/internet_page_view.cc b/chrome/browser/chromeos/options/internet_page_view.cc
|
| deleted file mode 100644
|
| index 399caa3356115f08faf313bad75ab8f328deaea9..0000000000000000000000000000000000000000
|
| --- a/chrome/browser/chromeos/options/internet_page_view.cc
|
| +++ /dev/null
|
| @@ -1,597 +0,0 @@
|
| -// Copyright (c) 2011 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.
|
| -
|
| -#include "chrome/browser/chromeos/options/internet_page_view.h"
|
| -
|
| -#include <string>
|
| -
|
| -#include "base/string_util.h"
|
| -#include "base/utf_string_conversions.h"
|
| -#include "chrome/browser/chromeos/cros/cros_library.h"
|
| -#include "chrome/browser/chromeos/options/network_config_view.h"
|
| -#include "chrome/browser/chromeos/options/options_window_view.h"
|
| -#include "chrome/browser/chromeos/status/network_menu.h"
|
| -#include "chrome/browser/ui/views/window.h"
|
| -#include "grit/generated_resources.h"
|
| -#include "grit/theme_resources.h"
|
| -#include "ui/base/l10n/l10n_util.h"
|
| -#include "ui/base/resource/resource_bundle.h"
|
| -#include "views/controls/button/native_button.h"
|
| -#include "views/controls/combobox/combobox.h"
|
| -#include "views/controls/image_view.h"
|
| -#include "views/controls/scroll_view.h"
|
| -#include "views/layout/layout_constants.h"
|
| -#include "views/widget/widget.h"
|
| -#include "views/window/window.h"
|
| -
|
| -namespace chromeos {
|
| -
|
| -////////////////////////////////////////////////////////////////////////////////
|
| -// NetworkSection
|
| -
|
| -class NetworkSection : public SettingsPageSection,
|
| - public views::ButtonListener {
|
| - public:
|
| - NetworkSection(InternetPageContentView* parent, Profile* profile,
|
| - int title_msg_id);
|
| - virtual ~NetworkSection() {}
|
| -
|
| - // Overriden from views::Button::ButtonListener:
|
| - virtual void ButtonPressed(views::Button* sender, const views::Event& event);
|
| -
|
| - void RefreshContents();
|
| -
|
| - protected:
|
| - enum ButtonFlags {
|
| - OPTIONS_BUTTON = 1 << 0,
|
| - CONNECT_BUTTON = 1 << 1,
|
| - DISCONNECT_BUTTON = 1 << 2,
|
| - FORGET_BUTTON = 1 << 3,
|
| - };
|
| -
|
| - // SettingsPageSection overrides:
|
| - virtual void InitContents(GridLayout* layout);
|
| -
|
| - // Subclasses will initialize themselves in this method.
|
| - virtual void InitSection() = 0;
|
| -
|
| - // This adds a row for a network.
|
| - // |id| is passed back in the ButtonClicked method.
|
| - // |icon|, |name|, |bold_name|, and |status| are displayed in the row.
|
| - // |button_flags| is an OR of ButtonFlags that should be displayed.
|
| - void AddNetwork(int id, const SkBitmap& icon, const std::wstring& name,
|
| - bool bold_name, const std::wstring& status, int button_flags,
|
| - int connection_type);
|
| -
|
| - // Creates a modal popup with |view|.
|
| - void CreateModalPopup(views::WindowDelegate* view);
|
| -
|
| - // This method is called when the user click on the |button| for |id|.
|
| - virtual void ButtonClicked(int button, int connection_type, int id) = 0;
|
| -
|
| - private:
|
| - // This constant determines the button tag offset for the different buttons.
|
| - // The ButtonFlag is multiplied by this offset to determine the button tag.
|
| - // For example, for disconnect buttons (DISCONNECT_BUTTON = 4), the button tag
|
| - // will be offset by 4000.
|
| - static const int kButtonIdOffset = 1000;
|
| - // This constant determines the button tag offset for the connection types.
|
| - // The ConnectionType is multiplied by this to determine the button tag.
|
| - // For example, for wifi buttons (TYPE_WIFI = 2), the button tag
|
| - // will be offset by 200.
|
| - static const int kConnectionTypeOffset = 100;
|
| -
|
| - InternetPageContentView* parent_;
|
| -
|
| - int quad_column_view_set_id_;
|
| -
|
| - GridLayout* layout_;
|
| -
|
| - DISALLOW_COPY_AND_ASSIGN(NetworkSection);
|
| -};
|
| -
|
| -NetworkSection::NetworkSection(InternetPageContentView* parent,
|
| - Profile* profile,
|
| - int title_msg_id)
|
| - : SettingsPageSection(profile, title_msg_id),
|
| - parent_(parent),
|
| - quad_column_view_set_id_(1) {
|
| -}
|
| -
|
| -void NetworkSection::ButtonPressed(views::Button* sender,
|
| - const views::Event& event) {
|
| - int id = sender->tag();
|
| - // Determine the button from the id (div by kButtonIdOffset).
|
| - int button = id / kButtonIdOffset;
|
| - id %= kButtonIdOffset;
|
| - // Determine the connection type from the id (div by kConnectionTypeOffset).
|
| - int connection_type = id / kConnectionTypeOffset;
|
| - id %= kConnectionTypeOffset;
|
| -
|
| - ButtonClicked(button, connection_type, id);
|
| -}
|
| -
|
| -void NetworkSection::RefreshContents() {
|
| - RemoveAllChildViews(true);
|
| - InitControlLayout();
|
| -}
|
| -
|
| -void NetworkSection::InitContents(GridLayout* layout) {
|
| - layout_ = layout;
|
| -
|
| - ColumnSet* column_set = layout_->AddColumnSet(quad_column_view_set_id_);
|
| - // icon
|
| - column_set->AddColumn(GridLayout::FILL, GridLayout::FILL, 1,
|
| - GridLayout::USE_PREF, 0, 0);
|
| - // network name
|
| - column_set->AddColumn(GridLayout::FILL, GridLayout::FILL, 1,
|
| - GridLayout::USE_PREF, 0, 0);
|
| - // fill padding
|
| - column_set->AddPaddingColumn(10, 0);
|
| - // first button
|
| - column_set->AddColumn(GridLayout::FILL, GridLayout::FILL, 1,
|
| - GridLayout::USE_PREF, 0, 0);
|
| - // padding
|
| - column_set->AddPaddingColumn(0, 10);
|
| - // second button
|
| - column_set->AddColumn(GridLayout::FILL, GridLayout::FILL, 1,
|
| - GridLayout::USE_PREF, 0, 0);
|
| -
|
| - InitSection();
|
| -}
|
| -
|
| -void NetworkSection::AddNetwork(int id, const SkBitmap& icon,
|
| - const std::wstring& name, bool bold_name,
|
| - const std::wstring& status, int button_flags,
|
| - int connection_type) {
|
| - ResourceBundle& rb = ResourceBundle::GetSharedInstance();
|
| -
|
| - // Offset id by connection type.
|
| - id += kConnectionTypeOffset * connection_type;
|
| -
|
| - layout_->StartRow(0, quad_column_view_set_id_);
|
| - views::ImageView* icon_view = new views::ImageView();
|
| - icon_view->SetImage(icon);
|
| - layout_->AddView(icon_view, 1, 2);
|
| -
|
| - views::Label* name_view = new views::Label(name);
|
| - if (bold_name)
|
| - name_view->SetFont(rb.GetFont(ResourceBundle::BoldFont));
|
| - name_view->SetHorizontalAlignment(views::Label::ALIGN_LEFT);
|
| - layout_->AddView(name_view);
|
| -
|
| - int num_buttons = 0;
|
| - if (button_flags & OPTIONS_BUTTON)
|
| - num_buttons++;
|
| - if (button_flags & CONNECT_BUTTON)
|
| - num_buttons++;
|
| - if (button_flags & DISCONNECT_BUTTON)
|
| - num_buttons++;
|
| - if (button_flags & FORGET_BUTTON)
|
| - num_buttons++;
|
| -
|
| - if (num_buttons > 0) {
|
| - // We only support 2 buttons.
|
| - DCHECK_LE(num_buttons, 2);
|
| -
|
| - if (num_buttons == 1)
|
| - layout_->SkipColumns(1);
|
| -
|
| - if (button_flags & FORGET_BUTTON) {
|
| - views::NativeButton* button = new views::NativeButton(this,
|
| - UTF16ToWide(l10n_util::GetStringUTF16(IDS_OPTIONS_SETTINGS_FORGET)));
|
| - button->set_tag(id + kButtonIdOffset * FORGET_BUTTON);
|
| - layout_->AddView(button, 1, 2);
|
| - }
|
| -
|
| - if (button_flags & DISCONNECT_BUTTON) {
|
| - views::NativeButton* button = new views::NativeButton(this, UTF16ToWide(
|
| - l10n_util::GetStringUTF16(IDS_OPTIONS_SETTINGS_DISCONNECT)));
|
| - button->set_tag(id + kButtonIdOffset * DISCONNECT_BUTTON);
|
| - layout_->AddView(button, 1, 2);
|
| - }
|
| -
|
| - if (button_flags & CONNECT_BUTTON) {
|
| - views::NativeButton* button = new views::NativeButton(this,
|
| - UTF16ToWide(l10n_util::GetStringUTF16(IDS_OPTIONS_SETTINGS_CONNECT)));
|
| - button->set_tag(id + kButtonIdOffset * CONNECT_BUTTON);
|
| - layout_->AddView(button, 1, 2);
|
| - }
|
| -
|
| - if (button_flags & OPTIONS_BUTTON) {
|
| - views::NativeButton* button = new views::NativeButton(this,
|
| - UTF16ToWide(l10n_util::GetStringUTF16(IDS_OPTIONS_SETTINGS_OPTIONS)));
|
| - button->set_tag(id + kButtonIdOffset * OPTIONS_BUTTON);
|
| - layout_->AddView(button, 1, 2);
|
| - }
|
| - }
|
| -
|
| - layout_->StartRow(0, quad_column_view_set_id_);
|
| - layout_->SkipColumns(1);
|
| - views::Label* status_label = new views::Label(status);
|
| - status_label->SetFont(rb.GetFont(ResourceBundle::SmallFont));
|
| - status_label->SetColor(SK_ColorLTGRAY);
|
| - status_label->SetHorizontalAlignment(views::Label::ALIGN_LEFT);
|
| - layout_->AddView(status_label);
|
| - layout_->AddPaddingRow(0, kRelatedControlVerticalSpacing);
|
| -}
|
| -
|
| -void NetworkSection::CreateModalPopup(views::WindowDelegate* view) {
|
| - views::Window* window = browser::CreateViewsWindow(
|
| - GetOptionsViewParent(), gfx::Rect(), view);
|
| - window->SetIsAlwaysOnTop(true);
|
| - window->Show();
|
| -}
|
| -
|
| -////////////////////////////////////////////////////////////////////////////////
|
| -// WiredSection
|
| -
|
| -class WiredSection : public NetworkSection {
|
| - public:
|
| - WiredSection(InternetPageContentView* parent, Profile* profile);
|
| - virtual ~WiredSection() {}
|
| -
|
| - protected:
|
| - // NetworkSection overrides:
|
| - virtual void InitSection();
|
| - virtual void ButtonClicked(int button, int connection_type, int id);
|
| -
|
| - DISALLOW_COPY_AND_ASSIGN(WiredSection);
|
| -};
|
| -
|
| -WiredSection::WiredSection(InternetPageContentView* parent, Profile* profile)
|
| - : NetworkSection(parent, profile,
|
| - IDS_OPTIONS_SETTINGS_SECTION_TITLE_WIRED_NETWORK) {
|
| -}
|
| -
|
| -void WiredSection::InitSection() {
|
| - NetworkLibrary* cros = CrosLibrary::Get()->GetNetworkLibrary();
|
| - ResourceBundle& rb = ResourceBundle::GetSharedInstance();
|
| -
|
| - SkBitmap icon = *rb.GetBitmapNamed(IDR_STATUSBAR_WIRED_BLACK);
|
| - if (!cros->ethernet_connecting() && !cros->ethernet_connected()) {
|
| - icon = NetworkMenu::IconForDisplay(icon,
|
| - *rb.GetBitmapNamed(IDR_STATUSBAR_NETWORK_DISCONNECTED));
|
| - }
|
| -
|
| - std::wstring name = UTF16ToWide(
|
| - l10n_util::GetStringUTF16(IDS_STATUSBAR_NETWORK_DEVICE_ETHERNET));
|
| -
|
| - int s = IDS_STATUSBAR_NETWORK_DEVICE_DISABLED;
|
| - if (cros->ethernet_connecting())
|
| - s = IDS_STATUSBAR_NETWORK_DEVICE_CONNECTING;
|
| - else if (cros->ethernet_connected())
|
| - s = IDS_STATUSBAR_NETWORK_DEVICE_CONNECTED;
|
| - else if (cros->ethernet_enabled())
|
| - s = IDS_STATUSBAR_NETWORK_DEVICE_DISCONNECTED;
|
| - std::wstring status = UTF16ToWide(l10n_util::GetStringUTF16(s));
|
| -
|
| - int flags = cros->ethernet_connected() ? OPTIONS_BUTTON : 0;
|
| - bool bold = cros->ethernet_connected() ? true : false;
|
| - AddNetwork(0, icon, name, bold, status, flags, TYPE_ETHERNET);
|
| -}
|
| -
|
| -void WiredSection::ButtonClicked(int button, int connection_type, int id) {
|
| -// CreateModalPopup(new NetworkConfigView(
|
| -// CrosLibrary::Get()->GetNetworkLibrary()->ethernet_network()));
|
| -}
|
| -
|
| -////////////////////////////////////////////////////////////////////////////////
|
| -// WirelessSection
|
| -
|
| -class WirelessSection : public NetworkSection {
|
| - public:
|
| - WirelessSection(InternetPageContentView* parent, Profile* profile);
|
| - virtual ~WirelessSection() {}
|
| -
|
| - protected:
|
| - // NetworkSection overrides:
|
| - virtual void InitSection();
|
| - virtual void ButtonClicked(int button, int connection_type, int id);
|
| -
|
| - private:
|
| - // This calls NetworkSection::AddNetwork .
|
| - // For |connecting| or |connected| networks, the name is bold.
|
| - // The status is "Connecting" if |connecting|, "Connected" if |connected|,
|
| - // or "Disconnected".
|
| - // For connected networks, we show the disconnect and options buttons.
|
| - // For !connected and !connecting networks, we show the connect button.
|
| - void AddWirelessNetwork(int id, const SkBitmap& icon,
|
| - const std::wstring& name, bool connecting,
|
| - bool connected, int connection_type);
|
| -
|
| - WifiNetworkVector wifi_networks_;
|
| - CellularNetworkVector cellular_networks_;
|
| -
|
| - DISALLOW_COPY_AND_ASSIGN(WirelessSection);
|
| -};
|
| -
|
| -WirelessSection::WirelessSection(InternetPageContentView* parent,
|
| - Profile* profile)
|
| - : NetworkSection(parent, profile,
|
| - IDS_OPTIONS_SETTINGS_SECTION_TITLE_WIRELESS_NETWORK) {
|
| -}
|
| -
|
| -void WirelessSection::InitSection() {
|
| - NetworkLibrary* cros = CrosLibrary::Get()->GetNetworkLibrary();
|
| - ResourceBundle& rb = ResourceBundle::GetSharedInstance();
|
| -
|
| - // Wifi
|
| - wifi_networks_ = cros->wifi_networks();
|
| - for (size_t i = 0; i < wifi_networks_.size(); ++i) {
|
| - std::wstring name = ASCIIToWide(wifi_networks_[i]->name());
|
| -
|
| - SkBitmap icon = NetworkMenu::IconForNetworkStrength(
|
| - wifi_networks_[i], true);
|
| - if (wifi_networks_[i]->encrypted()) {
|
| - icon = NetworkMenu::IconForDisplay(icon,
|
| - *rb.GetBitmapNamed(IDR_STATUSBAR_NETWORK_SECURE));
|
| - }
|
| -
|
| - bool connecting = wifi_networks_[i]->connecting();
|
| - bool connected = wifi_networks_[i]->connected();
|
| - AddWirelessNetwork(i, icon, name, connecting, connected, TYPE_WIFI);
|
| - }
|
| -
|
| - // Cellular
|
| - cellular_networks_ = cros->cellular_networks();
|
| - for (size_t i = 0; i < cellular_networks_.size(); ++i) {
|
| - std::wstring name = ASCIIToWide(cellular_networks_[i]->name());
|
| -
|
| - SkBitmap icon = NetworkMenu::IconForNetworkStrength(
|
| - cellular_networks_[i], true);
|
| - SkBitmap badge =
|
| - NetworkMenu::BadgeForNetworkTechnology(cellular_networks_[i]);
|
| - icon = NetworkMenu::IconForDisplay(icon, badge);
|
| -
|
| - bool connecting = cellular_networks_[i]->connecting();
|
| - bool connected = cellular_networks_[i]->connected();
|
| - AddWirelessNetwork(i, icon, name, connecting, connected, TYPE_CELLULAR);
|
| - }
|
| -}
|
| -
|
| -void WirelessSection::ButtonClicked(int button, int connection_type, int id) {
|
| - if (connection_type == TYPE_CELLULAR) {
|
| - if (static_cast<int>(cellular_networks_.size()) > id) {
|
| - if (button == CONNECT_BUTTON) {
|
| - // Connect to cellular network.
|
| - CrosLibrary::Get()->GetNetworkLibrary()->ConnectToCellularNetwork(
|
| - cellular_networks_[id]);
|
| - } else if (button == DISCONNECT_BUTTON) {
|
| - CrosLibrary::Get()->GetNetworkLibrary()->DisconnectFromWirelessNetwork(
|
| - cellular_networks_[id]);
|
| - } else {
|
| -// CreateModalPopup(new NetworkConfigView(cellular_networks_[id]));
|
| - }
|
| - }
|
| - } else if (connection_type == TYPE_WIFI) {
|
| - if (static_cast<int>(wifi_networks_.size()) > id) {
|
| - if (button == CONNECT_BUTTON) {
|
| - // Connect to wifi here. Open password page if appropriate.
|
| - if (wifi_networks_[id]->encrypted()) {
|
| -// NetworkConfigView* view =
|
| -// new NetworkConfigView(wifi_networks_[id], true);
|
| -// CreateModalPopup(view);
|
| -// view->SetLoginTextfieldFocus();
|
| - } else {
|
| - CrosLibrary::Get()->GetNetworkLibrary()->ConnectToWifiNetwork(
|
| - wifi_networks_[id], std::string(), std::string(), std::string());
|
| - }
|
| - } else if (button == DISCONNECT_BUTTON) {
|
| - CrosLibrary::Get()->GetNetworkLibrary()->DisconnectFromWirelessNetwork(
|
| - wifi_networks_[id]);
|
| - } else {
|
| -// CreateModalPopup(new NetworkConfigView(wifi_networks_[id], false));
|
| - }
|
| - }
|
| - } else {
|
| - NOTREACHED();
|
| - }
|
| -}
|
| -
|
| -void WirelessSection::AddWirelessNetwork(int id, const SkBitmap& icon,
|
| - const std::wstring& name, bool connecting, bool connected,
|
| - int connection_type) {
|
| - bool bold = connecting || connected;
|
| -
|
| - int s = IDS_STATUSBAR_NETWORK_DEVICE_DISCONNECTED;
|
| - if (connecting)
|
| - s = IDS_STATUSBAR_NETWORK_DEVICE_CONNECTING;
|
| - else if (connected)
|
| - s = IDS_STATUSBAR_NETWORK_DEVICE_CONNECTED;
|
| - std::wstring status = UTF16ToWide(l10n_util::GetStringUTF16(s));
|
| -
|
| - int flags = 0;
|
| - if (connected) {
|
| - flags |= DISCONNECT_BUTTON | OPTIONS_BUTTON;
|
| - } else if (!connecting) {
|
| - flags |= CONNECT_BUTTON;
|
| - }
|
| -
|
| - AddNetwork(id, icon, name, bold, status, flags, connection_type);
|
| -}
|
| -
|
| -////////////////////////////////////////////////////////////////////////////////
|
| -// RememberedSection
|
| -
|
| -class RememberedSection : public NetworkSection {
|
| - public:
|
| - RememberedSection(InternetPageContentView* parent, Profile* profile);
|
| - virtual ~RememberedSection() {}
|
| -
|
| - protected:
|
| - // NetworkSection overrides:
|
| - virtual void InitSection();
|
| - virtual void ButtonClicked(int button, int connection_type, int id);
|
| -
|
| - private:
|
| - WifiNetworkVector wifi_networks_;
|
| -
|
| - DISALLOW_COPY_AND_ASSIGN(RememberedSection);
|
| -};
|
| -
|
| -RememberedSection::RememberedSection(InternetPageContentView* parent,
|
| - Profile* profile)
|
| - : NetworkSection(parent, profile,
|
| - IDS_OPTIONS_SETTINGS_SECTION_TITLE_REMEMBERED_NETWORK) {
|
| -}
|
| -
|
| -void RememberedSection::InitSection() {
|
| - NetworkLibrary* cros = CrosLibrary::Get()->GetNetworkLibrary();
|
| - ResourceBundle& rb = ResourceBundle::GetSharedInstance();
|
| -
|
| - // Wifi
|
| - wifi_networks_ = cros->remembered_wifi_networks();
|
| - for (size_t i = 0; i < wifi_networks_.size(); ++i) {
|
| - std::wstring name = ASCIIToWide(wifi_networks_[i]->name());
|
| -
|
| - SkBitmap icon = *rb.GetBitmapNamed(IDR_STATUSBAR_NETWORK_BARS0_BLACK);
|
| - if (wifi_networks_[i]->encrypted()) {
|
| - icon = NetworkMenu::IconForDisplay(icon,
|
| - *rb.GetBitmapNamed(IDR_STATUSBAR_NETWORK_SECURE));
|
| - }
|
| -
|
| - AddNetwork(i, icon, name, false, std::wstring(), FORGET_BUTTON, TYPE_WIFI);
|
| - }
|
| -}
|
| -
|
| -void RememberedSection::ButtonClicked(int button, int connection_type, int id) {
|
| - if (connection_type == TYPE_WIFI) {
|
| - if (static_cast<int>(wifi_networks_.size()) > id) {
|
| - CrosLibrary::Get()->GetNetworkLibrary()->ForgetWifiNetwork(
|
| - wifi_networks_[id]->service_path());
|
| - }
|
| - } else {
|
| - NOTREACHED();
|
| - }
|
| -}
|
| -
|
| -////////////////////////////////////////////////////////////////////////////////
|
| -// InternetPageContentView
|
| -
|
| -class InternetPageContentView : public SettingsPageView {
|
| - public:
|
| - explicit InternetPageContentView(Profile* profile);
|
| - virtual ~InternetPageContentView() {}
|
| -
|
| - virtual void RefreshContents();
|
| -
|
| - // views::View overrides.
|
| - virtual int GetLineScrollIncrement(views::ScrollView* scroll_view,
|
| - bool is_horizontal, bool is_positive);
|
| - virtual void Layout();
|
| - virtual void DidChangeBounds(const gfx::Rect& previous,
|
| - const gfx::Rect& current);
|
| -
|
| - protected:
|
| - // SettingsPageView implementation:
|
| - virtual void InitControlLayout();
|
| -
|
| - private:
|
| - int line_height_;
|
| - WiredSection* wired_section_;
|
| - WirelessSection* wireless_section_;
|
| - RememberedSection* remembered_section_;
|
| -
|
| - DISALLOW_COPY_AND_ASSIGN(InternetPageContentView);
|
| -};
|
| -
|
| -////////////////////////////////////////////////////////////////////////////////
|
| -// InternetPageContentView, SettingsPageView implementation:
|
| -
|
| -InternetPageContentView::InternetPageContentView(Profile* profile)
|
| - : SettingsPageView(profile) {
|
| - ResourceBundle& rb = ResourceBundle::GetSharedInstance();
|
| - line_height_ = rb.GetFont(ResourceBundle::BaseFont).GetHeight();
|
| -}
|
| -
|
| -void InternetPageContentView::RefreshContents() {
|
| - wired_section_->RefreshContents();
|
| - wireless_section_->RefreshContents();
|
| - remembered_section_->RefreshContents();
|
| -}
|
| -
|
| -int InternetPageContentView::GetLineScrollIncrement(
|
| - views::ScrollView* scroll_view,
|
| - bool is_horizontal,
|
| - bool is_positive) {
|
| - if (!is_horizontal)
|
| - return line_height_;
|
| - return View::GetPageScrollIncrement(scroll_view, is_horizontal, is_positive);
|
| -}
|
| -
|
| -void InternetPageContentView::Layout() {
|
| - // Set the width to the parent width and the height to the preferred height.
|
| - // We will have a vertical scrollbar if the preferred height is longer
|
| - // than the parent's height.
|
| - SetBounds(0, 0, GetParent()->width(), GetPreferredSize().height());
|
| - View::Layout();
|
| -}
|
| -
|
| -void InternetPageContentView::DidChangeBounds(const gfx::Rect& previous,
|
| - const gfx::Rect& current) {
|
| - // Override to do nothing. Calling Layout() interferes with our scrolling.
|
| -}
|
| -
|
| -void InternetPageContentView::InitControlLayout() {
|
| - GridLayout* layout = GridLayout::CreatePanel(this);
|
| - SetLayoutManager(layout);
|
| -
|
| - int single_column_view_set_id = 0;
|
| - ColumnSet* column_set = layout->AddColumnSet(single_column_view_set_id);
|
| - column_set->AddColumn(GridLayout::FILL, GridLayout::FILL, 1,
|
| - GridLayout::USE_PREF, 0, 0);
|
| -
|
| - layout->StartRow(0, single_column_view_set_id);
|
| - wired_section_ = new WiredSection(this, profile());
|
| - layout->AddView(wired_section_);
|
| - layout->AddPaddingRow(0, kRelatedControlVerticalSpacing);
|
| -
|
| - layout->StartRow(0, single_column_view_set_id);
|
| - wireless_section_ = new WirelessSection(this, profile());
|
| - layout->AddView(wireless_section_);
|
| - layout->AddPaddingRow(0, kRelatedControlVerticalSpacing);
|
| -
|
| - layout->StartRow(0, single_column_view_set_id);
|
| - remembered_section_ = new RememberedSection(this, profile());
|
| - layout->AddView(remembered_section_);
|
| - layout->AddPaddingRow(0, kRelatedControlVerticalSpacing);
|
| -}
|
| -
|
| -////////////////////////////////////////////////////////////////////////////////
|
| -// InternetPageView
|
| -
|
| -InternetPageView::InternetPageView(Profile* profile)
|
| - : SettingsPageView(profile),
|
| - contents_view_(new InternetPageContentView(profile)),
|
| - scroll_view_(new views::ScrollView) {
|
| - NetworkLibrary* cros = CrosLibrary::Get()->GetNetworkLibrary();
|
| - cros->AddNetworkManagerObserver(this);
|
| -}
|
| -
|
| -InternetPageView::~InternetPageView() {
|
| - CrosLibrary::Get()->GetNetworkLibrary()->RemoveNetworkManagerObserver(this);
|
| -}
|
| -
|
| -void InternetPageView::OnNetworkManagerChanged(NetworkLibrary* obj) {
|
| - // Refresh wired, wireless, and remembered networks.
|
| - // Remember the current scroll region, and try to scroll back afterwards.
|
| - gfx::Rect rect = scroll_view_->GetVisibleRect();
|
| - contents_view_->RefreshContents();
|
| - Layout();
|
| - scroll_view_->ScrollContentsRegionToBeVisible(rect);
|
| -}
|
| -
|
| -void InternetPageView::Layout() {
|
| - contents_view_->Layout();
|
| - scroll_view_->SetBounds(GetLocalBounds(false));
|
| - scroll_view_->Layout();
|
| -}
|
| -
|
| -void InternetPageView::InitControlLayout() {
|
| - AddChildView(scroll_view_);
|
| - scroll_view_->SetContents(contents_view_);
|
| -}
|
| -
|
| -} // namespace chromeos
|
|
|