A seamless enhancement to native macOS window management
A sleek, highly-polished accessibility utility designed to refine the dock interaction experience on macOS. This application modifies standard system behavior, allowing users to minimize windows simply by clicking their application icon in the Dock—a quality-of-life improvement heavily requested by power users.
🚧 Work In Progress: I am actively working on making Click2Minimize better day after day. Expect frequent updates and improvements!
This project brings an elegant and native-feeling window management feature to macOS, focusing on zero-friction interactions.
- Native Integration: Operates entirely in the background using minimal system resources.
- Accessibility Driven: Utilizes powerful
AXUIElementpermissions to securely interact with the macOS Window Server. - Cross-platform Support: Equipped with an AppleScript fallback to handle modern Mac Catalyst and Electron applications perfectly.
| Category | Technologies |
|---|---|
| Core | Swift 5.0, AppleScript |
| Frameworks | Cocoa, ApplicationServices, Combine |
| Tooling | Xcode 15 |
| OS Target | macOS 13.0+ |
- Dock Minimization: Click any active application's icon in the Dock to smoothly minimize all its visible windows.
- Smart Un-Minimize: Naturally integrates with the default macOS behavior to un-minimize windows upon the next click.
- Universal Compatibility: Gracefully handles stubborn cross-platform applications with robust fallback engines.
- Auto-Updater Disabled: Removed external dependencies to ensure a stable, offline, and reliable local build.
To install Click2Minimize directly on your Mac:
-
Download the latest Release Grab the
.dmgfile from the Releases page. -
Install the App Drag the app into your
/Applicationsfolder. -
Grant Permissions When launched, the app will request Accessibility Permissions. Open System Settings > Privacy & Security > Accessibility and toggle it on.
To compile the application locally:
git clone https://github.com/hatimhtm/Click2Minimize.git
cd Click2Minimize
# Build the release binary
xcodebuild -scheme "Click2Hide" -configuration Release -derivedDataPath build
# Package it into a DMG
./build_dmg.sh