Stop Minimizing on Focus Loss keeps Minecraft from minimizing itself when you alt-tab, click another monitor, or otherwise move focus away from the game while using native fullscreen.
It is a tiny client-side utility mod. Install the jar that matches your Minecraft version and loader, and the fullscreen window should stay open when focus changes.
What it does:
- Prevents native fullscreen Minecraft windows from auto-minimizing on focus loss.
- Works at the window-system level used by Minecraft's LWJGL/GLFW backend.
- Reapplies the fix when Minecraft creates the window and when fullscreen mode changes.
What it does not do:
- It does not force Minecraft to stay focused.
- It does not disable pause-on-lost-focus behavior.
- It does not change borderless fullscreen, normal windowed mode, or operating-system window-manager policies.
- It does not restore a window that has already been minimized by something else.
Minecraft version and mod loader support
On Fabric and Quilt, this mod aims to actively support all Minecraft versions starting from 1.14 to the newest release. Also, the Quilt builds are dedicated ports DIFFERENT from the Fabric .jars.
On Forge versions 1.16.5, 1.17.x, 1.18.x, 1.19.x, 1.20.1, and 1.20.6 are supported.
Meanwhile on NeoForge, this mod aims to support versions 1.20.1, 1.20.6, and all other versions starting from 1.21 to the newest release.
Lastly, a dedicated Better Than Adventure version is also supported:) BTA being a huge overhaul mod for Minecraft Beta 1.7.3b that uses a modified version of the Babric mod loader for its mod support.
The mod has zero dependencies:) Even the Fabric version does NOT use FabricAPI hence no other mods / libraries need to be installed for Stop Minimizing on Focus Loss to work.
Technical details:
Minecraft's modern fullscreen window is backed by the GLFW software library. GLFW has a GLFW_AUTO_ICONIFY window attribute which, by default, can minimize a native fullscreen window when it loses focus. This mod sets that attribute to GLFW_FALSE on Minecraft's GLFW window handle:
glfwSetWindowAttrib(windowHandle, GLFW_AUTO_ICONIFY, GLFW_FALSE);
Different Minecraft versions expose the native window through different classes, so each target hooks the version-appropriate window class:
- Modern Fabric, Forge, NeoForge, and Quilt builds inject into
com.mojang.blaze3d.platform.Windowafter<init>andsetMode. - Older and newer modern versions name the native handle field differently, usually
windoworhandle; each version-specific build uses the correct field for that target. For example, the standalone Forge1.16.5port injects intonet.minecraft.client.MainWindowafter<init>andsetMode. Meanwhile, the BTA Babric7.3_04port injects intonet.minecraft.client.render.window.GameWindowGLFWafterinitandupdateWindowState.
