SkillAgentSearch skills...

Jintellitype

JIntellitype is a Java API for interacting with Microsoft Intellitype commands as well as registering for Global Hotkeys in your Java application.

Install / Use

/learn @melloware/Jintellitype
About this skill

Quality Score

0/100

Supported Platforms

Universal

README

<div align="center"> <a href="https://github.com/melloware/jintellitype" alt="JIntellitype"> <img src="https://github.com/melloware/jintellitype/blob/master/src/test/resources/jintellitype.png?raw=true" /> </a>

JIntellitype

</div>

Maven Javadocs License

JIntellitype is a Java JNI library that provides an interface to Microsoft Intellitype keyboard commands and global hotkey registration in Windows applications. The library enables Java applications to respond to special media keys (Play, Pause, Stop, etc.) and register global hotkey combinations.

[!IMPORTANT] This library is Windows-only as it uses Windows-specific API calls.

If you like this project, please consider supporting me ❤️

GitHub Sponsor PayPal

Table of Contents

Features

  • Register global hotkey combinations that work system-wide in Windows
  • Receive notifications for special media keys (Play, Pause, Stop, Next, Previous)
  • Support for modifier keys (CTRL, ALT, SHIFT, WIN) in hotkey combinations
  • Automatic DLL management (32/64 bit)
  • Simple and intuitive API
  • Thread-safe implementation
  • Comprehensive error handling

Installation

Maven

<dependency>
    <groupId>com.melloware</groupId>
    <artifactId>jintellitype</artifactId>
    <version>[VERSION]</version>
</dependency>

Gradle

implementation 'com.melloware:jintellitype:[VERSION]'

The native DLLs are automatically extracted and loaded at runtime. No manual installation steps are required.

Usage

Basic Setup

// Initialize JIntellitype
JIntellitype.getInstance().addHotKeyListener(identifier -> {
    System.out.println("Hotkey pressed: " + identifier);
});

JIntellitype.getInstance().addIntellitypeListener(command -> {
    System.out.println("Intellitype command: " + command);
});

// Register hotkeys
JIntellitype.getInstance().registerHotKey(1, JIntellitype.MOD_WIN, 'A');  // Windows + A
JIntellitype.getInstance().registerHotKey(2, JIntellitype.MOD_ALT + JIntellitype.MOD_SHIFT, 'B');  // Alt + Shift + B

// Clean up on exit
Runtime.getRuntime().addShutdownHook(new Thread(() -> {
    JIntellitype.getInstance().cleanUp();
}));

Supported Modifier Keys

  • JIntellitype.MOD_ALT - Alt key
  • JIntellitype.MOD_CONTROL - Control key
  • JIntellitype.MOD_SHIFT - Shift key
  • JIntellitype.MOD_WIN - Windows key

Supported Media Commands

  • APPCOMMAND_MEDIA_PLAY_PAUSE - Play/Pause
  • APPCOMMAND_MEDIA_STOP - Stop
  • APPCOMMAND_MEDIA_NEXTTRACK - Next Track
  • APPCOMMAND_MEDIA_PREVIOUSTRACK - Previous Track
  • APPCOMMAND_VOLUME_MUTE - Mute
  • APPCOMMAND_VOLUME_UP - Volume Up
  • APPCOMMAND_VOLUME_DOWN - Volume Down

Examples

See the JIntellitypeDemo class for a complete working example.

Building from Source

Prerequisites

  • Java JDK 8 or higher
  • Apache Maven
  • Visual Studio C++ (for native code compilation)

Build Steps

  1. Clone the repository
git clone https://github.com/melloware/jintellitype.git
  1. Build with Maven
mvn clean package

Releasing

  1. Go to the Actions tab in GitHub
  2. Select the "Release" workflow
  3. Click "Run workflow"
  4. You will be prompted for:
    • Branch (default to master)
    • Version to release (e.g. 8.0.2)
    • Next development version (e.g. 8.0.3-SNAPSHOT)
  5. The workflow will automatically:
    • Set the release version in all pom.xml files
    • Create and push a release tag
    • Build and deploy artifacts to Maven Central
    • Update version to the next development version

Contributing

Contributions are welcome! Please feel free to submit a Pull Request. For major changes, please open an issue first to discuss what you would like to change.

License

This project is licensed under the Apache License 2.0 - see the LICENSE file for details.

Support

Related Skills

View on GitHub
GitHub Stars180
CategoryDevelopment
Updated14d ago
Forks39

Languages

Java

Security Score

100/100

Audited on Mar 14, 2026

No findings