summaryrefslogtreecommitdiffstats
path: root/chrome
diff options
context:
space:
mode:
authorsky@chromium.org <sky@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-09-15 20:21:53 +0000
committersky@chromium.org <sky@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-09-15 20:21:53 +0000
commit2627431bef905332e55a90960aed8049b681689f (patch)
tree4d15c42eb95a48241e2bc9a109bbb77c3eafad00 /chrome
parentd328413b739ed1150369743a64cacfb167086a32 (diff)
downloadchromium_src-2627431bef905332e55a90960aed8049b681689f.zip
chromium_src-2627431bef905332e55a90960aed8049b681689f.tar.gz
chromium_src-2627431bef905332e55a90960aed8049b681689f.tar.bz2
Lands http://codereview.chromium.org/193032 for Charlie:
First pass at adding ChromeOS settings - a mock wifi selector combobox - touchpad settings that makes calls to synclient - on startup, touchpad settings are initialized to what's stored in preferences TEST=none BUG=none Review URL: http://codereview.chromium.org/203073 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@26259 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome')
-rw-r--r--chrome/app/generated_resources.grd19
-rw-r--r--chrome/browser/chromeos/settings_page_view.cc7
-rw-r--r--chrome/browser/chromeos/settings_page_view.h7
-rw-r--r--chrome/browser/options_util.cc4
-rw-r--r--chrome/browser/profile.cc14
-rw-r--r--chrome/browser/profile.h8
-rw-r--r--chrome/chrome.gyp8
-rw-r--r--chrome/common/pref_names.cc10
-rw-r--r--chrome/common/pref_names.h4
9 files changed, 75 insertions, 6 deletions
diff --git a/chrome/app/generated_resources.grd b/chrome/app/generated_resources.grd
index fe464c4..bb6ed9e 100644
--- a/chrome/app/generated_resources.grd
+++ b/chrome/app/generated_resources.grd
@@ -5031,6 +5031,25 @@ Keep your key file in a safe place. You will need it to create new versions of y
</message>
</if>
+ <!-- Chrome OS Strings -->
+ <if expr="pp_ifdef('chromeos')">
+ <message name="IDS_OPTIONS_SETTINGS_SECTION_TITLE_NETWORK">
+ Network
+ </message>
+ <message name="IDS_OPTIONS_SETTINGS_SECTION_TITLE_TOUCHPAD">
+ Touchpad
+ </message>
+ <message name="IDS_OPTIONS_SETTINGS_SECTION_TITLE_PASSWORD">
+ Network Password
+ </message>
+ <message name="IDS_OPTIONS_SETTINGS_TAP_TO_CLICK_ENABLED_DESCRIPTION" desc="In the settings tab, the text next to the checkbox that enables tap-to-click.">
+ Enable tap-to-click
+ </message>
+ <message name="IDS_OPTIONS_SETTINGS_VERT_EDGE_SCROLL_ENABLED_DESCRIPTION" desc="In the settings tab, the text next to the checkbox that enables vertical edge scrolling.">
+ Enable vertical edge scrolling
+ </message>
+ </if>
+
</messages>
</release>
</grit>
diff --git a/chrome/browser/chromeos/settings_page_view.cc b/chrome/browser/chromeos/settings_page_view.cc
index bfbb46f..9c19c34 100644
--- a/chrome/browser/chromeos/settings_page_view.cc
+++ b/chrome/browser/chromeos/settings_page_view.cc
@@ -4,6 +4,7 @@
#include "chrome/browser/chromeos/settings_page_view.h"
+#include "chrome/browser/chromeos/settings_contents_view.h"
#include "views/controls/label.h"
#include "views/fill_layout.h"
#include "views/widget/widget_gtk.h"
@@ -29,7 +30,7 @@ GtkWidget* SettingsPageView::WrapInGtkWidget() {
}
void SettingsPageView::InitControlLayout() {
- // Remove this and add the real views we want. We'll likely need to make this
- // scrollable as well.
- AddChildView(new views::Label(L"Implement me"));
+ // We'll likely need to make this scrollable
+ settings_contents_view_ = new SettingsContentsView(profile());
+ AddChildView(settings_contents_view_);
}
diff --git a/chrome/browser/chromeos/settings_page_view.h b/chrome/browser/chromeos/settings_page_view.h
index b512fea..3d7004d 100644
--- a/chrome/browser/chromeos/settings_page_view.h
+++ b/chrome/browser/chromeos/settings_page_view.h
@@ -5,9 +5,11 @@
#ifndef CHROME_BROWSER_CHROMEOS_SETTINGS_PAGE_VIEW_H_
#define CHROME_BROWSER_CHROMEOS_SETTINGS_PAGE_VIEW_H_
+#include <gtk/gtk.h>
+
#include "chrome/browser/views/options/options_page_view.h"
-#include <gtk/gtk.h>
+class SettingsContentsView;
// Settings page for Chrome OS.
class SettingsPageView : public OptionsPageView {
@@ -23,6 +25,9 @@ class SettingsPageView : public OptionsPageView {
virtual void InitControlLayout();
private:
+ // Controls for the Settings page
+ SettingsContentsView* settings_contents_view_;
+
DISALLOW_COPY_AND_ASSIGN(SettingsPageView);
};
diff --git a/chrome/browser/options_util.cc b/chrome/browser/options_util.cc
index fe985de..fe588cb 100644
--- a/chrome/browser/options_util.cc
+++ b/chrome/browser/options_util.cc
@@ -30,6 +30,10 @@ void OptionsUtil::ResetToDefaults(Profile* profile) {
prefs::kSSL3Enabled,
prefs::kTLS1Enabled,
#endif
+#if defined(OS_CHROMEOS)
+ prefs::kTapToClickEnabled,
+ prefs::kVertEdgeScrollEnabled,
+#endif
prefs::kDownloadDefaultDirectory,
prefs::kDownloadExtensionsToOpen,
prefs::kEnableSpellCheck,
diff --git a/chrome/browser/profile.cc b/chrome/browser/profile.cc
index de7f949..85b809b 100644
--- a/chrome/browser/profile.cc
+++ b/chrome/browser/profile.cc
@@ -57,6 +57,10 @@
#include "chrome/browser/gtk/gtk_theme_provider.h"
#endif
+#if defined(OS_CHROMEOS)
+#include "chrome/browser/chromeos/touchpad.h"
+#endif
+
using base::Time;
using base::TimeDelta;
@@ -597,6 +601,10 @@ ProfileImpl::ProfileImpl(const FilePath& path)
ssl_config_service_manager_.reset(
SSLConfigServiceManager::CreateDefaultManager(this));
+
+#if defined(OS_CHROMEOS)
+ touchpad_.Init(prefs);
+#endif
}
void ProfileImpl::InitExtensions() {
@@ -849,6 +857,12 @@ PrefService* ProfileImpl::GetPrefs() {
// register known prefs as soon as possible.
Profile::RegisterUserPrefs(prefs_.get());
ProfileManager::RegisterUserPrefs(prefs_.get());
+#if defined(OS_CHROMEOS)
+ // Register Touchpad prefs here instead of in browser_prefs because these
+ // prefs are used in the constructor of ProfileImpl which happens before
+ // browser_prefs' RegisterAllPrefs is called.
+ Touchpad::RegisterUserPrefs(prefs_.get());
+#endif
// The last session exited cleanly if there is no pref for
// kSessionExitedCleanly or the value for kSessionExitedCleanly is true.
diff --git a/chrome/browser/profile.h b/chrome/browser/profile.h
index 1769ec8..ba4dd87 100644
--- a/chrome/browser/profile.h
+++ b/chrome/browser/profile.h
@@ -18,6 +18,10 @@
#include "chrome/browser/web_resource/web_resource_service.h"
#include "chrome/common/notification_registrar.h"
+#if defined(OS_CHROMEOS)
+#include "chrome/browser/chromeos/touchpad.h"
+#endif
+
namespace net {
class StrictTransportSecurityState;
class SSLConfigService;
@@ -521,6 +525,10 @@ class ProfileImpl : public Profile,
// GetSessionService won't recreate the SessionService.
bool shutdown_session_service_;
+#if defined(OS_CHROMEOS)
+ Touchpad touchpad_;
+#endif
+
DISALLOW_COPY_AND_ASSIGN(ProfileImpl);
};
diff --git a/chrome/chrome.gyp b/chrome/chrome.gyp
index c45a581..bf939fb 100644
--- a/chrome/chrome.gyp
+++ b/chrome/chrome.gyp
@@ -861,12 +861,16 @@
'browser/chromeos/pipe_reader.h',
'browser/chromeos/external_cookie_handler.cc',
'browser/chromeos/external_cookie_handler.h',
- 'browser/chromeos/gview_request_interceptor.cc',
- 'browser/chromeos/gview_request_interceptor.h',
+ 'browser/chromeos/gview_request_interceptor.cc',
+ 'browser/chromeos/gview_request_interceptor.h',
+ 'browser/chromeos/settings_contents_view.cc',
+ 'browser/chromeos/settings_contents_view.h',
'browser/chromeos/settings_page_view.cc',
'browser/chromeos/settings_page_view.h',
'browser/chromeos/status_area_view.cc',
'browser/chromeos/status_area_view.h',
+ 'browser/chromeos/touchpad.cc',
+ 'browser/chromeos/touchpad.h',
'browser/cocoa/about_window_controller.h',
'browser/cocoa/about_window_controller.mm',
'browser/cocoa/autocomplete_text_field.h',
diff --git a/chrome/common/pref_names.cc b/chrome/common/pref_names.cc
index 4294aaa..4ee3cb7 100644
--- a/chrome/common/pref_names.cc
+++ b/chrome/common/pref_names.cc
@@ -203,6 +203,16 @@ extern const wchar_t kSSL3Enabled[] = L"ssl.ssl3.enabled";
extern const wchar_t kTLS1Enabled[] = L"ssl.tls1.enabled";
#endif
+#if defined(OS_CHROMEOS)
+// A boolean pref set to true if TapToClick is being done in browser.
+extern const wchar_t kTapToClickEnabled[] =
+ L"settings.touchpad.enable_tap_to_click";
+
+// A boolean pref set to true if VertEdgeScroll is being done in browser.
+extern const wchar_t kVertEdgeScrollEnabled[] =
+ L"settings.touchpad.enable_vert_edge_scroll";
+#endif
+
// The disabled messages in IPC logging.
const wchar_t kIpcDisabledMessages[] = L"ipc_log_disabled_messages";
diff --git a/chrome/common/pref_names.h b/chrome/common/pref_names.h
index 80f34d5..18c7d45 100644
--- a/chrome/common/pref_names.h
+++ b/chrome/common/pref_names.h
@@ -71,6 +71,10 @@ extern const wchar_t kSSL2Enabled[];
extern const wchar_t kSSL3Enabled[];
extern const wchar_t kTLS1Enabled[];
#endif
+#if defined(OS_CHROMEOS)
+extern const wchar_t kTapToClickEnabled[];
+extern const wchar_t kVertEdgeScrollEnabled[];
+#endif
extern const wchar_t kIpcDisabledMessages[];
extern const wchar_t kShowHomeButton[];
extern const wchar_t kShowPageOptionsButtons[];