Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(683)

Unified Diff: chrome/browser/chromeos/status/network_menu.cc

Issue 3526020: Redirected network details to options DOM UI page.... (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: '' Created 10 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/browser/chromeos/status/network_menu.cc
===================================================================
--- chrome/browser/chromeos/status/network_menu.cc (revision 61713)
+++ chrome/browser/chromeos/status/network_menu.cc (working copy)
@@ -6,12 +6,19 @@
#include "app/l10n_util.h"
#include "app/resource_bundle.h"
+#include "base/command_line.h"
+#include "base/stringprintf.h"
#include "base/utf_string_conversions.h"
+#include "chrome/browser/browser.h"
+#include "chrome/browser/browser_list.h"
#include "chrome/browser/chromeos/cros/cros_library.h"
+#include "chrome/common/chrome_switches.h"
+#include "chrome/common/url_constants.h"
#include "gfx/canvas_skia.h"
#include "gfx/skbitmap_operations.h"
#include "grit/generated_resources.h"
#include "grit/theme_resources.h"
+#include "net/base/escape.h"
#include "views/window/window.h"
namespace chromeos {
@@ -68,6 +75,17 @@
return !(menu_items_[index].flags & FLAG_DISABLED);
}
+void NetworkMenu::ShowTabbedNetworkSettings(const Network& network) {
+ Browser* browser = BrowserList::GetLastActive();
+ if (!browser)
+ return;
+ std::string page = StringPrintf("%s?servicePath=%s&networkType=%d",
+ chrome::kInternetOptionsSubPage,
+ EscapeUrlEncodedData(network.service_path()).c_str(),
+ network.type());
+ browser->ShowOptionsTab(page);
+}
+
void NetworkMenu::ActivatedAt(int index) {
// When we are refreshing the menu, ignore menu item activation.
if (refreshing_menu_)
@@ -96,12 +114,18 @@
view->SetLoginTextfieldFocus();
} else if (flags & FLAG_ETHERNET) {
if (cros->ethernet_connected()) {
- NetworkConfigView* view = new NetworkConfigView(cros->ethernet_network());
- view->set_browser_mode(IsBrowserMode());
- views::Window* window = views::Window::CreateChromeWindow(
- GetNativeWindow(), gfx::Rect(), view);
- window->SetIsAlwaysOnTop(true);
- window->Show();
+ if (CommandLine::ForCurrentProcess()->HasSwitch(
+ switches::kEnableTabbedOptions)) {
+ ShowTabbedNetworkSettings(cros->ethernet_network());
+ } else {
+ NetworkConfigView* view =
+ new NetworkConfigView(cros->ethernet_network());
+ view->set_browser_mode(IsBrowserMode());
+ views::Window* window = views::Window::CreateChromeWindow(
+ GetNativeWindow(), gfx::Rect(), view);
+ window->SetIsAlwaysOnTop(true);
+ window->Show();
+ }
}
} else if (flags & FLAG_WIFI) {
WifiNetwork wifi;
@@ -113,13 +137,18 @@
// TODO(stevenjb): Show notification.
} else if (wifi.name() == cros->wifi_name()) {
if (cros->wifi_connected()) {
- // If we are already connected, open the config dialog.
- NetworkConfigView* view = new NetworkConfigView(wifi, false);
- view->set_browser_mode(IsBrowserMode());
- views::Window* window = views::Window::CreateChromeWindow(
- GetNativeWindow(), gfx::Rect(), view);
- window->SetIsAlwaysOnTop(true);
- window->Show();
+ if (CommandLine::ForCurrentProcess()->HasSwitch(
+ switches::kEnableTabbedOptions)) {
+ ShowTabbedNetworkSettings(wifi);
+ } else {
+ // If we are already connected, open the config dialog.
+ NetworkConfigView* view = new NetworkConfigView(wifi, false);
+ view->set_browser_mode(IsBrowserMode());
+ views::Window* window = views::Window::CreateChromeWindow(
+ GetNativeWindow(), gfx::Rect(), view);
+ window->SetIsAlwaysOnTop(true);
+ window->Show();
+ }
} else {
// TODO(stevenjb): Connection in progress. Show dialog?
}
@@ -152,12 +181,17 @@
// If clicked on a network that we are already connected to or we are
// currently trying to connect to, then open config dialog.
if (cros->cellular_connected()) {
- NetworkConfigView* view = new NetworkConfigView(cellular);
- view->set_browser_mode(IsBrowserMode());
- views::Window* window = views::Window::CreateChromeWindow(
- GetNativeWindow(), gfx::Rect(), view);
- window->SetIsAlwaysOnTop(true);
- window->Show();
+ if (CommandLine::ForCurrentProcess()->HasSwitch(
+ switches::kEnableTabbedOptions)) {
+ ShowTabbedNetworkSettings(cellular);
+ } else {
+ NetworkConfigView* view = new NetworkConfigView(cellular);
+ view->set_browser_mode(IsBrowserMode());
+ views::Window* window = views::Window::CreateChromeWindow(
+ GetNativeWindow(), gfx::Rect(), view);
+ window->SetIsAlwaysOnTop(true);
+ window->Show();
+ }
} else {
// TODO(stevenjb): Connection in progress. Show dialog?
}
« no previous file with comments | « chrome/browser/chromeos/status/network_menu.h ('k') | chrome/browser/resources/options/chromeos_internet_options.js » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698