| Index: chrome/browser/chromeos/network_menu_button.h
|
| ===================================================================
|
| --- chrome/browser/chromeos/network_menu_button.h (revision 28124)
|
| +++ chrome/browser/chromeos/network_menu_button.h (working copy)
|
| @@ -6,39 +6,17 @@
|
| #define CHROME_BROWSER_CHROMEOS_NETWORK_MENU_BUTTON_H_
|
|
|
| #include <string>
|
| -#include <vector>
|
|
|
| #include "base/timer.h"
|
| +#include "chrome/browser/chromeos/cros_network_library.h"
|
| #include "chrome/browser/chromeos/password_dialog_view.h"
|
| -#include "third_party/cros/chromeos_network.h"
|
| -#include "third_party/skia/include/core/SkBitmap.h"
|
| #include "views/controls/button/menu_button.h"
|
| #include "views/controls/menu/menu_2.h"
|
| #include "views/controls/menu/view_menu_delegate.h"
|
|
|
| class Browser;
|
| +class SkBitmap;
|
|
|
| -struct WifiNetwork {
|
| - WifiNetwork() : encrypted(false), strength(0) { }
|
| - WifiNetwork(const std::string& ssid, bool encrypted,
|
| - chromeos::EncryptionType encryption, int strength)
|
| - : ssid(ssid),
|
| - encrypted(encrypted),
|
| - encryption(encryption),
|
| - strength(strength) { }
|
| -
|
| - // WifiNetworks are sorted by ssids.
|
| - bool operator< (const WifiNetwork& other) const {
|
| - return ssid < other.ssid;
|
| - }
|
| -
|
| - std::string ssid;
|
| - bool encrypted;
|
| - chromeos::EncryptionType encryption;
|
| - int strength;
|
| -};
|
| -typedef std::vector<WifiNetwork> WifiNetworkVector;
|
| -
|
| // The network menu button in the status area.
|
| // This class will handle getting the wifi networks and populating the menu.
|
| // It will also handle the status icon changing and connecting to another
|
| @@ -46,10 +24,11 @@
|
| class NetworkMenuButton : public views::MenuButton,
|
| public views::ViewMenuDelegate,
|
| public views::Menu2Model,
|
| - public PasswordDialogDelegate {
|
| + public PasswordDialogDelegate,
|
| + public CrosNetworkLibrary::Observer {
|
| public:
|
| - NetworkMenuButton(Browser* browser, bool cros_library_loaded);
|
| - virtual ~NetworkMenuButton() {}
|
| + explicit NetworkMenuButton(Browser* browser);
|
| + virtual ~NetworkMenuButton();
|
|
|
| // views::Menu2Model implementation.
|
| virtual bool HasIcons() const { return false; }
|
| @@ -74,28 +53,14 @@
|
| virtual bool OnPasswordDialogAccept(const std::string& ssid,
|
| const string16& password);
|
|
|
| + // CrosNetworkLibrary::Observer implementation.
|
| + virtual void NetworkChanged(CrosNetworkLibrary* obj);
|
| +
|
| private:
|
| // views::ViewMenuDelegate implementation.
|
| virtual void RunMenu(views::View* source, const gfx::Point& pt,
|
| gfx::NativeView hwnd);
|
|
|
| - // Gets the WifiNetwork for the given ssid in the list of wifi networks.
|
| - // Returns whether or not WifiNetwork was found.
|
| - bool GetWifiNetwork(const WifiNetworkVector& networks,
|
| - const std::string& ssid,
|
| - WifiNetwork* network);
|
| -
|
| - // Helper method to add a wifi network to the model.
|
| - void AddWifiNetwork(const std::string& ssid, bool encrypted,
|
| - chromeos::EncryptionType encryption, int strength);
|
| -
|
| - // Refreshes the networks model using real data.
|
| - void RefreshNetworks();
|
| -
|
| - // Connect to the specified wireless network with password.
|
| - // Returns whether or not connection was successful.
|
| - bool ConnectToWifiNetwork(const std::string& ssid, const string16& password);
|
| -
|
| // Start animating the icon to show that we are connecting to a network.
|
| void StartConnectingAnimation();
|
|
|
| @@ -105,38 +70,17 @@
|
| // Update the icon to either the connecting, connected, or disconnected icon.
|
| void UpdateIcon();
|
|
|
| - // Whether or not the cros shared library loaded successfully or not.
|
| - bool cros_library_loaded_;
|
| -
|
| // Set to true if we are currently refreshing the menu.
|
| bool refreshing_menu_;
|
|
|
| // The number of wifi strength images.
|
| static const int kNumWifiImages;
|
|
|
| - // Wifi strength images.
|
| - static SkBitmap* wifi_images_[];
|
| -
|
| - // Wired image.
|
| - static SkBitmap* wired_image_;
|
| -
|
| - // Disconnected image.
|
| - static SkBitmap* disconnected_image_;
|
| -
|
| - // Whether or not ethernet is connected.
|
| - bool ethernet_connected_;
|
| -
|
| - // The currently connected wifi network ssid.
|
| - std::string current_ssid_;
|
| -
|
| - // The wifi netowrk ssid we are attempting to connect to.
|
| - std::string connecting_ssid_;
|
| -
|
| // A list of wifi networks.
|
| WifiNetworkVector wifi_networks_;
|
|
|
| - // A list of wifi networks that we are currently showing in the menu.
|
| - WifiNetworkVector wifi_networks_in_menu_;
|
| + // The activated wifi network.
|
| + WifiNetwork activated_wifi_network_;
|
|
|
| // The network menu.
|
| views::Menu2 network_menu_;
|
|
|