✨ Added / 新增
-
Borderless mode — removes window title bar and borders; supports windowed, maximized, and fullscreen (pseudo-fullscreen) states. Auto-borderless on launch option available.
-
无边框模式 — 去除窗口标题栏和边框,支持窗口化、最大化和全屏(伪全屏)三种状态,可设置启动自动无边框。
-
Always-on-top (3 modes) — off / normal (GLFW floating) / force (re-claims focus every frame, can override other always-on-top windows like classroom monitoring software).
-
窗口置顶(3种模式) — 关闭 / 普通(GLFW悬浮)/ 强制(每帧重新抢焦点,可覆盖教室监控软件等其他置顶窗口)。
-
Cycle window state — one button / keybind to cycle through windowed → maximized → fullscreen.
-
循环切换窗口状态 — 一个按钮/快捷键即可在 窗口化 → 最大化 → 全屏 之间循环切换。
-
5 keybinds (all unbound by default): Open Settings, Center, Toggle Borderless, Cycle State, Toggle Always-on-Top. All give chat feedback.
-
5个快捷键(默认未绑定):打开设置、居中、切换无边框、循环状态、切换置顶,全部带聊天反馈。
-
About page — in-game info screen with 6 sections (Purpose, About, Usage, Downloads, Feedback, Author) in 20 languages.
-
关于页面 — 游戏内信息页面,包含6个模块(制作目的、MOD介绍、使用方法、下载渠道、反馈渠道、作者信息),支持20种语言。
-
Debug mode — outputs detailed diagnostic info (preset availability, borderless transitions, window state changes) to the game log.
-
调试模式 — 将详细诊断信息(预设可用性检查、无边框状态切换、窗口状态变化等)输出到游戏日志。
-
15 commands total:
/aws help(paginated),gui,status,toggle,lock,unlock,fixed,center,fullscreen,maximize,remember,top,debug,borderless(withautosubcommand),resolution. -
共15个指令:
/aws help(分页)、gui、status、toggle、lock、unlock、fixed、center、fullscreen、maximize、remember、top、debug、borderless(含auto子指令)、resolution。
🔄 Changed / 变更
-
Settings entry moved to Accessibility Settings (compatible with Embeddium and other mods that replace the video settings screen).
-
设置入口迁移到辅助功能设置(兼容 Embeddium 等完全替换视频设置界面的模组)。
-
Settings screen rebuilt with native
AbstractSelectionListscrolling — title and Done button have independent opaque backgrounds, scrollbar position matches vanilla exactly. -
设置界面重建,采用原生
AbstractSelectionList滚动列表 — 标题和完成按钮有独立不透明背景,滚动条位置与原版完全一致。 -
Button layout optimized: fixed window size as large button; remember position + center side-by-side; debug + about side-by-side at bottom.
-
按钮布局优化:固定窗口大小改为大按钮;记住窗口状态+居中并排;调试+关于在底部并排。
-
Preset auto-disable expanded: presets are now disabled if larger than screen, smaller than config minimum, smaller than hardcoded minimum (856×482), or matching current size.
-
预设自动禁用增强:超过屏幕、低于配置最小值、低于硬编码最小值(856×482)或匹配当前大小的预设都会自动禁用。
-
Custom resolution input with live validation — Apply button disabled when input is invalid, hover tooltip shows valid range.
-
自定义分辨率输入实时校验 — 输入非法时应用按钮禁用,鼠标悬停显示合法范围。
-
Config files unified in
config/AutoWindowSize/(config.toml + window.json); config screen supports 20 languages. -
配置文件统一到
config/AutoWindowSize/目录(config.toml + window.json);配置界面支持20种语言。 -
20 languages supported.
-
支持20种语言。
🐛 Fixed / 修复
-
Fixed settings screen button layout overlapping title and Done button.
-
修复设置界面按钮布局与标题和完成按钮重叠的问题。
-
Fixed scrollbar position overlapping buttons (now matches vanilla exactly).
-
修复滚动条位置与按钮重叠的问题(现在与原版完全一致)。
-
Fixed button highlight/selection border overflowing beyond button bounds.
-
修复按钮选中/高亮边框超出按钮边界的问题。
-
Fixed aspect ratio button incorrectly showing "Custom" after toggling maximize / fullscreen.
-
修复比例按钮在切换最大化/全屏后错误显示"自定义"的问题。
-
Fixed aspect ratio button reverting to previous ratio after clicking a preset.
-
修复点击预设后比例按钮回弹到上一个比例的问题。
-
Fixed custom resolution input fields not updating in real-time when window is resized by dragging.
-
修复自定义分辨率输入框在拖动窗口调整大小时不实时更新的问题。
-
Fixed fixed window size not disabling resolution preset buttons.
-
修复固定窗口大小未禁用分辨率预设按钮的问题。
-
Fixed borderless mode causing a gap at the top when switching from fullscreen to maximized.
-
修复无边框模式下从全屏切换到最大化时顶部出现空白的问题。
-
Fixed force always-on-top losing focus when clicking the title bar of another window.
-
修复强制置顶模式下点击其他窗口标题栏后丢失焦点的问题。
-
Fixed scroll position resetting to top after clicking certain buttons.
-
修复点击某些按钮后滚动位置重置到顶部的问题。
-
Fixed
window.jsonnot being generated on first launch. -
修复
window.json首次启动时不生成的问题。 -
Fixed duplicate chat messages when entering fullscreen.
-
修复进入全屏时重复发送聊天消息的问题。
-
Fixed Debug config option missing translation keys in config screen.
-
修复配置界面中Debug配置项缺少翻译的问题。
-
Fixed mouse wheel not scrolling when hovering over input fields or buttons.
-
修复鼠标悬停在输入框或按钮上时无法滚轮滚动的问题。
-
Various minor UI alignment and spacing fixes.
-
修复各种细微的UI对齐和间距问题。
Full changelog / 完整更新日志: CHANGELOG.md · CHANGELOG_ZH-CN.md
Added
- Resolution presets expanded to 5 aspect ratios (16:9 / 16:10 / 4:3 / 5:4 / 21:9) with 12 presets each, plus custom resolution input with live boundary validation
- Configurable startup delay (
startupDelay, 0.5–10.0s, default 1.5s) - Window position memory (
rememberPosition): save/restore window position and size across launches; compatible with auto-fullscreen / auto-maximize - Config files unified under
config/AutoWindowSize/(config.toml + window.json) - Config screen translations: option names/descriptions follow the game language (20 languages)
- New commands:
/aws help,/aws fullscreen,/aws maximize,/aws remember,/aws resolution(ratio+preset or custom width/height, with tab-completion) - Button hover tooltips in the Window Settings screen
Changed
- Settings entry moved from Video Settings to Accessibility Settings (compatible with Embeddium and other mods that replace the video settings screen)
- Settings screen info area reworked to four lines (screen resolution / window state + config status / detailed status / input bounds)
- Config comments reworked (English-only, removed duplicate Range, section separators)
- Language count expanded from 15 to 20 (added Arabic, Thai, Swedish, Czech, Indonesian)
Fixed
- Aspect ratio incorrectly showing "Custom" after maximize/fullscreen toggle
- Aspect ratio display lag/bounce-back after clicking a preset
- Custom input fields not updating live when dragging the window
- Fixed-window-size not disabling presets when enabled
- Apply button / input field oversized highlight background after clicking
- Accessibility Settings button shifting position / growing too wide in languages without lang files
- Scrollbar overlapping buttons; repositioned to match vanilla
- Auto-fullscreen on launch not centering after exiting fullscreen
- Various minor UI layout and spacing issues
Notes
- When upgrading, manually delete
config/AutoWindowSize/(and the oldconfig/autowindowsize-client.tomlif upgrading from pre-1.0.9), then launch to generate fresh config files - Multi-version ports (1.20.2–1.20.6) are planned for a future release
新增
- 分辨率预设扩充:5种比例(16:9 / 16:10 / 4:3 / 5:4 / 21:9)每种12个预设,外加自定义分辨率输入(带实时边界校验)
- 启动延迟可配置(
startupDelay,0.5~10.0秒,默认1.5秒) - 窗口位置记忆(
rememberPosition):退出时保存窗口位置与大小,下次启动恢复;与自动全屏/最大化兼容 - 配置文件统一到
config/AutoWindowSize/目录(config.toml + window.json) - 配置界面多语言:配置名称和描述随游戏语言切换(支持20种语言)
- 新增5个指令:
/aws help、/aws fullscreen、/aws maximize、/aws remember、/aws resolution(支持比例+预设和自定义宽高,带Tab补全) - 窗口设置界面按钮新增鼠标悬停提示
调整
- 设置入口从视频设置迁移到辅助功能设置(兼容 Embeddium 等替换视频设置界面的模组,避免按钮消失)
- 设置界面信息区重构为四行(屏幕分辨率 / 窗口状态+配置文件状态 / 状态详细说明 / 输入边界提示)
- 配置文件注释重构(全英文、去掉重复Range、加段分隔线)
- 语言从15种扩展到20种(新增阿拉伯语、泰语、瑞典语、捷克语、印尼语)
修复
- 比例按钮在最大化/全屏切换后错误显示"自定义"
- 点击预设后比例显示滞后/回弹
- 自定义输入框不随窗口拖动实时更新
- 固定窗口大小开启后未禁用预设按钮
- 应用按钮/输入框点击后高亮背景过大溢出
- 辅助功能设置按钮在无对应语言文件时位置偏移/变长
- 滚动条与按钮重叠,调整到与原版位置一致
- 自动全屏启动后取消全屏不居中
- 多处UI布局和间距细节问题
注意
- 升级时请手动删除
config/AutoWindowSize/文件夹(从1.0.9之前版本升级还需删除旧的config/autowindowsize-client.toml),然后启动游戏自动生成全新配置 - 多版本移植(1.20.2~1.20.6)计划在后续版本中进行
v1.0.8 — 常用分辨率预设 + 自定义分辨率 + 设置界面重构
新增
- 分辨率预设:按 16:9 / 16:10 / 4:3 / 5:4 / 21:9 分组,点一下立即切换并居中。
- 自定义分辨率:手动输入宽高,点应用立即切换。
- 已匹配当前分辨率的预设自动禁用;超过屏幕的预设也自动禁用。
- 固定窗口大小开启后,比例切换、预设、自定义输入框全部自动禁用。
- 语言扩展到 15 种(新增德语、西班牙语、葡萄牙语、意大利语、土耳其语、荷兰语、波兰语、越南语)。
- 预设扩充:16:9 加 1024×576 / 1152×648 / 3840×2160;4:3 加 640×480 / 1152×864 / 1920×1440 等。
调整
- 设置界面重构为原版滚动列表(AbstractSelectionList),和原版视频设置观感一致。
- 拖动窗口后不匹配当前比例时自动切到"自定义",输入框同步当前值;最大化/全屏不触发。
- 拖动后分辨率刷新延迟缩短到 0.2 秒。
修复
- 修复切换到无翻译语言时"窗口设置"按钮偏移的问题。
- 修复固定窗口开启后预设按钮仍可点击的问题。
- 修复切到自定义时输入框不更新的问题。
⚠ 升级时请手动删除旧配置文件
.minecraft/config/autowindowsize-client.toml,重启后会自动生成新配置。
v1.0.8 — Resolution Presets & Custom Resolution
New
- Resolution presets grouped by aspect ratio (16:9 / 16:10 / 4:3 / 5:4 / 21:9); click to apply and center instantly.
- Custom resolution: type any width/height and apply instantly.
- Presets matching your current resolution are auto-disabled; presets larger than your screen are also disabled.
- When fixed window size is on, aspect cycling, presets and custom inputs are all auto-disabled.
- 15 languages now supported (added German, Spanish, Portuguese, Italian, Turkish, Dutch, Polish, Vietnamese).
- More presets added across all aspect ratios.
Changed
- Settings screen rebuilt on the vanilla scrolling list (AbstractSelectionList), matching vanilla video settings.
- Dragging the window to a non-preset size switches to Custom automatically; maximized/fullscreen states don't trigger it.
- Drag refresh latency reduced to 0.2s.
Fixed
- Fixed "Window Settings" button position offset when switching to an untranslated language.
- Fixed preset buttons still clickable when fixed window size is enabled.
- Fixed custom input not syncing current resolution.
⚠ On upgrade, please delete your old config
.minecraft/config/autowindowsize-client.tomland restart to generate a fresh one.
新增
- 新增"固定窗口大小"开关(窗口设置界面按钮 +
/aws fixed指令):开启后把窗口当前大小完全锁死(最小=最大=当前值)。它不会跳变到配置分辨率、也不会强制居中——只是不能再改大小,并且标题栏最大化按钮会在系统层被禁用(GLFW_RESIZABLE=false,Windows 上移除 WS_MAXIMIZEBOX),从根上杜绝"假最大化" - 窗口最大化或全屏时,固定窗口大小开关本身也会禁用(并给出提示),而不是去锁最大化时铺满屏幕的尺寸
- 全屏仍然可用(GLFW 全屏不受窗口尺寸限制约束),退出全屏后自动回到固定尺寸
- 固定窗口大小只受全屏/最大化禁用(临时禁用、退出恢复);"配置分辨率过低"状态只禁用最小尺寸锁定,不影响固定窗口大小与居中(它们不依赖配置值)
说明
- 固定窗口大小为运行时开关(与最小尺寸锁定一致),默认关闭,重启游戏后恢复默认;固定开启时再点锁定按钮不产生额外效果(固定优先)
- 灵感来源:固定窗口大小的想法参考了模组 Locked Window Size(LGPL-3.0 协议)。本模组为独立实现,仅使用 GLFW 官方公开 API,未复制其任何源代码,因此仍以 MIT 协议开源。
Added
- New "Fixed Window Size" toggle (button in the Window Settings screen +
/aws fixedcommand): when on, the window is frozen at its current size (min = max = current size). It does not jump to the configured resolution and does not force a recenter — it simply cannot be resized anymore, and the title-bar maximize button is disabled at the OS level (GLFW_RESIZABLE=false removes WS_MAXIMIZEBOX on Windows), so a "fake maximized" state is impossible - The fixed-window-size toggle is itself disabled while the window is maximized or fullscreen (with an explanatory message), instead of trying to lock the full-screen-sized maximized dimensions
- Fullscreen still works (GLFW fullscreen is not bound by window size limits) and returns to the fixed size on exit
- Fixed window size is only blocked by fullscreen/maximized state (temporarily disabled, restored on exit). It is not affected by the "config resolution too low" state, which only disables the minimum size lock — fixed window size and centering keep working because they do not depend on the config value
Notes
- Fixed window size is a runtime toggle (same as the min size lock), off by default, reset on game restart; when fixed is on, the lock button has no additional effect (fixed takes priority)
- Inspiration: the fixed-window-size idea is inspired by the mod Locked Window Size (LGPL-3.0). It is an independent implementation using only the public GLFW API; no source code was copied, so this mod remains MIT-licensed.
What's New / 更新内容
Fixed / 修复
- If you went fullscreen or maximized the window while still on the loading screen, the mod no longer yanks it back to the configured resolution once the main menu loads. It now checks the window state first. 加载期间手动全屏或最大化,进主菜单后不再被强制改回配置分辨率。
- After maximizing on the loading screen and then un-maximizing, the window used to land at the OS default size; and after entering fullscreen on the loading screen and exiting, it was not centered. Now it resizes back to the configured resolution and centers. 加载期间最大化后取消最大化、或加载期间全屏后退出,现在都会回到配置分辨率并居中。
- Maximizing first then going fullscreen on the loading screen used to leave a "fake maximized" state (restore button still shown, but size was the configured one). It now truly restores maximized, and un-maximizing afterwards finishes with a recenter. 加载期间先最大化再全屏,退出全屏后不再假最大化,而是真正恢复最大化;再取消最大化会自动居中。游戏中正常的取消最大化不受影响,仍恢复原位。
📥 Install / 安装
Drop autowindowsize-1.0.5.jar into your mods folder (Forge 1.20.1, client side only).
把 autowindowsize-1.0.5.jar 放进 mods 文件夹(Forge 1.20.1,仅客户端)。
📦 Requirements / 环境
Minecraft 1.20.1 · Forge 47.x
What's New in 1.0.4 / 1.0.4 更新内容
✨ New Features / 新功能
- Center Window button / 居中窗口按钮 One-click centers the window on its current monitor. Auto-disabled (with a reason shown) in fullscreen, maximized, minimized, or already-centered states. 一键把窗口在当前所在显示器居中。全屏、最大化、最小化、已居中时自动禁用并显示原因。
/aws centercommand / 指令 Centers the window from chat; tells you why it's unavailable when it is. 聊天栏执行即可居中,不可用时会说明原因。
🐛 Fixes & Improvements / 修复与优化
- Window drag no longer freezes live resolution numbers; refreshes 0.5s after you stop dragging. 拖动窗口时分辨率数字冻结,停止拖动 0.5 秒后刷新。
- Fixed fullscreen no longer leaving the yellow "resolution changing" hint stuck on screen. 修复全屏时黄色"分辨率变化中"提示常驻不消失的问题。
- Fixed config minimum being able to go below the hardcoded minimum (856×482). 修复配置下限可低于硬写死最小分辨率(856×482)的问题。
- Config descriptions are now bilingual (English above, Chinese below). 配置描述改为上英下中双语。
- Mod screen description expanded with release links. 模组列表描述扩充详细,并加入发布链接。
- Window applies 1.5s after the loading screen finishes. 加载屏幕完成后 1.5 秒应用窗口设置。
📥 Installation / 安装
Drop autowindowsize-1.0.4.jar into your mods folder (Forge 1.20.1, client side only).
把 autowindowsize-1.0.4.jar 放进 mods 文件夹(Forge 1.20.1,仅客户端)。
📦 Requirements / 环境要求
- Minecraft 1.20.1
- Minecraft Forge
v1.0.3 — 延迟初始化和全屏消息改进 / 延迟初始化与全屏提示优化 新增 / 新增 窗口大小设置为启动后2秒,避免加载画面拉伸/启动2秒后设置窗口大小,避免加载界面拉伸 全屏消息现在显示锁定是否会恢复/全屏提示区分退出后恢复开启还是保持关闭 Bilingual config comments / 配置文件中英双语注释 固定 / 修复 首次启动的引导界面不再跳过窗口init/首次启动引导界面不再跳过窗口初始化
v1.0.2 — Commands, Fullscreen & UI Improvements / 指令、全屏支持与界面优化 Added / 新增 /aws command system: toggle, lock, unlock, status, gui /aws 指令系统:切换、锁定、解锁、状态、打开设置 Fullscreen auto-disable: lock temporarily disabled in fullscreen, restored on exit 全屏自动禁用:进入全屏时临时禁用锁定,退出全屏后按全屏前状态恢复 Real-time button state sync in Window Settings screen 窗口设置界面按钮状态实时同步,无需重开 Red reason text when lock is disabled (low resolution or fullscreen) 锁定禁用时显示红色原因(分辨率过低或全屏模式) Screen resolution display in /aws status /aws status 显示当前屏幕分辨率 GitHub and Issues links in Mods list Mods 界面添加 GitHub 和 Issues 链接 Changed / 调整 Key binding now opens Window Settings screen (previously toggled lock) 键位改为打开窗口设置界面(原为切换锁定) Hardcoded minimum resolution lowered from 1024×576 to 856×482 硬编码最小分辨率从 1024×576 降为 856×482,兼容更多老显示器 Exit fullscreen no longer forces window size — Minecraft restores naturally 退出全屏不再强制设置窗口大小,由 Minecraft 自动恢复 Improved chat message styling with ✔/✘/ℹ/● symbols 优化聊天提示样式,使用符号区分不同类型消息 Authors: JujuMLQwQ, ML 作者:JujuMLQwQ、ML Fixed / 修复 ConfigScreen: minimized window restore no longer gets stuck on refreshing hint 修复最小化再恢复后"1秒刷新提示"常驻的问题 Fullscreen detection uses GLFW native API for reliability 全屏检测改用 GLFW 原生 API,更可靠 Button width matches native Video Settings buttons exactly 按钮宽度与视频设置原生按钮完全一致
✨ 新增 / Added 视频设置原生入口:在「选项 → 视频设置」中原生插入「窗口设置」按钮,位于「全屏分辨率」下方,随列表滚动和 GUI 缩放正常布局
窗口设置界面:全新的设置界面,可手动开关锁定,显示当前屏幕分辨率和游戏窗口分辨率
实时分辨率显示:窗口设置界面实时显示当前屏幕分辨率和游戏窗口分辨率,拖动窗口后 1 秒自动刷新
进游戏状态提示:每次进入世界时,聊天栏提示当前锁定状态(已锁定 / 已解锁 / 已禁用)
拖动延迟刷新:拖动窗口时显示提示,松开后 1 秒自动更新分辨率数值,避免拖动时卡顿
Native Video Settings entry: "Window Settings" button natively inserted into Options → Video Settings, right below "Fullscreen Resolution", scrolling and scaling properly with the list
Window Settings screen: New settings screen with manual lock toggle, live display of screen resolution and game window resolution
Live resolution display: Shows current screen resolution and game window resolution in real time, auto-refreshes 1 second after window drag
Status notification on join: Chat notification of current lock status each time you enter a world (Locked / Unlocked / Disabled)
Delayed refresh on drag: Shows hint while dragging, auto-updates resolution values 1 second after release to avoid lag during dragging
🔧 调整 / Changed 键位默认未绑定:切换锁定的按键默认改为未绑定,玩家自行在控制设置中绑定
默认分辨率改为 1280×720:从 1440×810 下调,兼容更多老显示器
优化提示文本样式:聊天栏提示使用更专业的颜色和格式
Key binding default unbound: Toggle lock key defaults to unbound, player sets it in Controls
Default resolution changed to 1280×720: Lowered from 1440×810 for better compatibility with older monitors
Improved notification styling: Chat notifications use more professional colors and formatting
🐛 修复 / Fixed 重写全屏逻辑:配置分辨率高于屏幕分辨率时,自动禁用锁定功能且不改动窗口大小,避免显示 bug
修复按钮布局:按钮在不同 GUI 缩放下的布局问题,现在原生插入列表,随滚动和缩放正常变化
禁用状态防护:锁定被禁用时,按钮灰色不可点击,按键触发时聊天栏提示原因
Rewrote fullscreen logic: When config resolution exceeds screen resolution, lock is auto-disabled and window is left unchanged to avoid display bugs
Fixed button layout: Button layout issues at different GUI scales — now natively inserted into the list, scrolling and scaling properly
Disabled state protection: When lock is disabled, button is greyed out and unclickable; key trigger shows reason in chat
📦 下载 / Download 下方附件下载 jar 文件,放入 .minecraft/mods 文件夹即可。
Download the jar below and place it in your .minecraft/mods folder.
⚠️ 注意 / Notes 适用于 Minecraft 1.20.1 + Forge 47.x
配置文件:.minecraft/config/autowindowsize-client.toml
代码硬编码最小分辨率 1024×576,配置值低于此值时仍以 1024×576 为最小锁定尺寸
For Minecraft 1.20.1 + Forge 47.x
Config file: .minecraft/config/autowindowsize-client.toml
Hardcoded minimum resolution 1024×576; even if config is lower, 1024×576 is used as minimum lock size
✨ 功能特性 / Features 启动自动设置窗口大小:启动游戏时自动将窗口设置为配置的分辨率
自动居中:窗口在屏幕上自动居中
锁定最小窗口尺寸:锁定后窗口只能放大,不能缩小到配置尺寸以下
自定义按键切换:可在控制设置中绑定按键,快速切换锁定状态
多显示器支持:自动检测游戏窗口所在的显示器,在对应显示器上居中
Auto window size on launch: Automatically resizes the game window to the configured resolution on startup
Auto centering: Window is automatically centered on screen
Minimum size lock: When locked, the window can only be enlarged, not shrunk below the configured size
Custom hotkey toggle: Bind a key in Controls settings to quickly toggle lock state
Multi-monitor support: Automatically detects which monitor the game window is on and centers accordingly
🔧 配置/Configuration
配置文件路径/Config file: .minecraft/config/autowindowsize-client.toml
[window]
width = 1280 启动窗口宽度 / Startup window width
height = 720 启动窗口高度 / Startup window height




