docs/accessibility/os/disable_internal_touchpad.md
To prevent accidental clicks and improve the experience for external mouse users, ChromeOS allows you to disable the built-in touchpad. This accessibility feature offers options for always-off or disabling the touchpad only when a mouse is connected.
ChromeOS allows users to disable the built-in touchpad through the accessibility settings. Here's the user flow:
Navigate to Settings: Go to Accessibility > Cursor and touchpad > Disable internal touchpad.
Choose a mode: Select one of the following options:
Device Page: The touchpad's status (enabled/disabled) is also reflected in the Devices page.
"When a mouse is connected" mode specifics:
The internal touchpad disabling feature in ChromeOS is implemented using Event Rewriters. Event Rewriters intercept and modify event streams, allowing the system to selectively block touchpad input.
Key Components:
Settings Tests: Verify that user selections in the "Cursor and touchpad" settings page correctly update the underlying preferences.
DisableTouchpadEventRewriter Tests: Validate the core logic of the DisableTouchpadEventRewriter, ensuring it correctly disables and enables the touchpad based on different scenarios (mode selection, mouse connection status, etc.).
AccessibilityController Tests: Confirm that the AccessibilityController correctly manages the display of confirmation dialogs and notifications to the user.