# Accessibility

Information on features for people with disabilities.

- Information
- Documents

## Information

KeePass is developed with accessibility in mind. We strive for a good usability for people with disabilities.

Examples:

- Keyboard:
  - All input can be performed using a keyboard (without a mouse or other input device).
  - The main window supports many keyboard shortcuts.
  - Menu commands and dialog controls have access keys (indicated by an underlined character when pressing the ``Alt`` key).
  - Standard keys and key combinations are supported (``Enter``/``Esc`` for closing a dialog, ``Ctrl`+`C`` for copying data into the clipboard, ``Ctrl`+`F`` for finding data, etc.).
  - Windows/dialogs have a reasonable tab order.
- Color:
  - KeePass uses the theme (color scheme, fonts, ...) of the operating system. All themes (including dark ones and ones with high contrast) are supported.
    See also: 'Does the GUI support dark themes?'.
  - Different menu and toolbar styles are supported (selectable in the KeePass 2.x options dialog; main menu 'Tools' → 'Options' → tab 'Interface (2)').
    See also: 'Menu/Toolbar Style Survey'.
  - Different dialog banner styles are supported (selectable in the KeePass 2.x options dialog).
  - The alternating item background color can be customized (in the KeePass options dialog).
- Font:
  - KeePass uses the theme (color scheme, fonts, ...) of the operating system. All major operating systems support changing the default user interface font.
    See also: 'How to change the GUI font (size)?'.
  - The font that is used in list controls can be customized (in the KeePass options dialog). By default, the default font of the framework/system is used.
  - The font that is used in password edit controls can be customized (in the KeePass options dialog). By default, the default monospace font of the framework/system is used.
- Scaling (high DPI):
  - Scaling the user interface via the DPI setting of the operating system is supported.
  - When a dialog or menu does not fit onto the current screen (e.g. due to a high DPI value or a large font), KeePass 2.x provides scrollbars or buttons for scrolling.
- Assistive technology:
  - KeePass can be controlled via assistive technology applications. Standard accessibility APIs are supported.
  - Most controls in KeePass are standard controls that are provided by the framework/system.
  - KeePass 2.x features an option 'Optimize for screen reader' (in the main menu 'Tools' → 'Options' → tab 'Advanced'). If this option is activated or if KeePass detects a screen reader automatically (via '`SystemParametersInfo`' with '`SPI_GETSCREENREADER`'), various optimizations for screen readers are performed, including but not limited to:
    - Assignment of an accessible name for more controls. Enhancement of certain accessible names.
    - Assignment of an accessible role for certain controls.
    - Improved control tree (e.g. for assistive technology applications based on UI Automation).
    The option is deactivated by default and should be activated only by users who are using a screen reader, because it decreases the performance of the application and provides no benefits for users without a screen reader.
- Documentation and website:
  - Each page has a meaningful title.
  - Semantic HTML tags ('`nav`', '`footer`', '`h1`', '`ul`', etc.) are used.
  - Images that convey information have an alternative text ('`alt`' attribute). Decorative images have an empty alternative text.

## Documents

We value accessibility. However, we do not provide any documents (certifications, reports, completed questionnaires, conformance statements, etc., except this help page) related to accessibility, because there typically are legal and conceptual uncertainties/ambiguities with such documents.