#include "chrome/browser/chromeos/system/device_change_handler.h"
-#include "base/prefs/pref_service.h"
-#include "chrome/browser/browser_process.h"
#include "chrome/browser/chromeos/system/input_device_settings.h"
-#include "chrome/browser/profiles/profile_manager.h"
-#include "chrome/common/pref_names.h"
namespace chromeos {
namespace system {
pointer_device_observer_->RemoveObserver(this);
}
-// When we detect a touchpad is attached, apply touchpad settings of the last
-// used profile.
+// When we detect a touchpad is attached, apply touchpad settings that was
+// cached inside InputDeviceSettings.
void DeviceChangeHandler::TouchpadExists(bool exists) {
if (!exists)
return;
-
- // Using GetDefaultProfile here because GetLastUsedProfile returns the
- // LoginManager profile in browser tests.
- PrefService* prefs =
- g_browser_process->profile_manager()->GetDefaultProfile()->GetPrefs();
-
- const bool tap_dragging = prefs->GetBoolean(prefs::kTapDraggingEnabled);
- system::touchpad_settings::SetTapDragging(tap_dragging);
-
- const bool three_finger_click =
- prefs->GetBoolean(prefs::kEnableTouchpadThreeFingerClick);
- system::touchpad_settings::SetThreeFingerClick(three_finger_click);
-
- const int sensitivity = prefs->GetInteger(prefs::kTouchpadSensitivity);
- system::touchpad_settings::SetSensitivity(sensitivity);
-
- // If we are not logged in, use owner preferences.
- PrefService* local_prefs = g_browser_process->local_state();
- const bool tap_to_click =
- g_browser_process->profile_manager()->IsLoggedIn() ?
- prefs->GetBoolean(prefs::kTapToClickEnabled) :
- local_prefs->GetBoolean(prefs::kOwnerTapToClickEnabled);
- system::touchpad_settings::SetTapToClick(tap_to_click);
+ system::InputDeviceSettings::Get()->ReapplyTouchpadSettings();
}
-// When we detect a mouse is attached, apply mouse settings of the last
-// used profile.
+// When we detect a mouse is attached, apply mouse settings that was cached
+// inside InputDeviceSettings.
void DeviceChangeHandler::MouseExists(bool exists) {
if (!exists)
return;
-
- // Using GetDefaultProfile here because GetLastUsedProfile returns the
- // LoginManager profile in browser tests.
- PrefService* prefs =
- g_browser_process->profile_manager()->GetDefaultProfile()->GetPrefs();
-
- const int sensitivity = prefs->GetInteger(prefs::kMouseSensitivity);
- system::mouse_settings::SetSensitivity(sensitivity);
-
- // If we are not logged in, use owner preferences.
- PrefService* local_prefs = g_browser_process->local_state();
- const bool primary_button_right =
- g_browser_process->profile_manager()->IsLoggedIn() ?
- prefs->GetBoolean(prefs::kPrimaryMouseButtonRight) :
- local_prefs->GetBoolean(prefs::kOwnerPrimaryMouseButtonRight);
- system::mouse_settings::SetPrimaryButtonRight(primary_button_right);
+ system::InputDeviceSettings::Get()->ReapplyMouseSettings();
}
} // namespace system
} // namespace chromeos
-