Index: chrome/browser/chromeos/system/input_device_settings.cc |
diff --git a/chrome/browser/chromeos/system/input_device_settings.cc b/chrome/browser/chromeos/system/input_device_settings.cc |
index d3082aaddbe400187325ce0b5f351ace55c50b72..41976584195081258449f6064407e2c16056fa19 100644 |
--- a/chrome/browser/chromeos/system/input_device_settings.cc |
+++ b/chrome/browser/chromeos/system/input_device_settings.cc |
@@ -150,6 +150,7 @@ class InputDeviceSettingsImpl : public InputDeviceSettings { |
virtual void SetTapToClick(bool enabled) OVERRIDE; |
virtual void SetThreeFingerClick(bool enabled) OVERRIDE; |
virtual void SetTapDragging(bool enabled) OVERRIDE; |
+ virtual void SetNaturalScroll(bool enabled) OVERRIDE; |
virtual void MouseExists(const DeviceExistsCallback& callback) OVERRIDE; |
virtual void UpdateMouseSettings(const MouseSettings& update) OVERRIDE; |
virtual void SetMouseSensitivity(int value) OVERRIDE; |
@@ -204,6 +205,12 @@ void InputDeviceSettingsImpl::SetTapDragging(bool enabled) { |
UpdateTouchpadSettings(settings); |
} |
+void InputDeviceSettingsImpl::SetNaturalScroll(bool enabled) { |
+ TouchpadSettings settings; |
+ settings.SetNaturalScroll(enabled); |
+ UpdateTouchpadSettings(settings); |
+} |
+ |
void InputDeviceSettingsImpl::MouseExists( |
const DeviceExistsCallback& callback) { |
DCHECK(content::BrowserThread::CurrentlyOn(content::BrowserThread::UI)); |
@@ -311,6 +318,14 @@ bool TouchpadSettings::GetTapDragging() const { |
return tap_dragging_.value(); |
} |
+void TouchpadSettings::SetNaturalScroll(bool enabled) { |
+ natural_scroll_.Set(enabled); |
+} |
+ |
+bool TouchpadSettings::GetNaturalScroll() const { |
+ return natural_scroll_.value(); |
+} |
+ |
bool TouchpadSettings::Update(const TouchpadSettings& settings, |
std::vector<std::string>* argv) { |
if (argv) |
@@ -338,6 +353,12 @@ bool TouchpadSettings::Update(const TouchpadSettings& settings, |
if (argv) |
AddTPControlArguments("tapdrag", tap_dragging_.value(), argv); |
} |
+ if (natural_scroll_.Update(settings.natural_scroll_)) { |
+ updated = true; |
+ if (argv) |
+ AddTPControlArguments("australian_scrolling", |
+ natural_scroll_.value(), argv); |
+ } |
return updated; |
} |