summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Userland/Services/WindowServer/main.cpp8
1 files changed, 7 insertions, 1 deletions
diff --git a/Userland/Services/WindowServer/main.cpp b/Userland/Services/WindowServer/main.cpp
index 05852851ba..8771a01412 100644
--- a/Userland/Services/WindowServer/main.cpp
+++ b/Userland/Services/WindowServer/main.cpp
@@ -128,7 +128,13 @@ ErrorOr<int> serenity_main(Main::Arguments)
auto& screen_input = WindowServer::ScreenInput::the();
screen_input.set_cursor_location(WindowServer::Screen::main().rect().center());
- screen_input.set_acceleration_factor(atof(wm_config->read_entry("Mouse", "AccelerationFactor", "1.0").characters()));
+ double f = atof(wm_config->read_entry("Mouse", "AccelerationFactor", "1.0").characters());
+ if (f < WindowServer::mouse_accel_min || f > WindowServer::mouse_accel_max) {
+ dbgln("Mouse.AccelerationFactor out of range resetting to 1.0");
+ f = 1.0;
+ wm_config->write_entry("Mouse", "AccelerationFactor", "1.0");
+ }
+ screen_input.set_acceleration_factor(f);
screen_input.set_scroll_step_size(wm_config->read_num_entry("Mouse", "ScrollStepSize", 4));
WindowServer::Compositor::the();