diff options
Diffstat (limited to 'chrome/browser/chromeos/system/ash_system_tray_delegate.cc')
-rw-r--r-- | chrome/browser/chromeos/system/ash_system_tray_delegate.cc | 16 |
1 files changed, 14 insertions, 2 deletions
diff --git a/chrome/browser/chromeos/system/ash_system_tray_delegate.cc b/chrome/browser/chromeos/system/ash_system_tray_delegate.cc index faab705..cfd87ab 100644 --- a/chrome/browser/chromeos/system/ash_system_tray_delegate.cc +++ b/chrome/browser/chromeos/system/ash_system_tray_delegate.cc @@ -27,6 +27,7 @@ #include "base/bind_helpers.h" #include "base/callback.h" #include "base/chromeos/chromeos_version.h" +#include "base/command_line.h" #include "base/logging.h" #include "base/memory/weak_ptr.h" #include "base/utf_string_conversions.h" @@ -67,6 +68,7 @@ #include "chrome/common/chrome_notification_types.h" #include "chrome/common/pref_names.h" #include "chrome/common/url_constants.h" +#include "chromeos/chromeos_switches.h" #include "chromeos/dbus/dbus_thread_manager.h" #include "chromeos/dbus/power_manager_client.h" #include "chromeos/dbus/root_power_manager_client.h" @@ -629,8 +631,18 @@ class SystemTrayDelegate : public ash::SystemTrayDelegate, virtual void ConnectToNetwork(const std::string& network_id) OVERRIDE { NetworkLibrary* crosnet = CrosLibrary::Get()->GetNetworkLibrary(); Network* network = crosnet->FindNetworkByPath(network_id); - if (network) - network_menu_->ConnectToNetwork(network); + if (CommandLine::ForCurrentProcess()->HasSwitch( + chromeos::switches::kEnableNewNetworkHandlers)) { + // If the new network handlers are enabled, this should always trigger + // displaying the network settings UI. + if (network) + network_menu_->ShowTabbedNetworkSettings(network); + else + ShowNetworkSettings(); + } else { + if (network) + network_menu_->ConnectToNetwork(network); + } } virtual void RequestNetworkScan() OVERRIDE { |