diff options
Diffstat (limited to 'chrome/browser/chromeos/options')
-rw-r--r-- | chrome/browser/chromeos/options/network_config_view.cc | 9 | ||||
-rw-r--r-- | chrome/browser/chromeos/options/network_config_view.h | 4 |
2 files changed, 10 insertions, 3 deletions
diff --git a/chrome/browser/chromeos/options/network_config_view.cc b/chrome/browser/chromeos/options/network_config_view.cc index e3ea604..d854954 100644 --- a/chrome/browser/chromeos/options/network_config_view.cc +++ b/chrome/browser/chromeos/options/network_config_view.cc @@ -89,13 +89,16 @@ bool NetworkConfigView::Cancel() { } bool NetworkConfigView::Accept() { + bool result = true; if (flags_ & FLAG_WIFI) { if (flags_ & FLAG_LOGIN_ONLY) - return wificonfig_view_->Login(); + result = wificonfig_view_->Login(); else - return wificonfig_view_->Save(); + result = wificonfig_view_->Save(); } - return true; + if (result && delegate_) + delegate_->OnDialogAccepted(); + return result; } std::wstring NetworkConfigView::GetWindowTitle() const { diff --git a/chrome/browser/chromeos/options/network_config_view.h b/chrome/browser/chromeos/options/network_config_view.h index 6a2653e..9a3b771 100644 --- a/chrome/browser/chromeos/options/network_config_view.h +++ b/chrome/browser/chromeos/options/network_config_view.h @@ -30,8 +30,12 @@ class NetworkConfigView : public views::View, public: class Delegate { public: + // Called when dialog "OK" button is pressed. + virtual void OnDialogAccepted() = 0; + // Called when dialog "Cancel" button is pressed. virtual void OnDialogCancelled() = 0; + protected: virtual ~Delegate() {} }; |