MD Settings: move AdvancedOptionsUtilities to a settings-accessible place

Also, move from class + static methods to simply namespaced methods.
Doesn't make much sense to have a static only class with more code and
longer identifiers, but I could be convinced if there's a reason.

R=dpapad@chromium.org
BUG=546844

Review URL: https://codereview.chromium.org/1789543003

Cr-Commit-Position: refs/heads/master@{#380765}
diff --git a/chrome/browser/ui/webui/options/advanced_options_utils.h b/chrome/browser/ui/webui/options/advanced_options_utils.h
deleted file mode 100644
index 654df0b..0000000
--- a/chrome/browser/ui/webui/options/advanced_options_utils.h
+++ /dev/null
@@ -1,31 +0,0 @@
-// Copyright (c) 2012 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-#ifndef CHROME_BROWSER_UI_WEBUI_OPTIONS_ADVANCED_OPTIONS_UTILS_H_
-#define CHROME_BROWSER_UI_WEBUI_OPTIONS_ADVANCED_OPTIONS_UTILS_H_
-
-#include "base/macros.h"
-
-namespace content {
-class WebContents;
-}
-
-namespace options {
-
-// Chrome advanced options utility methods.
-class AdvancedOptionsUtilities {
- public:
-  // Invoke UI for network proxy settings.
-  static void ShowNetworkProxySettings(content::WebContents*);
-
-  // Invoke UI for SSL certificates.
-  static void ShowManageSSLCertificates(content::WebContents*);
-
- private:
-  DISALLOW_IMPLICIT_CONSTRUCTORS(AdvancedOptionsUtilities);
-};
-
-}  // namespace options
-
-#endif  // CHROME_BROWSER_UI_WEBUI_OPTIONS_ADVANCED_OPTIONS_UTILS_H_
diff --git a/chrome/browser/ui/webui/options/browser_options_handler.cc b/chrome/browser/ui/webui/options/browser_options_handler.cc
index 1a3e725..c631bec 100644
--- a/chrome/browser/ui/webui/options/browser_options_handler.cc
+++ b/chrome/browser/ui/webui/options/browser_options_handler.cc
@@ -105,7 +105,7 @@
 #include "ui/base/webui/web_ui_util.h"
 
 #if !defined(OS_CHROMEOS)
-#include "chrome/browser/ui/webui/options/advanced_options_utils.h"
+#include "chrome/browser/ui/webui/settings_utils.h"
 #endif
 
 #if defined(OS_CHROMEOS)
@@ -1628,8 +1628,7 @@
 void BrowserOptionsHandler::ShowNetworkProxySettings(
     const base::ListValue* args) {
   content::RecordAction(UserMetricsAction("Options_ShowProxySettings"));
-  AdvancedOptionsUtilities::ShowNetworkProxySettings(
-      web_ui()->GetWebContents());
+  settings_utils::ShowNetworkProxySettings(web_ui()->GetWebContents());
 }
 #endif
 
@@ -1637,8 +1636,7 @@
 void BrowserOptionsHandler::ShowManageSSLCertificates(
     const base::ListValue* args) {
   content::RecordAction(UserMetricsAction("Options_ManageSSLCertificates"));
-  AdvancedOptionsUtilities::ShowManageSSLCertificates(
-      web_ui()->GetWebContents());
+  settings_utils::ShowManageSSLCertificates(web_ui()->GetWebContents());
 }
 #endif
 
diff --git a/chrome/browser/ui/webui/settings/system_handler.cc b/chrome/browser/ui/webui/settings/system_handler.cc
index c7d9269..49835c5d 100644
--- a/chrome/browser/ui/webui/settings/system_handler.cc
+++ b/chrome/browser/ui/webui/settings/system_handler.cc
@@ -10,6 +10,10 @@
 #include "base/metrics/user_metrics_action.h"
 #include "content/public/browser/web_ui.h"
 
+#if !defined(OS_CHROMEOS)
+#include "chrome/browser/ui/webui/settings_utils.h"
+#endif
+
 namespace settings {
 
 SystemHandler::SystemHandler() {}
@@ -24,8 +28,11 @@
 
 void SystemHandler::HandleChangeProxySettings(const base::ListValue* /*args*/) {
   base::RecordAction(base::UserMetricsAction("Options_ShowProxySettings"));
-  // TODO(dbeam): port AdvancedOptionsUtilities::ShowNetworkProxySettings from
-  // advanced_options_utils.h to new, settings accessible place.
+#if defined(OS_CHROMEOS)
+  NOTREACHED();
+#else
+  settings_utils::ShowNetworkProxySettings(web_ui()->GetWebContents());
+#endif
 }
 
 }  // namespace settings
diff --git a/chrome/browser/ui/webui/settings_utils.h b/chrome/browser/ui/webui/settings_utils.h
new file mode 100644
index 0000000..9f95aa4
--- /dev/null
+++ b/chrome/browser/ui/webui/settings_utils.h
@@ -0,0 +1,24 @@
+// Copyright 2016 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#ifndef CHROME_BROWSER_UI_WEBUI_SETTINGS_UTILS_H_
+#define CHROME_BROWSER_UI_WEBUI_SETTINGS_UTILS_H_
+
+#include "base/macros.h"
+
+namespace content {
+class WebContents;
+}
+
+namespace settings_utils {
+
+// Invoke UI for network proxy settings.
+void ShowNetworkProxySettings(content::WebContents* web_contents);
+
+// Invoke UI for SSL certificates.
+void ShowManageSSLCertificates(content::WebContents* web_contents);
+
+}  // namespace settings_utils
+
+#endif  // CHROME_BROWSER_UI_WEBUI_SETTINGS_UTILS_H_
diff --git a/chrome/browser/ui/webui/options/advanced_options_utils_linux.cc b/chrome/browser/ui/webui/settings_utils_linux.cc
similarity index 94%
rename from chrome/browser/ui/webui/options/advanced_options_utils_linux.cc
rename to chrome/browser/ui/webui/settings_utils_linux.cc
index cd54152..5293048 100644
--- a/chrome/browser/ui/webui/options/advanced_options_utils_linux.cc
+++ b/chrome/browser/ui/webui/settings_utils_linux.cc
@@ -1,10 +1,10 @@
-// Copyright 2013 The Chromium Authors. All rights reserved.
+// Copyright 2016 The Chromium Authors. All rights reserved.
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
 #if !defined(OS_CHROMEOS)
 
-#include "chrome/browser/ui/webui/options/advanced_options_utils.h"
+#include "chrome/browser/ui/webui/settings_utils.h"
 
 #include <stddef.h>
 
@@ -26,9 +26,8 @@
 using content::BrowserThread;
 using content::OpenURLParams;
 using content::Referrer;
-using content::WebContents;
 
-namespace options {
+namespace settings_utils {
 
 // Command used to configure GNOME 2 proxy settings.
 const char* kGNOME2ProxyConfigCommand[] = {"gnome-network-properties", NULL};
@@ -59,7 +58,7 @@
       GURL(kLinuxProxyConfigUrl), Referrer(), NEW_FOREGROUND_TAB,
       ui::PAGE_TRANSITION_LINK, false);
 
-  WebContents* web_contents =
+  content::WebContents* web_contents =
       tab_util::GetWebContentsByID(render_process_id, render_view_id);
   if (web_contents)
     web_contents->OpenURL(params);
@@ -157,14 +156,13 @@
 
 }  // anonymous namespace
 
-void AdvancedOptionsUtilities::ShowNetworkProxySettings(
-    WebContents* web_contents) {
+void ShowNetworkProxySettings(content::WebContents* web_contents) {
   BrowserThread::PostTask(BrowserThread::FILE, FROM_HERE,
       base::Bind(&DetectAndStartProxyConfigUtil,
                  web_contents->GetRenderProcessHost()->GetID(),
                  web_contents->GetRenderViewHost()->GetRoutingID()));
 }
 
-}  // namespace options
+}  // namespace settings_utils
 
 #endif  // !defined(OS_CHROMEOS)
diff --git a/chrome/browser/ui/webui/options/advanced_options_utils_mac.mm b/chrome/browser/ui/webui/settings_utils_mac.mm
similarity index 75%
rename from chrome/browser/ui/webui/options/advanced_options_utils_mac.mm
rename to chrome/browser/ui/webui/settings_utils_mac.mm
index c294b86..1f68f49 100644
--- a/chrome/browser/ui/webui/options/advanced_options_utils_mac.mm
+++ b/chrome/browser/ui/webui/settings_utils_mac.mm
@@ -1,21 +1,18 @@
-// Copyright (c) 2012 The Chromium Authors. All rights reserved.
+// Copyright 2016 The Chromium Authors. All rights reserved.
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
 #import <Cocoa/Cocoa.h>
 
-#include "chrome/browser/ui/webui/options/advanced_options_utils.h"
+#include "chrome/browser/ui/webui/settings_utils.h"
 
 #include "base/logging.h"
 #include "base/mac/mac_logging.h"
 #include "base/mac/scoped_aedesc.h"
 
-using content::WebContents;
+namespace settings_utils {
 
-namespace options {
-
-void AdvancedOptionsUtilities::ShowNetworkProxySettings(
-      WebContents* web_contents) {
+void ShowNetworkProxySettings(content::WebContents* web_contents) {
   NSArray* itemsToOpen = [NSArray arrayWithObject:[NSURL fileURLWithPath:
       @"/System/Library/PreferencePanes/Network.prefPane"]];
 
@@ -35,8 +32,7 @@
   LSOpenFromURLSpec(&launchSpec, NULL);
 }
 
-void AdvancedOptionsUtilities::ShowManageSSLCertificates(
-      WebContents* web_contents) {
+void ShowManageSSLCertificates(content::WebContents* web_contents) {
   NSString* const kKeychainBundleId = @"com.apple.keychainaccess";
   [[NSWorkspace sharedWorkspace]
    launchAppWithBundleIdentifier:kKeychainBundleId
@@ -45,4 +41,4 @@
    launchIdentifier:nil];
 }
 
-}  // namespace options
+}  // namespace settings_utils
diff --git a/chrome/browser/ui/webui/options/advanced_options_utils_win.cc b/chrome/browser/ui/webui/settings_utils_win.cc
similarity index 91%
rename from chrome/browser/ui/webui/options/advanced_options_utils_win.cc
rename to chrome/browser/ui/webui/settings_utils_win.cc
index 7c5c16c..69bc3c8 100644
--- a/chrome/browser/ui/webui/options/advanced_options_utils_win.cc
+++ b/chrome/browser/ui/webui/settings_utils_win.cc
@@ -2,7 +2,7 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "chrome/browser/ui/webui/options/advanced_options_utils.h"
+#include "chrome/browser/ui/webui/settings_utils.h"
 
 #include <windows.h>
 #include <cryptuiapi.h>
@@ -23,9 +23,8 @@
 #include "ui/views/win/hwnd_util.h"
 
 using content::BrowserThread;
-using content::WebContents;
 
-namespace options {
+namespace settings_utils {
 
 namespace {
 
@@ -96,16 +95,14 @@
                SW_SHOWNORMAL);
 }
 
-void AdvancedOptionsUtilities::ShowNetworkProxySettings(
-      WebContents* web_contents) {
+void ShowNetworkProxySettings(content::WebContents* web_contents) {
   DCHECK(BrowserThread::IsMessageLoopValid(BrowserThread::FILE));
   BrowserThread::PostTask(BrowserThread::FILE,
                           FROM_HERE,
                           base::Bind(&OpenConnectionDialogCallback));
 }
 
-void AdvancedOptionsUtilities::ShowManageSSLCertificates(
-      WebContents* web_contents) {
+void ShowManageSSLCertificates(content::WebContents* web_contents) {
   HWND parent =
       views::HWNDForNativeWindow(web_contents->GetTopLevelNativeWindow());
 
@@ -115,4 +112,4 @@
       base::Bind(&base::DeletePointer<ManageCertificatesDialog>, dialog));
 }
 
-}  // namespace options
+}  // namespace settings_utils
diff --git a/chrome/chrome_browser_ui.gypi b/chrome/chrome_browser_ui.gypi
index d6107d3..8cc8155 100644
--- a/chrome/chrome_browser_ui.gypi
+++ b/chrome/chrome_browser_ui.gypi
@@ -1889,10 +1889,6 @@
       'browser/ui/webui/ntp/ntp_resource_cache.h',
       'browser/ui/webui/ntp/ntp_resource_cache_factory.cc',
       'browser/ui/webui/ntp/ntp_resource_cache_factory.h',
-      'browser/ui/webui/options/advanced_options_utils.h',
-      'browser/ui/webui/options/advanced_options_utils_linux.cc',
-      'browser/ui/webui/options/advanced_options_utils_mac.mm',
-      'browser/ui/webui/options/advanced_options_utils_win.cc',
       'browser/ui/webui/options/autofill_options_handler.cc',
       'browser/ui/webui/options/autofill_options_handler.h',
       'browser/ui/webui/options/automatic_settings_reset_handler.cc',
@@ -2039,6 +2035,10 @@
       'browser/ui/webui/settings/site_settings_handler.h',
       'browser/ui/webui/settings/system_handler.cc',
       'browser/ui/webui/settings/system_handler.h',
+      'browser/ui/webui/settings_utils.h',
+      'browser/ui/webui/settings_utils_linux.cc',
+      'browser/ui/webui/settings_utils_mac.mm',
+      'browser/ui/webui/settings_utils_win.cc',
       'browser/ui/webui/signin/get_auth_frame.cc',
       'browser/ui/webui/signin/get_auth_frame.h',
       'browser/ui/webui/signin/login_ui_service.cc',