Skip to content

Features Overview

ControlNav provides powerful features for navigating Windows applications efficiently with a screen reader.

Core Features

Control Listing

Instantly view all controls in any Windows application:

  • Buttons, checkboxes, radio buttons
  • Text fields, combo boxes, list items
  • Links, tabs, tree items
  • All UI Automation-supported controls

Press Ctrl+Alt+L from any application to see the complete list.

Real-Time Search

Filter controls as you type:

  • Case-insensitive search
  • Partial word matching
  • Instant results
  • Automatic selection of first match

Arrow Key Navigation

Navigate while typing:

  • Up/Down arrows work in the search box
  • No need to tab to the list
  • Selection changes are announced by screen readers
  • Text cursor stays in place

Three Interaction Modes

Choose how to interact with controls:

  1. Click - Invokes the control (default for buttons)
  2. Double Click - Toggles or activates (for checkboxes, list items)
  3. Focus - Brings keyboard focus to the control (for edit boxes)

Set your preferred default action in Settings.

Lazy Loading

Responsive UI even with large applications:

  • Controls are enumerated in a background thread
  • The window appears immediately while controls load progressively
  • Status bar shows loading progress
  • You can start typing to filter even before all controls are loaded
  • Works smoothly with applications that have 1000+ controls

System Tray Integration

Runs in the background:

  • Minimal system resources
  • Always available via shortcut
  • Context menu for quick access
  • Settings, About, and Exit options

Dark Mode

Automatically follows your Windows theme:

  • Detects Windows dark/light mode setting
  • Applies dark styling to all windows and controls
  • Dark mode for control list, settings, welcome, and about windows
  • No configuration needed - just works

Multilingual Support

Available in 8 languages:

  • English (US)
  • Deutsch (German)
  • Español (Spanish)
  • Français (French)
  • 日本語 (Japanese)
  • Português (Portuguese)
  • Italiano (Italian)
  • Nederlands (Dutch)

Change language in Settings - takes effect immediately.

Screen Reader Support

Fully accessible:

  • Native Windows UIA support
  • JAWS compatible
  • NVDA compatible
  • Windows Narrator compatible
  • All controls properly labeled
  • Selection changes announced automatically

Persistent Settings

Your preferences are saved:

  • Default action (Click/Double Click/Focus)
  • Auto-start with Windows
  • Language preference
  • Shortcut configuration
  • Stored in Windows Registry (persists across restarts)

Privacy & Security

Respects your privacy:

  • No data collection
  • No internet access required
  • No telemetry or analytics
  • All settings stored locally in Windows Registry

Performance

Lightweight and fast:

  • ~60 KB executable size
  • Minimal memory footprint
  • No background scanning
  • Only activates when you press the shortcut
  • Background thread enumeration for responsive UI

Application Compatibility

ControlNav works with any Windows application that supports Microsoft UI Automation. It has been tested with 10 different UI frameworks:

Fully Supported

Framework Notes
WPF Native UIA support - best compatibility
WinForms Native Win32 controls with built-in UIA
Win32 Direct Win32 API support
WinUI 3 Full native UIA support
.NET MAUI Renders via WinUI 3 on Windows
Electron Chromium accessibility provider
Qt / PySide Native UIA provider (since Qt 5.11)
wxPython HWND fallback for broken UIA trees

Partially Supported

Framework Requirements
Java Swing Requires Java Access Bridge (JAB) to be enabled
GTK Requires ATK-to-UIA bridge

Known Limitations

Framework Issue
Tkinter No native Windows accessibility support

How Compatibility Works

ControlNav uses two strategies to discover controls:

  1. UI Automation Tree Walker (primary) - Walks the standard UIA tree exposed by the application. Works with all frameworks that implement UIA providers (WPF, WinForms, Qt, Electron, WinUI 3, etc.).

  2. HWND Fallback (secondary) - When the UIA tree is broken or empty, ControlNav falls back to enumerating child windows via EnumChildWindows and retrieving UIA elements per window handle. This fixes compatibility with wxPython and similar frameworks.

Common Applications

ControlNav works well with:

  • Web browsers (Chrome, Edge, Firefox) - discovers web page controls
  • Microsoft Office - ribbon buttons, form controls, windows
  • Windows Settings - all modern Windows UI
  • NVDA Preferences - via HWND fallback (wxPython app)
  • File Explorer - file lists, navigation, toolbar buttons

Next Steps