From 3dd63823092c8d802da30d5d370bf99b8317a097 Mon Sep 17 00:00:00 2001 From: aix Date: Mon, 14 Sep 2026 11:01:32 +0800 Subject: [PATCH 1/3] chore: bump version to 1.1.1 --- CHANGELOG.md | 7 +++++++ MousePortal/AppVersion.swift | 4 ++-- MousePortalTests/MousePortalTests.swift | 6 +++--- README.md | 2 +- README.zh.md | 2 +- 5 files changed, 14 insertions(+), 7 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index a6f410d..e2826ac 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -14,6 +14,13 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/) - Improved portal visual editor - Configuration profile import/export +## [1.1.1] - 2026-09-14 + +### Fixed +- Restored window layouts after tab or title changes with persisted, verified window identities and improved matching. +- Preserved original window bounds during screen lock and supplemented partial captures without replacing saved layouts with incomplete data. +- Applied saved portals across display configuration changes and preserved matched layout identities. + ## [1.1.0] - 2026-09-02 ### Added diff --git a/MousePortal/AppVersion.swift b/MousePortal/AppVersion.swift index 56f483e..611af79 100644 --- a/MousePortal/AppVersion.swift +++ b/MousePortal/AppVersion.swift @@ -1,8 +1,8 @@ import Foundation enum AppVersion { - static let current = "1.1.0" - static let build = "20" + static let current = "1.1.1" + static let build = "21" static var displayVersion: String { if let version = Bundle.main.object(forInfoDictionaryKey: "CFBundleShortVersionString") as? String, diff --git a/MousePortalTests/MousePortalTests.swift b/MousePortalTests/MousePortalTests.swift index 9dd99fa..fc6e469 100644 --- a/MousePortalTests/MousePortalTests.swift +++ b/MousePortalTests/MousePortalTests.swift @@ -6,8 +6,8 @@ final class MousePortalTests: XCTestCase { XCTAssertFalse(AppVersion.windowTitle.isEmpty) } - func testAppVersionIsOneOneZero() { - XCTAssertEqual(AppVersion.current, "1.1.0") - XCTAssertEqual(AppVersion.build, "20") + func testAppVersionIsOneOneOne() { + XCTAssertEqual(AppVersion.current, "1.1.1") + XCTAssertEqual(AppVersion.build, "21") } } diff --git a/README.md b/README.md index dd7e16d..3eedd41 100644 --- a/README.md +++ b/README.md @@ -6,7 +6,7 @@
-
-
+
diff --git a/README.zh.md b/README.zh.md
index e8e0d8e..14115ad 100644
--- a/README.zh.md
+++ b/README.zh.md
@@ -6,7 +6,7 @@
+
From 642f8f8227e6c745ea11dc6d385b78d4f1cad47f Mon Sep 17 00:00:00 2001
From: aix
Date: Mon, 14 Sep 2026 11:43:42 +0800
Subject: [PATCH 2/3] docs: group release notes and add Chinese changelog
---
CHANGELOG.md | 22 +++++++--
CHANGELOG.zh.md | 118 ++++++++++++++++++++++++++++++++++++++++++++++++
README.md | 2 +
README.zh.md | 2 +
4 files changed, 140 insertions(+), 4 deletions(-)
create mode 100644 CHANGELOG.zh.md
diff --git a/CHANGELOG.md b/CHANGELOG.md
index e2826ac..7182c56 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,5 +1,7 @@
# Changelog
+[English](CHANGELOG.md) | [简体中文](CHANGELOG.zh.md)
+
All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
@@ -16,10 +18,22 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
## [1.1.1] - 2026-09-14
-### Fixed
-- Restored window layouts after tab or title changes with persisted, verified window identities and improved matching.
-- Preserved original window bounds during screen lock and supplemented partial captures without replacing saved layouts with incomplete data.
-- Applied saved portals across display configuration changes and preserved matched layout identities.
+### Window Layout Recovery
+
+- Fixed window restoration failures after browser tab or window title changes.
+- Improved matching between multiple windows of the same app, including after restarting MousePortal while those windows remain open.
+
+### Automatic Capture on Lock
+
+- Fixed saved window sizes being affected by the lock-screen animation, which could cause windows to restore smaller than expected.
+- Improved automatic layout capture on screen lock, including handling incomplete window lists and preserving existing saved layouts when capture fails.
+
+### Displays and Portals
+
+- Fixed saved portal configurations not being applied correctly when displays are connected, disconnected, or rearranged—even when the MousePortal main window is closed.
+- Preserved matched display layout identities when cleaning up unused layouts.
+
+Thanks to @JaeHyeon-KAIST for contributing these display and portal fixes in [#8](https://github.com/ai-eks/MousePortal/pull/8)!
## [1.1.0] - 2026-09-02
diff --git a/CHANGELOG.zh.md b/CHANGELOG.zh.md
new file mode 100644
index 0000000..5ab1d08
--- /dev/null
+++ b/CHANGELOG.zh.md
@@ -0,0 +1,118 @@
+# 更新日志
+
+[English](CHANGELOG.md) | [简体中文](CHANGELOG.zh.md)
+
+本文件记录项目的重要更新。
+
+格式参考 [Keep a Changelog](https://keepachangelog.com/zh-CN/1.0.0/)。
+
+## [Unreleased](未发布)
+
+### 新增
+
+- 添加 Apache 2.0 许可证文件和简要隐私说明,为开源发布做准备。
+
+### 计划中
+
+- 支持更多触发模式。
+- 改进传送门可视化编辑器。
+- 支持配置文件导入与导出。
+
+## [1.1.1] - 2026-09-14
+
+### 窗口布局恢复
+
+- 修复切换浏览器标签页或窗口标题变化后,部分窗口无法恢复到已保存位置的问题。
+- 改善同一应用多个窗口之间的匹配。在目标窗口仍保持打开的情况下,重启 MousePortal 后也能更可靠地恢复对应窗口。
+
+### 锁屏自动保存
+
+- 修复锁屏动画中的临时缩放尺寸被保存,导致恢复后的窗口比原来更小的问题。
+- 提升锁屏时自动保存布局的可靠性,改进系统仅返回部分窗口时的处理,并在捕获失败时保留已有布局。
+
+### 显示器与传送门
+
+- 修复连接、断开或重新排列显示器后,未正确应用已保存传送门配置的问题;即使 MousePortal 主窗口处于关闭状态,也能正常处理。
+- 修复清理未使用的布局时,已匹配的显示器布局身份未被保留的问题。
+
+感谢 @JaeHyeon-KAIST 在 [#8](https://github.com/ai-eks/MousePortal/pull/8) 中贡献显示器与传送门相关修复!
+
+## [1.1.0] - 2026-09-02
+
+### 新增
+
+- 为每种显示器排列提供手动和自动窗口布局快照。
+- 在显示器画布上预览窗口位置,并切换已保存的布局。
+- 支持应用、重命名、删除布局,以及将自动布局提升为手动布局。
+- 为全局窗口恢复、睡眠或锁屏前记录、唤醒后自动恢复提供独立控制选项。
+- 支持搜索并忽略指定应用,使其不再参与后续布局快照。
+- 提供跟随系统、浅色和深色主题,覆盖全部 20 种界面语言。
+
+### 调整
+
+- 将显示器控制项整合到更清晰的顶部工具栏和各显示器卡片中。
+- 保存可调整大小的窗口布局侧栏宽度。
+- 无需滚动即可显示四行传送门。
+
+### 修复
+
+- 禁用自动恢复时,唤醒处理不再扫描显示器或移动窗口。
+- 改善同一应用多个窗口的匹配,并保留包含已保存窗口的布局。
+- 将恢复范围限定为普通、非最小化、非全屏窗口,并说明不支持的 macOS 窗口模式。
+
+## [1.0.1] - 2026-07-24
+
+### 修复
+
+- 防止同一传送门的两条线在同一显示器边缘重叠或共用端点。
+
+## [1.0.0] - 2026-07-19
+
+### 新增
+
+- 首次公开发布热键跳转和双向边缘传送门。
+- 自动识别显示器排列,支持命名布局和显示器可视化。
+- 提供全局快捷键和传送门配置,支持菜单栏操作及开机启动。
+- 提供 20 种语言的本地化界面。
+
+## [0.1.2] - 2026-06-15
+
+### 调整
+
+- 更新 Mac App Store 打包元数据和签名准备配置。
+- 改进打包后的资源加载及辅助功能权限交接流程。
+- 恢复 Dock 和应用菜单入口,并将菜单栏图标改为稳定的系统模板图标。
+
+## [0.1.1] - 2026-06-13
+
+### 新增
+
+- 支持清理未使用的显示器布局。
+- 支持在显示器布局画布中为每台显示器设置自定义名称。
+
+## [0.1.0] - 2026-03-19
+
+### 新增
+
+- 热键跳转:通过全局键盘快捷键将鼠标光标传送到指定显示器。
+- 传送门系统:自定义边缘到边缘的传送区域。
+- 支持 20 种语言,包括英语、简体中文、繁体中文、日语和韩语等。
+- 显示器布局管理。
+- 配置文件管理。
+- 开机自动启动。
+- 菜单栏快捷访问。
+- 传送门可视化编辑器。
+- 传送门触发模式:自动触发或按住按键触发。
+
+### 技术
+
+- 基于 SwiftUI 的用户界面。
+- 基于 CGEvent 的全局键盘和鼠标事件监听。
+- 完善的单元测试覆盖。
+
+## [0.0.1] - 2025-01-17
+
+### 新增
+
+- 初始开发版本。
+- 搭建基础架构。
diff --git a/README.md b/README.md
index 3eedd41..1898846 100644
--- a/README.md
+++ b/README.md
@@ -18,6 +18,8 @@
> **[中文版本](README.zh.md)** | [English](README.md)
+[Changelog](CHANGELOG.md)
+
MousePortal is a macOS utility for managing mouse cursor movement and window placement across multiple displays. It provides three core features:
1. **Hotkey Jump** - Global keyboard shortcuts to instantly teleport the cursor to specific displays
diff --git a/README.zh.md b/README.zh.md
index 14115ad..f926c5f 100644
--- a/README.zh.md
+++ b/README.zh.md
@@ -18,6 +18,8 @@
> **[English Version](README.md)** | 中文
+[更新日志](CHANGELOG.zh.md)
+
MousePortal 是一个 macOS 实用工具,用于在多个显示器之间管理鼠标光标移动和窗口位置。它提供三项核心功能:
1. **热键跳转** - 全局键盘快捷键,瞬间将光标移动到指定显示器中心
From 30fa93e2eab3c718153e3f0d9578c74db4bc84fe Mon Sep 17 00:00:00 2001
From: aix
Date: Mon, 14 Sep 2026 12:00:54 +0800
Subject: [PATCH 3/3] docs: remove obsolete unreleased changelog sections
---
CHANGELOG.md | 10 ----------
CHANGELOG.zh.md | 12 ------------
2 files changed, 22 deletions(-)
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 7182c56..bc832fc 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -6,16 +6,6 @@ All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
-## [Unreleased]
-
-### Added
-- Apache 2.0 license file and lightweight privacy note for open-source readiness.
-
-### Planned
-- Support for more trigger modes
-- Improved portal visual editor
-- Configuration profile import/export
-
## [1.1.1] - 2026-09-14
### Window Layout Recovery
diff --git a/CHANGELOG.zh.md b/CHANGELOG.zh.md
index 5ab1d08..5577e66 100644
--- a/CHANGELOG.zh.md
+++ b/CHANGELOG.zh.md
@@ -6,18 +6,6 @@
格式参考 [Keep a Changelog](https://keepachangelog.com/zh-CN/1.0.0/)。
-## [Unreleased](未发布)
-
-### 新增
-
-- 添加 Apache 2.0 许可证文件和简要隐私说明,为开源发布做准备。
-
-### 计划中
-
-- 支持更多触发模式。
-- 改进传送门可视化编辑器。
-- 支持配置文件导入与导出。
-
## [1.1.1] - 2026-09-14
### 窗口布局恢复