Skip to content

Repository files navigation

FastDisplay 0.2.0 [ALPHA-2026-05-17] — Native Display Monitoring & DPI API for Java

Status License: MIT Java Platform JitPack

🖥️ High-performance display telemetry for the FastJava ecosystem. Monitor resolution, DPI scaling, refresh rates, and orientation changes with zero latency.

FastDisplay is the dedicated display monitoring module of the FastJava ecosystem. It provides real-time events for display changes, allowing your Java application to respond instantly to resolution shifts or DPI scaling updates.

FastFileIndex Showcase


Quick Start

# Clone the repository
git clone https://github.com/andrestubbe/FastDisplay.git

# Build the native bridge
cd FastDisplay
.\compile.bat

# Launch the DisplayDemo
.\run-demo.bat


Table of Contents

Features

  • 📊 Real-Time Telemetry: Monitor Resolution, DPI, and Refresh Rate.
  • 🔔 Event Driven: Native callbacks for WM_DISPLAYCHANGE and WM_DPICHANGED.
  • 🖥️ Multi-Monitor Support: Detect and track attributes across multiple displays.
  • 🌈 EDID & HDR Capabilities (v0.2.0): Hardware-level parsing of EDID, DXGI HDR detection, and ICC color profile extraction via FastDisplayUtils.
  • 🪟 Virtual Desktops (v0.2.0): Integration with Windows Task View / Virtual Desktops through the FastDesktop sister module.
  • ⏱️ Zero Overhead: Lightweight JNI layer with no polling required.

Installation

Option 1: Maven (Recommended)

Add the JitPack repository and the dependencies to your pom.xml:

<repositories>
    <repository>
        <id>jitpack.io</id>
        <url>https://jitpack.io</url>
    </repository>
</repositories>
<dependencies>
   <dependency>
       <groupId>com.github.andrestubbe</groupId>
       <artifactId>fastdisplay</artifactId>
       <version>v0.2.0</version>
   </dependency>
   <dependency>
       <groupId>com.github.andrestubbe</groupId>
       <artifactId>fastcore</artifactId>
       <version>v0.2.0</version>
   </dependency>
</dependencies>

Option 2: Gradle (via JitPack)

repositories {
    maven { url 'https://jitpack.io' }
}
dependencies {
    implementation 'com.github.andrestubbe:fastdisplay:v0.2.0'
    implementation 'com.github.andrestubbe:fastcore:v0.2.0'
}

Option 3: Direct Download (No Build Tool)

Download the latest JARs directly to add them to your classpath:

  1. 📦 fastdisplay-v0.2.0.jar (The Core Library)
  2. ⚙️ fastcore-v0.2.0.jar (The Mandatory Native Loader)

Documentation

  • COMPILE.md: Full compilation guide (MSVC C++17 build chain + JNI Setup).
  • REFERENCE.md: Full API descriptions, border configurations, and codepoint index.
  • PHILOSOPHY.md: The engineering rationale for zero-allocation performance.
  • ROADMAP.md: Future milestones and planned features.

Platform Support

Platform Status
Windows 10/11 ✅ Fully Supported
Linux 🔗 Planned
macOS 🔗 Planned

License

MIT License See LICENSE file for details.


Related Projects

  • FastCore - Unified JNI loader and platform abstraction
  • FastANSI - Binary file indexing with mmap support
  • FastDWM - Prefix Trie, N-Gram index, and Ranking engine

Part of the FastJava EcosystemMaking the JVM faster. Small package. Maximum speed. Zero bloat. 🚀📋

About

📺 Native Windows display telemetry for Java — real‑time DPI, resolution, refresh‑rate, orientation, EDID, HDR, and multi‑monitor tracking via zero‑latency Win32 callbacks.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages