Index: chrome/browser/chromeos/options/wifi_config_view.cc |
diff --git a/chrome/browser/chromeos/options/wifi_config_view.cc b/chrome/browser/chromeos/options/wifi_config_view.cc |
index e04785039a23a0f79a2d7173b382973d19a67746..9827218f704ea96b482cb64d7d225ff023e0c3b7 100644 |
--- a/chrome/browser/chromeos/options/wifi_config_view.cc |
+++ b/chrome/browser/chromeos/options/wifi_config_view.cc |
@@ -356,9 +356,14 @@ WifiConfigView::WifiConfigView(NetworkConfigView* parent, |
error_label_(NULL), |
weak_ptr_factory_(this) { |
Init(show_8021x); |
+ NetworkHandler::Get()->network_state_handler()->AddObserver(this, FROM_HERE); |
} |
WifiConfigView::~WifiConfigView() { |
+ if (NetworkHandler::IsInitialized()) { |
+ NetworkHandler::Get()->network_state_handler()->RemoveObserver( |
+ this, FROM_HERE); |
+ } |
CertLibrary::Get()->RemoveObserver(this); |
} |
@@ -1247,6 +1252,12 @@ void WifiConfigView::InitFocus() { |
view_to_focus->RequestFocus(); |
} |
+void WifiConfigView::NetworkPropertiesUpdated(const NetworkState* network) { |
+ if (network->path() != service_path_) |
+ return; |
+ UpdateErrorLabel(); |
+} |
+ |
// static |
void WifiConfigView::ParseWiFiUIProperty( |
NetworkPropertyUIData* property_ui_data, |