Rust Hover Preview is a Windows 11 system tray app that shows instant image and video previews in File Explorer when you hover files with the mouse or navigate with the keyboard.
Inspired by QTTabBar (QuizoApps) hover preview.
Showcase.webm
- Mouse-hover and keyboard-navigation previews in Explorer
- Static image previews plus animated GIF playback and libwebp-backed animated WebP playback
- Video previews through FFmpeg (
ffplay+ffprobe) - Tray controls for enable/disable, delay, positioning, startup, off-trigger key, and volume
- Explorer Shell view detection, folder caching, and path normalization for reliable hover matching
- Topmost, non-activating preview windows designed to avoid focus stealing
jpg, jpeg, png, gif, bmp, ico, tiff, tif, webp
mp4, webm, mkv, avi, mov, wmv, flv, m4v
Download prebuilt assets from the repository Releases tab:
- Open Releases
- Download one of the latest assets:
.msiinstaller (recommended for most users).exeportable build
- If you downloaded
.msi, run the installer. It installs to%LOCALAPPDATA%\rust-hover-preview. If you downloaded.exe, place it in any folder you prefer (for example:C:\Tools\RustHoverPreview) - Launch Rust Hover Preview
No Rust toolchain is needed when installing from Releases.
Video previews require ffplay and ffprobe available in PATH.
winget install --id Gyan.FFmpeg -eThen reopen your terminal and verify:
ffplay -version
ffprobe -version- Download a Windows FFmpeg build from https://ffmpeg.org/download.html
- Extract it to a location such as
C:\ffmpeg - Add
C:\ffmpeg\binto your userPATH - Open a new terminal and run:
ffplay -version
ffprobe -version- Start the app (tray icon appears)
- Hover media files in Explorer to preview them
- Use keyboard navigation in Explorer (arrow keys/tab) to trigger focused-item previews
- Right-click the tray icon to configure behavior
- Enable Preview: Turn previews on or off
- Preview Delay:
Instant (0 ms),Fast (200 ms),Medium (500 ms),Relaxed (750 ms),Slow (1000 ms) - Same File Rehover Delay: delay before the same file can preview again after the preview self-dismisses
- Video Volume:
Max (100%),High (80%),Medium (50%),Low (25%),Very Low (10%),Mute (0%) - Preview Position:
Follow CursororBest Position - Transparent Background:
Transparent,Black,White, orCheckerboard - Enable Off Trigger Key: Temporarily suppress previews while the displayed configured key is held
- Run at Startup: Add/remove startup entry in Windows
- Edit Config.ini: Open configuration file in your default editor
- Exit: Close the application
Settings are stored at:
%APPDATA%\rust-hover-preview\config.ini
Example:
[settings]
run_at_startup=true
hover_delay_ms=0
same_file_rehover_delay_ms=750
preview_enabled=true
enable_off_trigger_key=true
off_trigger_key=alt
follow_cursor=false
transparent_background=transparent
video_volume=0When enable_off_trigger_key is enabled, hold the configured off_trigger_key to keep previews hidden while browsing Explorer.
- Windows 11
- Rust toolchain 1.70+
- Visual Studio Build Tools (MSVC)
- Windows SDK
# Debug
cargo build
# Release
cargo build --releaseRelease binary output:
target/release/rust-hover-preview.exe
- Uses Windows accessibility APIs (MSAA + UI Automation) to resolve hovered/focused Explorer items
- Uses Shell COM APIs to identify active Explorer windows and folders
- Uses GDI for image rendering in a layered topmost preview window
- Uses Google's libwebp through
webp-animationfor animated WebP decoding - Uses
directoriesfor Windows roaming configuration paths - Uses
ffprobefor video dimensions andffplayfor video playback - Uses the registry (
HKCU\Software\Microsoft\Windows\CurrentVersion\Run) for startup control
MIT. See LICENSE.