Repository navigation
Releases: eacryo/oh-my-tab
Releases · eacryo/oh-my-tab
Release list
0.2.5
0.2.5
What's New
- Clipboard history no longer keeps records in memory only: it is always written to disk encrypted, with the key kept in the login keychain.
- Added a notice when the key cannot be read.
- New "Clear history on quit or shutdown" option (off by default).
- New "Use a separate Clear All button" switch for the history panel; the regular clear button removes only unpinned entries.
- New settings: panel material (Liquid Glass, Frosted glass or Opaque), thumbnail size and smooth mouse-wheel scrolling.
- New opt-in Keystroke Display: a draggable overlay that shows each key separately and stays quiet while secure input is active.
- New "Always show windows from other desktops" switch.
- Window switching is faster.
- Fixed a number of known issues.
0.2.5
更新说明
- 移除历史剪贴板纯内存模式,统一加密落盘,密钥保存在登录钥匙串中。
- 增加未获取到密钥时的提示。
- 新增「退出应用或关机后清除历史记录」选项(默认关闭)。
- 历史剪贴板增加独立的清除全部按钮开关,默认按钮只清除未置顶项。
- 新增设置:面板材质(液态玻璃、磨砂玻璃或不透明)、缩略图大小、鼠标滚轮平滑滚动。
- 新增按键显示浮窗(可选开启):可拖动,每个键单独显示,安全输入生效时保持安静。
- 增加了始终显示其他桌面的窗口的开关。
- 优化窗口切换的速度。
- 修复了一些已知问题。
Full Changelog: v0.2.4...v0.2.5
0.2.4
0.2.4
更新内容
- 首次运行引导:实时显示权限状态、给出更清晰的重启指引,可从「关于」页面重新打开。
- 引导页每次安装都会打开,重启、崩溃或强制退出后回到同一步骤继续;Sparkle 更新不会重新打开它。
- 引导页选项一经点选立即生效;剪贴板那一步提示按 Option+V,选择缩略图会当场申请屏幕录制权限。
- 历史剪贴板右上角新增与应用切换浮窗一致的关闭按钮。
- 新增“黄色按钮最小化窗口”和“Command+H 隐藏窗口”两个选项,默认关闭,缩略图带斜杠眼睛标记。
改进与修复
- 修复清空历史剪贴板后空状态提示消失的问题。
- 历史剪贴板响应更快,并减少图像数据复制。
- 带标签页的窗口只显示一张卡片。
- 跨 Space 与全屏下的窗口切换更可靠。
- 修复 Option+↑ 在会吸附网格的应用上进入全屏,以及窗口拖出屏幕后“最大化”失效的问题。
- 浮窗高度由卡片决定、上下留白固定对称;小屏新增两档更小的卡片尺寸。
- 配置文件有语法错误时不再重置当前生效的设置。
- 修复“关于”页面内嵌更新说明被截断、底部滚不到的问题:页面会随内容增高,可完整查看更新说明。
- 更新提示区分“有可用更新”“已下载”“正在安装”。
- 设置页在不同滚动条样式下保持布局稳定。
0.2.4
What's New
- First-run guide with live permission status and clearer restart guidance; reopenable from About.
- The guide opens on every install and resumes the same step after a restart, crash, or force quit; Sparkle updates do not reopen it.
- Guide choices apply immediately; the clipboard step points at Option+V and picking thumbnails asks for Screen Recording on the spot.
- Clipboard history has a close button in its top-right corner, matching the switcher's.
- Separate options for yellow-button-minimized and Command+H-hidden windows, off by default, marked with a slashed-eye badge.
Improvements & Fixes
- Fixed the clipboard empty state disappearing after clearing a tall panel.
- Clipboard history is faster and copies less image data.
- Windows with native tabs show as a single card.
- More reliable switching to other Spaces, including during fullscreen.
- Fixed the maximize shortcut (Option+Up) on grid-snapping apps, and maximizing a window dragged partly off screen.
- The panel is sized by its cards with fixed symmetric margins, and two smaller card sizes were added for small screens.
- Config syntax errors no longer reset the settings in effect.
- Fixed the About page's inline update notice being cut off at the bottom: the page now grows so the whole release note can be scrolled to.
- The update notice distinguishes available, downloaded, and installing updates.
- Settings pages hold their layout across scrollbar styles.
0.2.3
0.2.2和0.2.3的所有更新
- 缩略图卡片可同时显示应用名称和窗口标题;两者相同时只显示一次。
- 线性指针跟踪新增可调速度,范围为 0–10。双击滑块可恢复默认值;默认速度为 1.00,退出应用时会恢复原有的系统指针设置。
- 软件注入的鼠标(例如 Deskflow 的虚拟指针)现在拥有独立设备配置,可单独设置滚动和按键映射;按键映射录制也更加稳定。
- 设置中新增“导出日志”,并为英文、简体中文和繁体中文系统本地化原生系统面板。
- 设置页会隐藏不适用的控件,页面间距也更加统一。下拉菜单即使超出设置窗口,也可以完整展开;窗口圆角也更贴合 macOS 27 的 Liquid Glass 风格。
- 改进窗口切换体验:过滤附属子窗口、限制无响应应用造成的等待,并让卡片关闭动画与浮窗尺寸调整保持同步。
- 提升辅助功能调用、Objective-C 回调和鼠标重新连接时的稳定性。
- 正式版现已使用 Apple Developer ID 签名并通过 Apple 公证,Gatekeeper 可以验证应用来源和公证状态,避免因无法识别开发者或缺少公证而阻止打开。
- 为从 0.2.1 或 0.2.2 升级后需要重新授权的用户提供了恢复指引。辅助功能用于全局快捷键和窗口切换,屏幕录制用于窗口缩略图。请在“辅助功能”和“屏幕录制”两个权限列表中分别选中旧版 Oh My Tab,点 − 删除;再点 + 添加新版并开启两项权限,最后重新启动 Oh My Tab。
all updates in 0.2.2 and 0.2.3
- Thumbnail cards can show the app name alongside the window title, without repeating it when both names match.
- Linear pointer tracking now has an adjustable speed from 0 to 10. Double-click the slider to reset it; the default speed is 1.00, and the original system pointer settings are restored when the app quits.
- Software-injected mice, such as Deskflow's virtual pointer, now have a separate device profile for scrolling and button mappings. Mouse button recording is more reliable.
- Added Export Logs to Settings and localized native system panels for English, Simplified Chinese, and Traditional Chinese.
- Settings now hide controls that do not apply and use more consistent spacing. Dropdown menus can open at full height even when they extend beyond the Settings window, and the window corners better match macOS 27's Liquid Glass style.
- Improved window switching by filtering attached child windows, limiting waits on unresponsive apps, and keeping card-close animations in sync with overlay resizing.
- Improved resilience around Accessibility calls, Objective-C callbacks, and mouse reconnections.
- The production app is now signed with our Apple Developer ID and notarized by Apple, allowing Gatekeeper to verify its source and notarization instead of blocking it as an unidentified or unnotarized app.
- Added recovery guidance for users upgrading from 0.2.1 or 0.2.2 whose permissions need to be reauthorized. Accessibility is required for the global shortcut and window switching; Screen Recording is required for window thumbnails. In both permission lists, select the old Oh My Tab entry and click − to remove it, then click + to add the updated app and enable both permissions. Restart Oh My Tab afterward.
Full Changelog: v0.2.2...v0.2.3
0.2.1
0.2.1
更新内容
- 剪贴板历史支持撤销误删,并提供紧凑的“清除未置顶”和“全部清除”入口。
- 剪贴板项目计数区分单复数,多行内容会显示实际行数。
- 新增当前窗口缩略图后台预热和选中窗口预先排队,让切换器打开后更快显示内容。
改进与修复
- 优化剪贴板弹窗的渲染、搜索布局刷新、持久化、缓存和刷新调度,浏览更快更顺畅,滚动与悬停状态也更加稳定。
- 改进窗口缩略图处理,增强缓存清理,并能更好应对 WindowServer 几何或生命周期变化,减少空白、过期预览和刷新卡住。
- 窗口切换器现在会纳入辅助功能子角色未知的窗口(例如 Xcode),跨显示器跟随当前窗口,并修复悬停选择跳动。
- 完善本地化界面文案、快捷键表述以及设置页与菜单的同步。
0.2.1
What's New
- Clipboard history now supports undoing accidental deletions, with compact actions for clearing unpinned entries or the entire history.
- Clipboard counts now distinguish singular and plural items, and multi-line entries show their physical line count.
- Focused-window thumbnail prewarming and selected-window prequeueing make the switcher ready faster after it opens.
Improvements & Fixes
- Faster, smoother clipboard browsing through optimized rendering, search relayout, persistence, caching, and refresh scheduling; scrolling and stale hover states are more reliable.
- More resilient window thumbnails with safer cache cleanup and recovery from WindowServer geometry or lifecycle changes, reducing blank or stale previews and stuck refreshes.
- The switcher now includes windows with unknown accessibility subroles (such as Xcode), follows the active window across displays, and keeps hover selection stable.
- Refined localized UI copy, shortcut wording, and settings/menu synchronization.
Full Changelog: v0.2.0...v0.2.1
0.2.0
0.2.0
更新内容
- 状态栏提供更多快捷控制:切换主要功能、切换 Cmd+Tab 与 Option+Tab、切换缩略图/纯图标模式,以及清理缓存。
- 剪贴板历史增强:支持一次性粘贴并删除、可选安全清理对应的系统剪贴板内容,并将自动过期天数改为 0–7 天滑块。
- 窗口管理快捷键:Option+Shift+方向键可跨显示器移动窗口,四向移动会保留最大化和贴靠布局。
- 新增便捷操作:双击 Control 键定位鼠标指针,Option+L 锁定屏幕;窗口激活方式可选择悬停或点击。
改进与修复
- 设置窗口打开时,设置项与状态栏菜单现在会保持同步。
- 提升运行时配置、配置持久化、事件处理和单实例运行的可靠性。
- 优化剪贴板详情、设置布局、悬停反馈和缩略图刷新体验。
What's New
- More controls from the status bar: toggle core services, switch between Cmd+Tab and Option+Tab, change thumbnail/icon-only mode, and clear caches.
- Clipboard history improvements: one-shot paste-and-delete, optional guarded cleanup of the matching system clipboard item, and a 0–7 day expiry slider.
- Window management shortcuts: Option+Shift+Arrow moves windows across displays, with four-way movement that preserves maximized and snapped layouts.
- New convenience actions: double-Control locates the pointer, and Option+L locks the screen. Window activation can now be set to hover or click.
Improvements & Fixes
- Settings and status-bar controls now stay synchronized while the Settings window is open.
- More reliable runtime configuration, persistence, event handling, and single-instance behavior.
- Refined clipboard details, settings layout, hover feedback, and thumbnail refresh behavior.
Full Changelog: v0.1.9...v0.2.0
0.1.9
0.1.9
更新内容
- 设置界面重新设计:更清晰的侧栏与控件、新的下拉动画;被禁用的选项会说明原因。
- 改动即时生效:多数设置调整后马上应用,无需重开设置窗口。
- 每页恢复默认:各设置页可一键还原默认值,并带清晰的确认提示。
- 新的切换快捷键:支持 Option + 方向键在窗口间切换。
- 跟随系统深色模式:切换器与设置界面会随外观变化即时刷新。
- 更直观的更新检查:按钮更大并带加载动画。
改进与修复
- 缩略图更可靠:后台挂起的应用不再显示空白预览;切换桌面(Show Desktop)时也不会截到空画面。
- 设置文字不再截断:长标签与长选项都能完整显示。
- 观感更统一:切换器底部文字、侧栏悬停动画、鼠标映射图标风格一致。
- 修复多处布局与刷新问题(如刷新后的窗口位置、深浅色切换)。
What's New
- Redesigned Settings window: clearer sidebar and control styling, animated dropdowns, and tooltips that explain why a control is disabled.
- Changes apply immediately: most settings take effect the moment you adjust them, no need to reopen Settings.
- Restore defaults per page: each Settings page can reset its options with one click, with a clear confirmation.
- New window-switching shortcut: use Option + Arrow keys to move between windows.
- Follows system dark mode: the switcher and Settings refresh instantly when the appearance changes.
- Clearer update checks: a larger button with a loading animation.
Improvements & Fixes
- More reliable thumbnails: suspended apps no longer show blank previews, and switching desktops (Show Desktop) no longer captures an empty frame.
- No more truncated text in Settings: long labels and dropdown options are fully readable.
- More consistent visuals: switcher footer text, sidebar hover animation, and mouse-mapping icons now look uniform.
- Fixed several layout and refresh issues (window position after refresh, appearance switching, and more).
Full Changelog: v0.1.8...v0.1.9
0.1.8
中文版(v0.1.8 更新内容)
新功能
- 更新安装完成后发送系统通知;发现新版本时也会推送通知,点击通知直达更新页面
- 发布时同步维护一个始终指向最新版本的 DMG 下载地址
改进
- 日志改为滚动文件(oh-my-tab.log,满 10MB 自动轮转保留 5 份),不再每次启动生成新文件;每次启动写入会话标记,自动清理 30 天前的旧日志
- 大幅重构内部代码结构,拆分超大模块,为后续迭代提速
修复
- 修复调整文字大小时可能导致的界面卡死(文字大小现在限制在 13–20 范围内)
- 修复自定义文本框的两处 Objective-C 回调签名错误,编辑设置输入框更稳定
- 修复设置页滑块显示值与实际值不一致的问题
- 检查更新失败(如网络错误)时按钮显示"重试检查",不再误报"已是最新版本"
───
English (v0.1.8 Changes)
New
- Post a system notification when an update is installed; a notification also appears for new versions, clicking it opens the update page
- Release now maintains a DMG alias that always points to the latest version
Improved
- Logs switched to a rolling file (oh-my-tab.log, auto-rotates at 10 MB, keeps 5 backups) instead of one file per launch; each launch writes a
session marker and logs older than 30 days are cleaned up - Major internal refactor splitting oversized modules for faster future development
Fixed
- Fixed a potential freeze when adjusting text sizes (sizes are now clamped to 13–20)
- Fixed two Objective-C callback signature mistakes in custom text fields, making settings input editing more reliable
- Fixed settings slider values not matching their actual values
- When an update check fails (e.g. network error), the button now offers "Retry Check" instead of wrongly claiming you're up to date
Full Changelog: v0.1.7...v0.1.8
0.1.7
中文(v0.1.7 Changes)
- 新增内置 Sparkle 自动更新,支持内联更新提示、检查/重试状态按钮与"自动下载并安装"开关
- 重构设置窗口布局与卡片样式,新增暗色主题与卡片阴影
- 鼠标设置页精修,新增设备空状态
- 切换器卡片文字大小、底栏文字大小可调节
- 优化窗口刷新响应与缩略图性能,提升 Cmd+Tab 流畅度
- 修复窗口顺序、非正常窗口过滤、开关控件等若干问题
English (v0.1.7 Changes)
- Added built-in Sparkle auto-update with inline update prompt, check/retry button states, and an "automatically download and install" toggle
- Redesigned settings window layout and card styling, added dark theme and card shadows
- Refined the mouse settings page and added an empty state
- Made switcher card text and footer text sizes adjustable
- Improved window refresh responsiveness and thumbnail performance for smoother Cmd+Tab
- Fixed several issues around window ordering, non-normal window filtering, and toggle controls
Full Changelog: v0.1.6...v0.1.7
0.1.6
中文
v0.1.6
- 全面升级窗口切换器:支持实时窗口缩略图、连续滚动和关闭窗口。
- 优化窗口激活、MRU 排序及切换稳定性。
- 增强剪贴板历史:支持详情面板、搜索和图片预览。
- 增强鼠标控制:支持侧键映射和更多设备配置。
- 优化设置界面、Liquid Glass 外观及整体性能。
- 更新文档、截图和构建流程。
English
v0.1.6
- Upgraded the window switcher with live thumbnails, continuous scrolling, and window closing.
- Improved window activation, MRU ordering, and switching reliability.
- Enhanced clipboard history with a detail panel, search and image previews.
- Improved mouse controls with side-button mapping and more device options.
- Refined the settings interface, Liquid Glass appearance, and overall performance.
- Updated documentation, screenshots, and the build workflow.
Full Changelog: v0.1.5...v0.1.6
0.1.5
v0.1.5
剪贴板历史(本版主力)
- 新增完整的历史剪贴板:Option+V 呼出、文本/图片/文件复制三类条目、自动粘贴
- 搜索(提示中显示记录总数)、置顶/取消置顶、单条删除、清除全部(保留置顶)
- 图片按原始格式粘贴(GIF 动图、JPG 不重编码);文件复制保持引用语义(不占磁盘)
- 历史持久化(明文存储有隐私警示)、自动过期(默认 30 天,置顶豁免)、密码管理器敏感内容自动拦截
- 条目标题栏显示来源应用图标 + 复制时间
- 修复:持久化加载时数据图片被误判重复丢弃、删除最后一条后选中高亮消失、↑ 键可从搜索框返回列表末尾
窗口切换
- 新增切换器总开关(可关闭,关闭后 Cmd+Tab 透传给系统原生切换器)
- 修复 JetBrains 系窗口:主窗口(AXDialog 角色)不再被过滤;设置窗口被隐藏后仍保留在列表中
鼠标控制
- 蓝牙键盘不再混入设备列表(GAP appearance 识别)
- 修复蓝牙鼠标重连后从设置设备列表中消失的问题
其他
- 日志安全:按键内容脱敏;AppKit/NSLog 输出并入应用日志
- 设置界面:标签左对齐、长标签不再截断、间距调整
- 开发体验:新增 dev-restart.sh 一键重建重启脚本
Clipboard history (headline of this release)
- Full clipboard history: summon with Option+V; text, image-data and file-copy entries with auto-paste
- Search (shows the total entry count), pin/unpin, per-entry delete, clear-all (keeps pinned)
- Images paste back in their original format (no PNG re-encode, animated GIFs intact); file copies keep reference semantics (zero disk footprint)
- Optional persistence (plaintext, privacy-warned), auto-expiry (30 days by default, pinned exempt), and automatic interception of password-manager sensitive markers
- Entry headers now show the source-app icon and the copy time
- Fixes: data images no longer dropped as false duplicates when loading persisted history, selection highlight survives deleting the last entry, ↑ leaves the search field onto the oldest entry
App switcher
- New master switch to enable/disable the switcher (off = Cmd+Tab passes through to the native switcher)
- Fixes for JetBrains-family apps: main windows (AXDialog role) are no longer filtered out; settings dialogs stay listed even after being hidden (orderOut)
Mouse control
- Bluetooth keyboards no longer leak into the device list (GAP appearance detection)
- Reconnected Bluetooth mice reappear in the settings device picker
Other
- Logging privacy: keystroke details redacted; AppKit/NSLog output captured into the app log
- Settings UI: left-aligned labels, no more truncated English labels, spacing polish
- Dev workflow: dev-restart.sh for one-command rebuild-and-relaunch
for more details, see:
Full Changelog: v0.1.4...v0.1.5