A customizable crosshair overlay application designed to help visually impaired users locate their mouse cursor on screen.
v1.14.3 - 2026-06-03
Added
- Tray Help submenu with three entries: User Manual (opens the online
manual), Send Support Email (opens your mail client pre-filled with
system info), and Open Crash Dumps Folder (jumps to
%LocalAppData%\MouseCross\CrashDumps\). - SupportEmail helper: builds a
mailto:support@slohmaier.comURL with an auto-gathered system info block (MouseCross version, OS, locale, monitor count, license tier).
v1.14.1 - 2026-05-30
Changed
- The installer now closes a running MouseCross automatically before updating (gracefully, then forcibly if needed) instead of asking you to close it by hand.
v1.14.0
Added
- Automatic updates (Windows). MouseCross now checks for new versions in the background (WinSparkle) and can install signed updates, plus a "Check for Updates…" tray entry.
Changed
- License activation now goes through slohmaier.com's license server (lic.slohmaier.com), which returns a cryptographically signed, machine-bound entitlement verified offline — hardened against tampering and key sharing. The 7-day trial is unchanged.
v1.13.1
Fixed
- Installer now code-signs MouseCross and launches it correctly after setup.
v1.13.0 shipped an unsigned build with a
uiAccessmanifest, which Windows refuses to start ("CreateProcess failed; code 740" / "A referral was returned from the server"). The post-install launch now goes through ShellExecute and the executable is Authenticode-signed, so it starts normally on machines that trust the signing certificate.
v1.13.0
Added
- License status is now visible throughout the app. The system-tray menu shows your current state ("Trial - N days remaining" or "Licensed"), and the Welcome and About dialogs show the same one-line status. A new Manage License… entry in the tray menu lets you enter or review your license key at any time — no need to wait for the trial to expire.
Fixed
- About dialog no longer clips its text. The description and feature list are now shown in a scrollable, read-only field, so the full content (including the global hotkey line) is always reachable.
- Installer: the post-install "Launch MouseCross" option no longer triggers an elevation error. The launch step now drops back to the original (non-elevated) user, matching MouseCross's uiAccess manifest.
v1.11.1
Windows UI
- Fixed crosshair tracking on multi-monitor setups — the overlay spans
the virtual screen (which can start at negative coordinates when a
secondary monitor sits left of or above the primary), but the cursor
position from
GetCursorPos()was being used directly as a bitmap- local coordinate. On single-monitor systems the virtual origin is(0, 0), so the bug was invisible; with a secondary monitor offset the crosshair drew at the wrong location relative to the cursor.Paint()now subtractsSM_XVIRTUALSCREEN/SM_YVIRTUALSCREENso the crosshair always renders centered on the actual cursor on every display.
v1.11.0
Localization
- The Settings dialog rework (CROSSHAIR / BEHAVIOR / HOTKEYS sections, language picker, dual hotkey settings) is now fully translated into Spanish, French, Italian, Japanese, Dutch and Portuguese. English and German shipped in v1.10.0; this brings all eight supported languages to parity for the new dialog copy.
v1.10.0
Windows UI
- Settings dialog rework — Single-column scrollable layout mirroring the
macOS
SettingsWindowController. Sections (CROSSHAIR / BEHAVIOR / HOTKEYS) replace the old two-column GROUPBOX layout. Dialog is compact (280×200 du) and resizable;CapDialogToWorkAreashrinks it further on small screens at high DPI. Tab navigation auto-scrolls focus into view. Bottom button bar (Restore Defaults / OK / Cancel) stays anchored while content scrolls past it;SetWindowRgnclipping +WS_CLIPSIBLINGS+ Z-top buttons prevent scrolled controls from bleeding through the button strip. - Language change confirmation — Changing the language picker now prompts
a custom DarkMode-aware confirmation dialog (
IDD_LANG_CONFIRM) rendered in the new language so a screen reader can speak it. Default focus is on No, so a Tab+arrow accident in the combo can't lock the user out of a language they read. Replaces the systemMessageBoxWwhich always rendered in the light theme.
Removed
- macOS: Find My Mouse / double-tap-Ctrl spotlight overlay (
SpotlightWindow+SpotlightManager). The feature added complexity without sufficient user demand. - Settings export/import: the half-removed v1.9 feature is fully gone now (six orphaned localization keys cleaned up across 8 locales).
Cross-platform parity
- Direction-arrow spacing now uses the same semantics on both platforms: a direct multiplier in the 0.1–5.0 range, default 1.0. The macOS slider previously stored a percent-increase (default 5.0 → 1.05× multiplier); existing values are migrated automatically.
- macOS tray menu gains a "Toggle Theme" entry, matching the Windows tray.
Windows bug fixes
- "Cursor offset" slider in Settings now actually changes the rendered offset — previously the renderer ignored the value and used a hardcoded 49.
- Four crosshair settings (
cursorOffset,thicknessGrowth,circleSpacing,showDirectionIndicators) are now persisted to the registry; they previously reset to defaults on every restart. - Theme-toggle hotkey default changed from Ctrl+Alt+Shift+X to Ctrl+Alt+X, matching what the tray menu has always advertised. Users who customised the hotkey are unaffected.
macOS bug fixes
- Settings load no longer treats "0" as "use default". This fixes the spacing slider being silently reset to 1.0 when the user picked the minimum value.
v1.9.3
Bug Fixes
- macOS: Stop double-scaling crosshair thickness on HiDPI displays — Retina lines no longer render twice as thick as configured.
- macOS: Switch to
cgAnnotatedSessionEventTapto catch UP0D-injected mouse events (touchscreen / pen-tablet drivers) — previously some hardware paths bypassed the regular event tap and the crosshair stayed put while the cursor moved. - macOS: Move CGEvent tap to the annotated-session level — fixes the same UP0D class of issues for the entry path that's still on the default tap.
- Windows / VM compatibility: Add fallback polling timer for environments where the WH_MOUSE_LL low-level hook can't deliver events (VMware, RDP). The hook stays primary; the timer activates only when the hook is starved.
Performance
- macOS: Event-driven tracking with dirty-rect repaints, color cache, and adaptive segment count — replaces the previous wholesale NSView redraw on every mouse move.
- macOS: Replace full-screen NSView redraws with two thin CALayer sublayers (one per crosshair arm) — Core Animation handles the compositing on the GPU instead of the CPU.
- macOS: Replace CVDisplayLink-based vsync coalescing with an inline rate-cap (120 Hz) + jitter filter — simpler, fewer dependencies, identical perceived smoothness.
v1.9.2
Performance
- Windows: Replace polling timer with
WH_MOUSE_LLlow-level mouse hook — events fire on actual mouse movement instead of at fixed intervals. - Windows: Paint-pipeline optimization — 29–54 % faster frame times across the supported render shapes (measured via the new bench harness).
v1.9.1
Bug Fixes
- macOS: Light theme colors now exactly match Windows implementation
- White preset: corrected to RGB(64,64,64) on light backgrounds
- Yellow preset: corrected to RGB(180,120,0) on light backgrounds
- Red preset: corrected to RGB(160,0,0) on light backgrounds
v1.9.0
Features
- Theme Toggle Hotkey: New configurable hotkey (default: Cmd+Option+X on macOS / Ctrl+Alt+Shift+X on Windows) to quickly switch between dark and light theme
- Theme Hotkey Behavior: Hotkey toggles dark ↔ light only; "Follow System" is set via the Settings dialog
- Color Presets: Replaced free color picker with three high-contrast presets — White, Yellow, Red — for predictable visibility on any background
- System Theme Support: Crosshair can automatically follow the OS light/dark mode setting
Changes
- Theme toggle cycles dark ↔ light (system theme only selectable via Settings, not via hotkey)
- Settings import/export includes new color preset and theme hotkey configuration
v1.4.1
Bug Fixes
- Fix German translation encoding (umlauts ä, ö, ü now display correctly in dialogs and menus)
v1.4.0
Changes
- Simplified crosshair to arrow-style direction indicators only (removed shape selection)
- New minimalist black and white app icon design
- Auto-generate AppIcon.appiconset during icon generation
v1.3.0
Features
Core Functionality
- Crosshair Overlay: Transparent overlay that follows your mouse cursor
- Multiple Shapes: Circle, Arrow, Cross, and Diamond crosshair styles
- Customizable Appearance: Adjustable size, color, and opacity settings
- Inverted Mode: Uses composition blending for visibility on any background
- Click-Through: Crosshair doesn't interfere with normal mouse operations
User Interface
- System Tray Integration: Runs quietly in the background with menu bar access
- Settings Dialog: Comprehensive configuration options with live preview
- Welcome Screen: First-run introduction to features and setup
- Keyboard Shortcuts: Configurable global hotkey (default: Ctrl+Alt+Shift+C on Windows, customizable on macOS)
Platform Support
- Windows: Native Win32 implementation for Windows 10/11 (x64, ARM64)
- macOS: Native Swift/Cocoa implementation for Intel and Apple Silicon
Accessibility Features
- Designed for Visual Impairments: Specifically created for users with tunnel vision and other visual challenges
- High Contrast Options: Configurable colors and inversion for maximum visibility
- Auto-Start Support: Optional system startup integration
- Screen Reader Support: Accessible controls with keyboard navigation
- Non-Intrusive: Minimal resource usage and background operation
- Localization: 8 languages (English, German, Spanish, French, Portuguese, Italian, Dutch, Japanese)
Installation
macOS
- Download from Mac App Store
- Or build from source:
scons install
Windows
- Download standalone executable from GitHub releases
- Portable - no installation required
System Requirements
- macOS: 10.14 (Mojave) or later
- Windows: Windows 10 or later
Support
Visit slohmaier.com/mousecross for documentation and support.