1import{u as h,a as e,f as m,g as u}from"./main-DZuML7Vw.js";const r={title:{zh:"æ´æ°æ¥å¿",en:"Changelog"},intro:{zh:"WindSpace æ¯ä¸ªæ£å¼çæ¬å¯¹ç¨æ·å¯è§çæ¹å¨ï¼æ°çæ¬å¨æä¸æ¹ã",en:"Everything new in each stable release of WindSpace â newest at the top."},metaDescription:{zh:"æ¥ç WindSpace 忣å¼çæ¬çæ°å¢åè½ãä½éªæ¹è¿ä¸é®é¢ä¿®å¤ã",en:"See what's new, improved and fixed in every stable release of WindSpace."},latestBadge:{zh:"ææ°",en:"Latest"},typeLabels:{added:{zh:"æ°å¢",en:"New"},improved:{zh:"æ¹è¿",en:"Improved"},fixed:{zh:"ä¿®å¤",en:"Fixed"},other:{zh:"å
¶ä»",en:"Other"}}};function a(t,n){return n==="en"?t.en:t.zh}const g=[{version:"2026.8.31.1",date:"2026-08-31",sections:[{type:"fixed",items:[{zh:"**ä¿®å¤å
¨å±å¿«æ·é®å¨ä¸»çå¬éé»å¤±èå忬¡å
¨é¨å¤±æ**ï¼å½ macOS 仿¾ç¤ºå¿«æ·é®ä¸»ç嬿£å¸¸ãå®é
å´ä¸åæéæé®æ¶ï¼WindSpace ä¼å¨å¤ç¨é鿥ä½å½åæä½åç«å³é建主çå¬ï¼â¥1ãâ¥2 çåºç¨åæ¢åå
¶ä»å¿«æ·é®æ ééå¯å³å¯æç»æ¢å¤ã",en:"**Fixed all global shortcuts becoming unresponsive again after the primary listener silently disconnects**: If macOS still reports the primary shortcut listener as active but stops delivering keystrokes, WindSpace now handles the current action through its fallback channel and immediately rebuilds the primary listener. App switching with Option-1 or Option-2 and other shortcuts recover continuously without restarting the app."}]}]},{version:"2026.8.29.2",date:"2026-08-29",sections:[{type:"added",items:[{zh:"**æºè½å®«æ ¼æå¤ä¸º 25 个çªå£æä¾ç¬ç«æ ¼ä½**ï¼åæ¶æå¸ 17 å° 20 个çªå£æ¶ä¼èªå¨ä½¿ç¨ 4Ã5ï¼21 å° 25 个çªå£æ¶ä½¿ç¨ 5Ã5ï¼ä¸åä»ç¬¬ 17 个çªå£èµ·å°±ä¸å
¶ä»çªå£éå ã",en:"**Smart Grid now gives up to 25 windows their own tiles**: It automatically uses a 4Ã5 grid for 17â20 windows and a 5Ã5 grid for 21â25, instead of overlapping windows starting with the 17th."}]},{type:"improved",items:[{zh:"**èµæºçæ§ä¸èªå¨å
³éå
¥å£æ¹ç¨å½©è²å¾æ **ï¼ä¾§è¾¹æ å页é¢é¡¶é¨ç°å¨ä½¿ç¨ä¸å
¶ä»åè½ä¸è´ç彩è²ç«ä½å¾æ ï¼ä¸åæ¾ç¤ºç°è²ç³»ç»ç¬¦å·ï¼åè½å
¥å£æ´å®¹æè¾¨è®¤ã",en:"**Resource Monitor and Auto Close now use colorful icons**: Their sidebar and page-header icons now match the dimensional, colorful style used by the rest of WindSpace instead of falling back to gray system symbols, making both features easier to spot."}]}]},{version:"2026.8.29",date:"2026-08-29",sections:[{type:"added",items:[{zh:"**æºè½å®«æ ¼æ¯ææ´å¤çªå£**ï¼åæ¶æå¸ 13 å° 16 个çªå£æ¶ï¼æºè½å®«æ ¼ä¼èªå¨æ¹ç¨ 4Ã4 å¸å±ï¼ä¸åæ¤å¨ 4Ã3 é循ç¯è¦çã",en:"**Smart Grid now handles more windows**: When tiling 13 to 16 windows, Smart Grid automatically switches to a 4Ã4 layout instead of wrapping extras inside 4Ã3."},{zh:"**å¯éçå¿å使ç¨ç»è®¡**ï¼é¦æ¬¡æå¼ä¸»çªå£æ¶ï¼ä¼è¯¢é®æ¯å¦å
许åéå¿ååè½ä½¿ç¨ä¸éè¯¯è¯ææ°æ®ï¼å¸®å©æ¹è¿äº§åãä½ å¯ä»¥åæææç»ï¼ä¸ä¼ä¸ä¼ é®ç®±ãLicense Keyãçªå£æ é¢ãåªè´´æ¿ãæä»¶å
容æè·¯å¾ã",en:"**Optional anonymous usage stats**: The first time you open the main window, WindSpace asks whether you want to send anonymous feature-usage and error-diagnosis data to help improve the product. You can accept or decline. Email, license keys, window titles, clipboard contents, and file paths are never uploaded."}]}]},{version:"2026.8.23",date:"2026-08-23",sections:[{type:"improved",items:[{zh:"**å¿«æ·çè¯çç¦ç¨ç¶ææ´æ¸
æ°ï¼ç¼è¾å¯¹é½æ´èªç¶**ï¼å
³éå¿«æ·çè¯æ»å¼å
³åï¼ç¸å
³å表åè®¾ç½®ä¼ææ¾åç°ï¼åæ¡ç¦ç¨çè¯ä¼æ¾ç¤ºãå·²ç¦ç¨ãæ è®°ãç¼è¾å±å¼å
容æ¶ï¼å
æ ãå ä½æç¤ºåæ£æç°å¨ä»åä¸ä½ç½®å¼å§ã",en:"**Clearer disabled states and more natural editor alignment for Quick Phrases**: Turning off the Quick Phrases master switch now visibly dims the related list and settings, while individually disabled phrases show a Disabled badge. In the exp
1ansion editor, the caret, placeholder, and text now start at the same position."}]},{type:"fixed",items:[{zh:"**ä¿®å¤å
¨å±å¿«æ·é®å¶åå
¨é¨å¤±æ**ï¼å½ macOS å¶å忢å主ç嬿éé®çäºä»¶ãå´ä»æ¥åç嬿£å¸¸æ¶ï¼WindSpace ä¼èªå¨éè¿ç¬ç«å¤ç¨ééç»§ç»æ¥æ¶å¿«æ·é®ï¼â¥1 / â¥2 / â¥3 çåºç¨åæ¢ä¸å
¶ä»æ®éå¿«æ·é®æ ééå¯å³å¯ç»§ç»ä½¿ç¨ã",en:"**Fixed all global shortcuts occasionally becoming unresponsive**: If macOS unexpectedly stops delivering keyboard events to the primary listener while still reporting it as active, WindSpace now continues through an independent fallback channel. App-switching shortcuts such as Option-1 / Option-2 / Option-3 and other regular shortcuts keep working without a restart."}]}]},{version:"2026.8.18",date:"2026-08-18",sections:[{type:"fixed",items:[{zh:"**ä¿®å¤ Finderãæå¼éä¸é¡¹ã误å¼å½åæä»¶å¤¹**ï¼å¨ Finder éé䏿件ææä»¶å¤¹åï¼ç¨ç»å®åºç¨æå¼æ¶ä¼æå¼çæ£éä¸çé£ä¸é¡¹ï¼ä¸å误æå½åæ£å¨æµè§çæä»¶å¤¹æå¼ã",en:"**Fixed Finder âOpen Selected Itemâ opening the current folder instead**: When a file or folder is selected in Finder, opening it with the bound app now opens that selected item, not the folder youâre currently browsing."}]}]},{version:"2026.8.14",date:"2026-08-14",sections:[{type:"fixed",items:[{zh:"**ä¿®å¤åºç¨åæ¢ Chrome æ¶åæå¼ä¸ä»½æåä¸è¿å»**ï¼å·²ç»æå¼ç Chromeï¼å
æ¬ç¨ç¬ç«é
ç½®å¯å¨çè°è¯ Chromeï¼ä¼ç´æ¥è¢«æ¿æ´»å°åå°ï¼ä¸ä¼åå¯å¨ä¸ä¸ªé»è®¤ Chromeï¼åæ¶åå¨åå°èªå¨å Chrome æ¶ï¼ä¼ä¼å
åå°ä½ è½çå°çé£ä¸ä»½ã",en:"**Fixed app switching opening another Chrome or failing to bring Chrome forward**: If Chrome is already open (including a debug Chrome launched with a separate profile), app switching now activates that existing window instead of starting a new default Chrome. When a background automation Chrome is also running, WindSp
1ace prefers the Chrome you can actually see."},{zh:"**ä¿®å¤ FinderãChrome ä¸é¨åå¸å±å¿«æ·é®çèµ·æ¥æ²¡ååº**ï¼è¿äºåºç¨å¶å°ä¼ææ æçæ¡é¢å
ç´ å½æå½åçªå£ï¼åå±ãæå¤§åçå¸å±å æ¤æ²¡æå¯è§ææãç°å¨ä¼èªå¨æ¹ç¨çæ£å¯ç§»å¨ççªå£ã",en:"**Fixed some layout shortcuts appearing to do nothing in Finder and Chrome**: These apps sometimes treat an invalid desktop element as the current window, so half-screen or maximize layouts had no visible effect. WindSpace now falls back to a real movable window."}]}]},{version:"2026.8.11",date:"2026-08-11",sections:[{type:"fixed",items:[{zh:"**ä¿®å¤å
¨å±å¿«æ·é®å¶åæ´ä½å¤±æ**ï¼å¿«æ·é®çå¬ä¸åä¸ºæ¯æ¬¡æé®åæ¥è¯»åè¾å
¥æ³å符ï¼é¿å
macOS è¾å
¥æºæå¡å¶åé»å¡åç¦ç¨å
¨å±çå¬ï¼çå¬è¢«ç³»ç»æåæ¶ä¹ä¼èªå¨ç«å³æ¢å¤ã",en:"**Fixed global shortcuts occasionally becoming completely unresponsive**: The shortcut listener no longer synchronously translates input-method characters for every keystroke, preventing macOS input-source stalls from disabling global monitoring. If the system pauses the listener, it now resumes immediately and automatically."},{zh:"**æ¸
çéçåªè´´æ¿æ°æ®ï¼éä½é¿æè¿è¡è´æ
**ï¼å级åä¼å®å
¨åå¹¶ä»éä¿ççæ§åªè´´æ¿è®°å½ï¼å¹¶æ¸
é¤å·²ç»è¿ç§»æè¿æçå·¨ååå¥½æ°æ®ï¼é¿å
å好æä»¶æç»è¨èãææ
¢åºç¨è¿è¡ã",en:"**Cleaned up legacy clipboard data to reduce long-running overhead**: After updating, WindSpace safely merges clipboard records that still need to be kept and removes migrated or expired oversized preference data, preventing the preferences file from continuing to grow and slow down the app."}]}]},{version:"2026.7.30",date:"2026-08-02",sections:[{type:"fixed",items:[{zh:"**ç¹å» Dock 徿 å¯ç´æ¥æå¼ä¸»çªå£**ï¼WindSpace å·²å¨è¿è¡ä½ä¸»çªå£è¢«å
³éæéèæ¶ï¼å次ç¹å» Dock 徿 ä¼ç´æ¥é建并置å主çªå£ï¼æ éåä»èåæ å¼¹çªè¿å
¥ã设置ãã",en:"**Click the Dock icon to open the main window directly**: When WindSpace is already running but its main window has been closed or hidden, clicking the Dock icon again now recreates the window and brings it to the front, without requiring you to open Settings from the menu bar popover."}]}]},{version:"2026.7.29",date:"2026-07-29",sections:[{type:"improved",items:[{zh:"**åªè´´æ¿å¾çå岿´çå
å**ï¼å¤å¶è¿çå¾çä¸åéå
¨é¨åå²è®°å½åæ¶å è½½å°å
åï¼èæ¯æé读åå¹¶éå¶ç¼å大å°ï¼å·²æå¾çåå²ä¼å¨å级åèªå¨å®å
¨è¿ç§»ï¼é¿æç§¯ç´¯å¤§éæªå¾æ¶ä¾ç¶ä¿ææµç
ã",en:"**Clipboard image history now uses much less memory**: Copied images are loaded only when needed instead of keeping the entire image history in memory, with a strict cache limit. Existing image history is migrated safely after updating, so WindSpace stays responsive even after accumulating many screenshots."},{zh:"**å 强快æ·é®è¾å
¥éç§ä¿æ¤**ï¼æ£å¸¸è¿è¡æ¶ä¸åè®°å½æ®éæé®å符åé项快æ·é®å¹é
è¿ç¨ï¼åå°æ ç¨æ¥å¿åè¾å
¥å
容æ´é²é£é©ã",en:"**Stronger privacy for keyboard input**: Normal operation no longer logs ordinary keystroke characters or every shortcut comparison, reducing unnecessary logging and the risk of exposing typed content."}]},{type:"fixed",items:[{zh:"**ä¿®å¤é¿æ¶é´è¿è¡åå¡é¡¿ææ ååº**ï¼ä¿®å¤èµæºçæ§åå°éæ ·é æçç³»ç»èµæºæç»æ³æ¼ï¼å¹¶ä¸ºé«é¢æ¥å¿å¢å 容éä¿æ¤ï¼é¿å
åºç¨è¿è¡æ°å°æ¶ææ°å¤©åèµæºä¸æå 积ã",en:"**Fixed slowdowns or unresponsiveness after long runtimes**: Resource Monitor background sampling no longer leaks system resources, and high-frequency logging now has a strict capacity limit to prevent resources from accumulating after hours or days of use."}]}]},{version:"1.0.18",date:"2026-07-24",sections:[{type:"fixed",items:[{zh:"**ç§»é¤ç»ç«¯æ é¢çå¬åèªå¨ç½®é¡¶**ï¼WindSpace ä¸åçå¬ TerminalãiTerm2 çç»ç«¯ççªå£æ é¢ï¼ä¹ä¸ä¼å Codex çå½ä»¤è¡å·¥å
·æ´æ°æ é¢èèªå¨æ¿æ´»ç»ç«¯ãæ¢èµ°å½ååºç¨ç¦ç¹ã",en:"**Removed terminal title monitoring and automatic focus stealing**: WindSpace no longer watches window titles in Terminal, iTerm2, or other terminal apps, so title updates from command-line tools such as Codex can no longer activate a terminal and take focus from your current app."},{zh:"**å¿«æ·é®æ¹ç»åç«å³çæ**ï¼ä¿®æ¹å¿«æ·é®åä¼ç«å»å·æ°è¿è¡æ¶çå¬ï¼æ ééå¯ WindSp
1aceã",en:"**Shortcut changes now take effect immediately**: Changing a shortcut now refreshes the runtime listener right away, with no WindSpace restart required."},{zh:"**å¿«æ·çè¯å®æ´ä¿çæ ¼å¼**ï¼ç¼è¾å¿«æ·çè¯æ¶ï¼ãå±å¼å
容ãä¼ä¿çç¨æ·è¾å
¥çé¦å°¾ç©ºæ ¼åæ¢è¡ï¼ä¸åå¨ä¿åæ¶èªå¨è£åªã",en:"**Quick Phrases now preserve formatting exactly**: Leading and trailing spaces and line breaks in Expansion text are now kept when a phrase is saved instead of being trimmed."}]}]},{version:"1.0.17",date:"2026-07-18",sections:[{type:"added",items:[{zh:"**åºç¨åæ¢å¯ç½®åå
¨é¨çªå£**ï¼ä½¿ç¨å¿«æ·é®åæ¢åºç¨æ¶ï¼é»è®¤ä¼æç®æ åºç¨çææçªå£ä¸èµ·å¸¦å°åå°ï¼é¿å
åªçå°æè¿ä½¿ç¨çå个çªå£ï¼ãåºç¨åæ¢ã设置页æ°å¢å¼å
³ï¼å¯éæ¶å
³é该è¡ä¸ºï¼å¹¶æ¯æè·¨è®¾å¤åæ¥ã",en:"**Bring all app windows to the front when switching**: App-switching shortcuts now bring every window from the target app to the front by default, instead of showing only its most recently used window. A new toggle in App Switcher settings lets you turn this behavior off at any time, and the preference syncs across devices."}]}]},{version:"1.0.16",date:"2026-07-17",sections:[{type:"added",items:[{zh:"**åºç¨å
æ¥çæ´æ°æ¥å¿**ï¼çæ¬è®¾ç½®é¡µæ°å¢ãæ¥çæ´æ°æ¥å¿ãå
¥å£ï¼å¯ç´æ¥å¨ WindSpace å
æå¼å®ç½æ´æ°æ¥å¿ï¼æ é跳转æµè§å¨ï¼åæ¶æä¾å è½½ç¶æã失败æç¤ºåéè¯æä½ã",en:"**View the changelog inside WindSpace**: A new View Changelog entry on the Version settings page opens the website changelog directly inside WindSpace without switching to a browser, with clear loading and error states plus a retry action."}]},{type:"fixed",items:[{zh:"**ä¿®å¤å°é®çæé®åºåè¿ç»è·³è¿å¸å±**ï¼ä½¿ç¨ Num5 çæé®å¾ªç¯å¤ä¸ªå¸å±æ¶ï¼å¦æå½ååºç¨çªå£è¾å¤ã忬¡å¸å±èæ¶è¾é¿ï¼ç¬¬ 2 个å第 3 个å¸å±å¯è½ä¼å¨ä¸æ¬¡æé®åè¿ç»æ§è¡ãç°å¨ä¼æ£ç¡®åå¹¶å¸å±æé´å»¶è¿å°è¾¾çå䏿¬¡æé®äºä»¶ï¼æ¯æ¬¡æä¸åªåè¿ä¸ä¸ªå¸å±ã",en:"**Fixed numpad shortcut sequences skipping through layouts**: When cycling layouts with a key such as Num5, arranging many windows could take long enough for the second and third layouts to run from a single press. Delayed events from the same physical key press are now merged correctly, so each press advances exactly one layout."}]}]},{version:"1.0.15",date:"2026-07-12",sections:[{type:"added",items:[{zh:"**èµæºçæ§åè½**ï¼æ°å¢ãèµæºçæ§ã页é¢åèåæ é¢æ¿ï¼å®æ¶æ¥çå½åç³»ç»éå个åºç¨å ç¨äºå¤å° CPUãå
ååç£çï¼ä¸é®æ¾åºæèèµæºçåºç¨ï¼æ¯ææ CPU / å
å / ç£çæåºï¼ä¹è½ç´æ¥ç»æå ç¨è¿é«çè¿ç¨ï¼èåæ åæ¶æä¾ CPU / å
å / ç£ç / ç½ç»åé¡¹ç³»ç»æ»è§ã",en:"**Resource Monitor**: A new Resource Monitor page and menu bar panel let you see exactly how much CPU, memory, and disk each app is using in real time, so you can instantly spot what's slowing your Mac down. Sort by CPU, memory, or disk, and quit runaway processes right from the panel; the menu bar also shows an at-a-glance CPU / memory / disk / network system overview."},{zh:"**èªå¨å
³éåè½**ï¼æ°å¢ãèªå¨å
³éã页é¢ï¼å代æ§çãèªå¨éåºä¸æ´»è·åºç¨ããæ¹ä¸ºæ´å®å
¨çç½å忍¡å¼ââåªææå¨å å
¥ååçåºç¨ï¼å¨é²ç½®ä¸æ®µæ¶é´ï¼15/30/60/120/240 åéå¯éï¼åæä¼è¢«å
³éï¼ä¸ä¼è¯¯å
³ååå¤çåºç¨ï¼å
³éåä¼å
å¼¹éç¥æéï¼å¹¶èªå¨è·³è¿æ£å¨ææ¾è§é¢ãæ¼ç¤ºæå
¨å±çåºç¨ï¼åå鿩卿¯æå次ç¹å»åæ¶å¾éã",en:`**Auto-Close**: A new Auto-Close page replaces the old "auto-quit inactive apps" toggle with a safer opt-in list â only apps you explicitly add get closed after sitting idle for a chosen period (15/30/60/120/240 minutes), so nothing outside the list is ever touched. You'll get a notification before an app closes, apps that are playing video, presenting, or in full screen are automatically skipped, and you can click an app again in the picker to remove it from the list.`},{zh:"**å®ç½æ°å¢æ´æ°æ¥å¿é¡µé¢**ï¼é¡µèæ°å¢ãæ´æ°æ¥å¿ãå
¥å£ï¼å¯æ¥çæ¯ä¸ªæ£å¼çæ¬çè¯¦ç»æ¹å¨è®°å½ã",en:'**New changelog page on the website**: A "Changelog" link in the footer now lets you browse detailed release notes for every stable version.'}]},{type:"fixed",items:[{zh:"**ä¿®å¤çªå£å¾å¤æ¶æå¿«æ·é®ä¼è¿ç»è§¦å夿¬¡å¸å±**ï¼åºç¨æ°éè¾å¤ã忬¡å®«æ ¼å¸å±èæ¶è¾é¿æ¶ï¼è¿ç»æå¿«æ·é®å®¹æè¢«ç¼å²è¡¥åï¼å¯¼è´å䏿¹çªå£è¢«è¿ç»å¸å±å¤æ¬¡ãä½ç½®éä¹±ãç°å¨å䏿¶å»åªå
è®¸ä¸æ¬¡å¸å±çæï¼æç»é夿§è¡ã",en:"**Fixed layouts firing multiple times in a row when many windows are open**: When arranging a large number of windows took longer than usual, repeated shortcut presses could get buffered and replayed, causing the same set of windows to be laid out several times and end up misplaced. Now only one layout can run at a time, eliminating the duplicate runs."}
1,{zh:"**ä¿®å¤é¨åçªå£æå¤§ååæ æ³è¿åå°å尺寸**ï¼å·²ç»è´´å¨å±å¹å·¦ä¸è§ççªå£æ§è¡ãæå¤§åãååè¿åï¼é«åº¦ææ¶ä¸ä¼æ¢å¤ãç°å¨æ¹è¿äºè¿åæ¶çä½ç½®æ ¡éªéè¯é»è¾ï¼ç¡®ä¿ç¨³å®è¿åã",en:"**Fixed some windows not restoring their original size after maximizing**: Windows already snapped to the top-left corner sometimes kept their maximized height when restored. The restore logic now retries position verification more reliably, so windows consistently return to their original size."},{zh:"**ä¿®å¤èåæ ãå½ååºç¨ / ææåºç¨ãæå¯¹æé®æ¾ç¤ºä¸å
¨**ï¼æºè½å¸å±ãéå å¸å±åç»éï¼ãå½ååºç¨ãåãææåºç¨ã两个æé®æ¤åå¶å°åªæ¾ç¤ºä¸ä¾§ã顺åºéä¹±æææ¡è¢«è£åï¼ç°å¨ç»ä¸æå¯¹ç¸é»æ¾ç¤ºãä¸¤è¡ææ¡å®æ´å¯è§ã",en:'**Fixed incomplete "current app / all apps" button pairs in the menu bar**: In Smart Layout and Overlapping groups, the paired "current app" and "all apps" buttons could sometimes show only one side, appear in the wrong order, or have their labels clipped. They now always appear side by side as a complete pair with fully visible two-line labels.'},{zh:"**ä¿®å¤çªå£ç½®é¡¶çåç»éæ©å¨ååºæ æ³ä½¿ç¨çåç»**ï¼æºè½å¸å±ãéå å¸å±çæçªå£èéæä½ç½®åç»çåç»æ¬èº«ä¸æ¯ææ´ç»ç½®é¡¶ï¼æ¤åä»ä¼åºç°å¨ç½®é¡¶åç»éæ©å¨éï¼ç°å¨å·²ä»å表ä¸ç§»é¤ã",en:"**Fixed the pin-group picker listing groups that can't actually be pinned**: Groups organized by window (like Smart Layout and Overlapping) don't support group-wide pinning, but they used to still show up in the pin-group picker. They're now excluded from the list."},{zh:"**ä¿®å¤èµæºçæ§é¡µé¢æ°å¼æ¢è¡**ï¼ç³»ç»æ»è§éç£çãç½ç»éçæ°å¼å¨çªå宽ä¸ä¼æ¤æä¸¤è¡æ¾ç¤ºï¼ç°å¨æ¹ä¸ºèªéåºå®½åº¦ï¼æ°å¼å§ç»åè¡æ¾ç¤ºã",en:"**Fixed numbers wrapping to two lines on the Resource Monitor page**: Disk and network speed values in the system overview used to get squeezed into two lines in narrow columns. Layout now adapts its width so values always stay on a single line."}]}]},{version:"1.0.14",date:"2026-06-16",sections:[{type:"fixed",items:[{zh:"**ä¿®å¤ç¼è¾å¿«æ·çè¯æ¶ãå±å¼å
容ãç¬¬ä¸æ¬¡æå¼ä¸ºç©º**ï¼å¨ãå¿«æ·çè¯ã设置页ç¹å¼ä»»æä¸æ¡çè¯è¿è¡ç¼è¾ï¼å¼¹çªéçãå±å¼å
å®¹ãæ¤åç¬¬ä¸æ¬¡æå¼æ¶ä¼æ¾ç¤ºç©ºç½ï¼è¦å
³æåç¹å¼ç¬¬äºæ¬¡æä¼åºç°å·²ä¿åçå
容ãç°å¨ç¬¬ä¸æ¬¡ç¹å¼å³æ£ç¡®æ¾ç¤ºå®æ´å
容ã",en:"**Fixed the Quick Phrases editor showing an empty âExpansionâ field on first open**: In Quick Phrases settings, opening a phrase to edit used to show a blank Expansion field the first time â you had to close and reopen it to see the saved text. It now shows the full content the very first time."}]}]},{version:"1.0.13",date:"2026-06-13",sections:[{type:"added",items:[{zh:"**æç´¢æ¯ææ¼é³ä¸æ¼é³é¦åæ¯**ï¼å¿«æ·æç´¢ï¼åºç¨å¯å¨ãç³»ç»æä½ãçªå£å¸å±ï¼ãå¨ä½éæ©å¨ãåºç¨éæ©å¨ãèªå¨éåºç½ååãæä»¶å¤¹æ°æ³¡çæææç´¢æ¡ï¼é½å¯ä»¥ç¨æ¼é³å
¨æ¼æé¦åæ¯æ¥æ¾ä¸ææ¡ç®ââè¾å
¥ âszâ æ âshizhongâ å³å¯æå°ãæ¶éãï¼âdnxmâ æå°ãçµèä¼ç ãï¼âwxâ æå°ã微信ãã常è§å¤é³åï¼éå¯ãæ¶é¿ãé³ä¹çï¼å·²ææ£ç¡®è¯»é³å¤çã",en:"**Search now supports Pinyin and Pinyin initials**: Every search box â Quick Search (app launch, system actions, window layouts), the action picker, the app picker, the auto-close allowlist, folder bubbles and more â can find Chinese entries by full Pinyin or just the initials. Typing âszâ or âshizhongâ finds Clock, âdnxmâ finds Sleep, âwxâ finds WeChat. Common heteronyms are handled with the correct reading."}]},{type:"fixed",items:[{zh:"**ä¿®å¤æç´¢æ æ³è·¨è¯è¨å½ä¸**ï¼ä¸æçé¢ä¸è¾å
¥è±æå
³é®è¯ï¼å¦ âsleepâï¼æä¸å°ãçµèä¼ç ãï¼è±æçé¢ä¸è¾å
¥ä¸æåæ ·æä¸å°ãç°å¨å¿«æ·æç´¢ãç³»ç»æä½è®¾ç½®é¡µãå¨ä½éæ©å¨çæç´¢ä¼åæ¶å¹é
ä¸è±æåç§°ã",en:"**Fixed search not matching across languages**: In a Chinese UI, an English keyword like âsleepâ wouldn't find Sleep, and the reverse failed in an English UI. Quick Search, the System Actions settings page and the action picker now match both Chinese and English names at once."}]}]},{version:"1.0.12",date:"2026-06-12",sections:[{type:"fixed",items:[{zh:"**å½»åºä¿®
1å¤ macOS 26.5 ä¸å®«æ ¼å¸å±é´ææ§å¤±æ**ï¼å¸å±æ¶çªå£å¶å°å¸¦çç¼æ
¢å¨ç»ç§»å¨ï¼æç»åå¨é误çä½ç½®æä¿ææ§å°ºå¯¸ãçæ£åå æ¯é¨ååºç¨è¢«å
¶ä»è¾
å©åè½å·¥å
·æä¸ç³»ç»å¨ç»æ è®°ï¼macOS 26.5 ä¼å¯¹è¿ç±»åºç¨ççªå£ç§»å¨/缩æ¾å¼ºå¶å å¨ç»ï¼å¸å±æä»¤å¨å¨ç»è¿ç¨ä¸è¢«ç³»ç»éé»å¿½ç¥ãç°å¨å¸å±æé´ä¼ä¸´æ¶å
³é该å¨ç»æ è®°ï¼å¹¶éçªå£æ ¡éªå®é
ä½ç½®ä¸å°ºå¯¸ãæªçææ¶èªå¨éè¯ï¼ç¡®ä¿æ¯ä¸ªçªå£æ å¨ç»ç¬é´è½å°ç®æ æ ¼åã",en:"**Completely fixed intermittent grid layout failures on macOS 26.5**: Windows would occasionally drift with a slow animation and end up in the wrong place or keep their old size. The real cause: some apps get tagged with a system animation flag by other accessibility tools, and macOS 26.5 force-animates window moves/resizes for them, so the layout command was silently ignored mid-animation. WindSpace now temporarily clears that flag during layout, verifies each window's actual position and size, and retries automatically when needed â so every window snaps into its target cell instantly, with no animation."}]},{type:"improved",items:[{zh:"**便æ·è®¾ç½®å¼å
³å¢å ç¶æè¯´æ**ï¼æ¯ä¸ªå¼å
³ææ°å¢å½åç¶æè¯´ææåï¼å
¨é¨åè½ææ¡ç»ä¸æ¹å为ãå¼å¯/å
³éãè¯ä¹ï¼ç¶æä¸ç®äºç¶ï¼ãçªå£ç¼©æ¾å¨ç»ãå¼å
³ç说æåæçææ¡ä»¶ï¼ééå¯å¯¹åºåºç¨ææ³¨ééæ°ç»å½ï¼ã",en:"**Convenient Settings toggles now show status text**: Each toggle has explanatory text beside it, with all wording unified around clear On/Off semantics so the current state is obvious at a glance. The âWindow resize animationâ toggle spells out when it takes effect (restart the app, or log out and back in)."}]}]},{version:"1.0.11",date:"2026-06-12",sections:[{type:"added",items:[{zh:"**ãçªå£ç¼©æ¾å¨ç»ãå
¨å±å¼å
³**ï¼ä¾¿æ·è®¾ç½® â å¨ç»å éååºæ°å¢å¼å
³ï¼å¯ä¸é®å
³é macOS ççªå£ç¼©æ¾/è°æ´å¤§å°å¨ç»ï¼è®©çªå£å¸å±åæ¢ç¬é´å°ä½ãä¸åæè¿æ¸¡å¨ç»ï¼éæ°æå¼å¼å
³å³æ¢å¤ç³»ç»é»è®¤å¨ç»ã设置对ä¹åæ°å¯å¨çåºç¨çæã",en:"**Global âWindow resize animationâ toggle**: A new switch under Convenient Settings â Animation speed turns off macOS window scaling/resize animations with one click, so layout changes land instantly with no transition; turn it back on to restore the system default. It applies to apps launched afterward."}]},{type:"fixed",items:[{zh:"**ä¿®å¤ macOS 26.5 ä¸å®«æ ¼å¸å±é´ææ§å¤±æï¼é¨ååºæ¯ï¼**ï¼çªå£ãä»å¤§åå°å¹¶ç§»å¨ãæ¶å¶å°ä¼åå¨åä½æåªæ¹äºå¤§å°æ²¡æªä½ç½®ãå¸å±åä¼èªå¨æ ¡éªçªå£å®é
ä½ç½®ï¼ä¸ä¸è´æ¶èªå¨éè¯ãï¼1.0.12 è¿ä¸æ¥å®ä½å°æ ¹å å¹¶å½»åºä¿®å¤ï¼",en:"**Fixed intermittent grid layout failures on macOS 26.5 (some cases)**: When a window had to shrink and move at the same time, it sometimes stayed put or resized without moving. WindSpace now verifies the window's actual position after layout and retries on a mismatch. (1.0.12 pins down the root cause and fixes it fully.)"},{zh:"**ä¿®å¤è¾
å©åè½æéå¼å¯¼å¼¹çªé¨åææ¡ä¸è·éç³»ç»è¯è¨**ï¼ä¸æç³»ç»ä¸å¼¹çªçæ é¢ã说æåæææé®æ¤åå§ç»æ¾ç¤ºè±æï¼ç°å¨æ£ç¡®æ¾ç¤ºä¸æã",en:"**Fixed the Accessibility permission prompt not following the system language**: On a Chinese system, the prompt's title, description and grant button always showed English; they now display correctly in Chinese."}]}]},{version:"1.0.10",date:"2026-06-10",sections:[{type:"fixed",items:[{zh:"**ä¿®å¤å级 macOS 26.5 å䏿æ»å¨å¼åºå®«æ ¼å¸å±é¢æ¿å¤±æ**ï¼macOS 26.5 è°æ´äºç³»ç»è§¦æ§æ¿è§¦ç¹æ°æ®çå
é¨ç»æï¼å¯¼è´ä¸ææ»å¨æå¿å ä¹å
¨é¨è¢«è¯¯å¤ä¸ºä¸ä¸¤æ ¹ææï¼å®«æ ¼å¸å±é¢æ¿æ æ³å¼åºï¼å¿«æ·é®è§¦åçå¸å±ä¸åå½±åï¼ãç°å¨æ¹ä¸ºè¿è¡æ¶èªå¨æ¢æµè§¦ç¹æ°æ®å¸å±ï¼å
¼å®¹æ°æ§ macOS çæ¬ï¼å¹¶å¯¹æªæ¥ç³»ç»åçº§åæ¬¡è°æ´ç»æçæ
åµèªå¨éåºã",en:"**Fixed the three-finger swipe not opening the grid panel after upgrading to macOS 26.5**: macOS 26.5 changed the internal layout of trackpad touch data, so three-finger swipes were almost always misread as one or tw
1o fingers and the grid panel wouldn't appear (shortcut-triggered layouts were unaffected). WindSpace now probes the touch-data layout at runtime, works across old and new macOS versions, and adapts automatically if a future update changes it again."}]}]},{version:"1.0.9",date:"2026-06-10",sections:[{type:"fixed",items:[{zh:"**æ»å¨é¢æ¿ä¸åè¢«ä¸¤ææ»å¨è¯¯å¼åº**ï¼ä¿®å¤äºåææ»å¨é¡µé¢æ¶å¶å°ä¼è¯¯å¼¹åºä¸ææ»å¨é¢æ¿çé®é¢ãæ¤åç¬¬ä¸æ ¹æææ¬åå¨è§¦æ§æ¿ä¸æ¹ï¼æªæ¥è§¦æ¿é¢ï¼ä¹ä¼è¢«è®¡ä¸ºä¸æ ¹ææï¼å¯¼è´ä¸¤ææä½è¢«è¯¯å¤ä¸ºä¸ææå¿ï¼ç°å¨åªæå®é
æå¨è§¦æ§æ¿ä¸çæææä¼è¢«ç»è®¡ï¼å¹¶å¢å äºè¿ç»ç¡®è®¤æºå¶ï¼ä¸æè§¦åçååºé度ä¸åå½±åã",en:"**The swipe panel is no longer triggered by two-finger scrolling**: Fixed the panel occasionally popping up while scrolling with two fingers. Previously a third finger hovering just above the trackpad (without touching) was still counted, so two-finger gestures were misread as three; now only fingers actually resting on the trackpad count, plus an added confirmation step â three-finger triggering stays just as responsive."}]}]},{version:"1.0.8",date:"2026-06-10",sections:[{type:"improved",items:[{zh:"**å®è£
å
æ£å¼ç¾åä¸ Apple å
¬è¯**ï¼åºç¨ä¸ DMG å®è£
å
æ¹ç¨ Apple Developer ID æ£å¼ç¾åï¼å¹¶éè¿ Apple å
¬è¯ï¼Notarizationï¼ã馿¬¡æå¼ä¸ååºç°ãæ æ³éªè¯å¼åè
ãçå®å
¨è¦åï¼æ éåå°ãç³»ç»è®¾ç½® â éç§ä¸å®å
¨æ§ãæå¨å
许ï¼ä¸è½½ååå»å³å¯ç´æ¥è¿è¡ã",en:"**Officially signed and Apple-notarized installer**: The app and DMG are now signed with an Apple Developer ID and notarized by Apple. The âdeveloper cannot be verifiedâ warning no longer appears on first launch â no more manually allowing it under System Settings â Privacy & Security; just download, double-click and run."},{zh:"**å®åè±æç¿»è¯**ï¼è¡¥å
çªå£å¸å±ç¸å
³çé¢çè±æææ¡ï¼è±æç¯å¢ä¸æ¾ç¤ºæ´å®æ´ã",en:"**More complete English translations**: Added English copy for window-layout screens so the English UI reads more completely."}]}]},{version:"1.0.7",date:"2026-05-22",sections:[{type:"added",items:[{zh:"**åªè´´æ¿å¼¹çªæ¯æå¿«æ·é®ä¸ Actions èå**ï¼åªè´´æ¿åå²å¼¹çªå
æ¯æ¡è®°å½æ¯ææ°åé®ç´éï¼æ°å¢ Actions èåèåç²è´´ã置顶ãå é¤çæä½ï¼å¸¸ç¨å¨ä½è§¦è¾¾æ´å¿«ã",en:"**Shortcuts and an Actions menu in the clipboard popup**: Each entry in the clipboard history popup can be picked directly with a number key, and a new Actions menu groups paste, pin, delete and more so common actions are quicker to reach."},{zh:"**æ°å¢ç«å 2/3 å¸å±**ï¼çªå£å¸å±æ°å¢ãä¸ 2/3ããä¸ 2/3ã两ç§çºµåæ¯ä¾ï¼éåé
读ãåä½ãé¿å
容æµè§åºæ¯ã",en:"**New vertical 2/3 layouts**: Window layouts add âTop 2/3â and âBottom 2/3â vertical splits, great for reading, writing and browsing long content."}]},{type:"improved",items:[{zh:"**ä¾§è¾¹æ å¯¼èª V2 彩è²å¾æ **ï¼ä¸»çªå£ä¾§è¾¹æ å
¨é¢åæ¢ä¸ºå½©è²å¾æ èµæºï¼æ¾ç¤ºå°ºå¯¸è°æ´å° 24ptï¼åè½å
¥å£è¯å«åº¦æ¾èæåã",en:"**Sidebar navigation V2 with color icons**: The main-window sidebar switches to full-color icons at 24pt, making each feature much easier to recognize."},{zh:"**设置页ç»ä¸ Hero å¡ç**ï¼ææè®¾ç½®å页éç¨ç»ä¸çé¡¶é¨è±éå¡çæ ·å¼ï¼èæ¯è£
é¥°æ¶æä¸ºåå·¦éè½çåè§æ£æ¹å½¢ç¢çï¼è§è§æ´è½»çä¸è´ã",en:"**Unified hero card across settings pages**: Every settings sub-page now uses a consistent top hero card, with background decoration pared back to softly scattered rounded squares for a lighter, more cohesive look."},{zh:"**ç³»ç»æä½å¾æ éå¡**ï¼ç³»ç»æä½æé®æ¶æä¸ºæµ
ç°çº¿æ§é£æ ¼ãç´§åå¸å±ï¼å¹¶å¯¹é½åç»å¾æ åï¼æ´ä½è§ææ´å
å¶ä¸ä¸ã",en:"**Redesigned system-action icons**: System-action buttons move to a light-gray line style with a tighter layout aligned to the group icon column, for a more restrained, professional feel."},{zh:"**å表æ»å¨è¡ä¸ºæ´å
å¶**ï¼åªè´´æ¿åå²ä¸å¿«éå¯å¨å表ç¹å»ä¸åè§¦åæ»å¨ï¼åªæé®ç ââ / æç´¢ / å é¤å¯¼è´éä¸è¡è¶
åºè§éæ¶ææ»å¨ï¼é¿å
æ è°æå¨ã",en:"**More restrained list scrolling**: Clicking items in the clipboard history and quick-launch lists no longer scrolls; scrolling only happens when ââ, search or delete pushes the selected row out of view, avoiding needless jumps."},{zh:"**åªè´´æ¿å¼¹çªè§è§ç²¾ç®**ï¼ç§»é¤å¼¹çª footer ä¸ Actions èåä¸åä½çåé线ï¼
1屿¬¡æ´å¹²åã",en:"**Cleaner clipboard popup**: Removed redundant dividers in the popup footer and Actions menu for a cleaner hierarchy."}]},{type:"fixed",items:[{zh:"**Quick Search å¼¹çªå表æ»å¨å¡é¡¿**ï¼ä¼å大éæç´¢ç»ææ¶çæ»å¨æ§è½ã",en:"**Quick Search list scrolling lag**: Improved scrolling performance with large result sets."},{zh:"**åªè´´æ¿å表ç¼å失æ**ï¼ä¿®å¤ç¼åå¤å®é»è¾å¯¼è´çå¶åå·æ°ä¸é夿¸²æé®é¢ã",en:"**Clipboard list cache invalidation**: Fixed occasional refreshes and re-renders caused by the cache-check logic."},{zh:"**è±æç¿»è¯è¡¥é½**ï¼åªè´´æ¿å¼¹çª Paste / Actionsãä¸ä¸ 2/3 å¸å±æè¿°çæ°å¢ææ¡çè±æç¿»è¯åæ¥è½å°ã",en:"**Filled-in English translations**: Added English for the clipboard popup's Paste / Actions and the new top/bottom 2/3 layout descriptions."}]}]},{version:"1.0.6",date:"2026-05-18",sections:[{type:"added",items:[{zh:"**宿¶ä»»å¡ï¼Scheduled Tasksï¼**ï¼å
¨æ°è°åº¦å¼æä¸è®¾ç½®é¢æ¿ï¼æ¯æææ¶é´è§¦åç³»ç»æä½ï¼å¯å¨è®¾ç½®é¡µå建ãç¼è¾ãå¯ç¨/ç¦ç¨ä»»å¡ï¼è¦ç忬¡ä¸é夿¶é´çç¥ã",en:"**Scheduled Tasks**: A brand-new scheduling engine and settings panel that triggers system actions by time. Create, edit and enable/disable tasks in settings, with both one-time and recurring schedules."},{zh:"**æ°å»ºä»»å¡äº¤äºéæ**ï¼å®æ¶ä»»å¡é¡µæ¹ä¸ºæéå±å¼çæ·»å 交äºï¼æ°å»ºä»»å¡çé¢ä¸å¿«æ·é® schema v3 忥éæï¼æä½è·¯å¾æ´çãæ´æä¸æã",en:"**Reworked ânew taskâ flow**: The Scheduled Tasks page switches to an on-demand expanding âaddâ interaction, and the new-task UI is rebuilt alongside shortcut schema v3 for a shorter, friendlier path."}]},{type:"improved",items:[{zh:"**ä¾§è¾¹æ å·¥å
·ç»é¡ºåºè°æ´**ï¼æä½¿ç¨é¢çéæä¸»çªå£ä¾§è¾¹æ å·¥å
·å
¥å£ï¼å¸¸ç¨åè½æ´é åã",en:"**Reordered sidebar tool groups**: Main-window sidebar entries are reordered by how often they're used, putting common features up front."},{zh:"**QuickLauncher ç®åå±ç¤º**ï¼ç§»é¤åç»æ é¢ï¼ä½¿ç¨æå¹³å表åç°ï¼åå°æ»å¨ä¸è§è§åªé³ã",en:"**Simplified QuickLauncher**: Removed group headers in favor of a flat list, cutting scrolling and visual noise."},{zh:"**å¼¹çªåå·ä¸è¡é«æ¾å¤§**ï¼æµ®å¨å¼¹çªï¼æç´¢ãåªè´´æ¿çï¼åå·ä¸è¡é«æ´ä½è°å¤§ï¼é¿æ¶é´ä½¿ç¨æ´èéã",en:"**Larger popup text and line height**: Floating popups (search, clipboard, etc.) get bigger text and line height for more comfortable extended use."},{zh:"**ç»ç«¯åæ¢å¨ V2 设计**ï¼ç»ç«¯åæ¢å¨è§è§ä¸äº¤äºæ V2 设计稿æç£¨ï¼æ¬æ¬¡çæ¬ææ¶å
³éå
¥å£ï¼å¾
åç»æç£¨å®æå鿰弿¾ã",en:"**Terminal Switcher V2 design**: The Terminal Switcher's visuals and interactions are polished to the V2 design; its entry is temporarily disabled this release and will return once polishing is done."}]},{type:"fixed",items:[{zh:"**宿¶ä»»å¡è®¾ç½®é¡µæé®ææ¬æªæ**ï¼è±æç¯å¢ä¸æé®ææ¡è¢«æªæï¼åæ¶è°æ´ç¦ç¨ç¶æé
è²ï¼ç¶ææ´æè¾¨è¯ã",en:"**Truncated buttons on the Scheduled Tasks page**: Button labels were cut off in English; disabled-state colors were also adjusted so states are easier to tell apart."},{zh:"**宿¶ä»»å¡é¡µéæ©å¨ä½æ¶ä¸æ¾ç¤ºå¸å± Tab**ï¼éæ©ç³»ç»å¨ä½æ¶ä¸åºåºç°çãå¸å±ãå类已éå»ï¼é¿å
误导ã",en:"**No Layout tab when picking an action for a scheduled task**: The âLayoutâ category that shouldn't appear when choosing a system action is now hidden, avoiding confusion."},{zh:"**宿¶ä»»å¡å é¤å
¥å£æ´ç**ï¼å徿¡¶æé®æå å°ä¸ç¹èåå
ï¼ä¸»æä½åºæ´å¹²åï¼é¿å
误å ã",en:"**Tidied the delete control for scheduled tasks**: The trash button is folded into the three-dot menu, keeping the main area clean and reducing accidental deletes."}]}]},{version:"1.0.5",date:"2026-05-12",sections:[{type:"improved",items:[{zh:"åå¸å
å级为 Apple Developer ID ç¾åä¸ Apple å
¬è¯æµç¨ï¼é¢åç½ç«ä¸è½½ä¸ Sparkle æ´æ°ååï¼åå°ç¨æ·é¦æ¬¡å®è£
æ¶éå° Gatekeeper å®å
¨æ¦æªçå¯è½ã",en:"Release builds move to Apple Developer ID signing and Apple notarization for both website downloads and Sparkle updates, reducing the chance of a Gatekeeper warning on first install."},{zh:"åå¸èæ¬æ°å¢ Developer ID è¯ä¹¦ãHardened Runtimeãå
¬è¯ç¥¨æ® staple ä¸ DMG å
¬è¯æ ¡éªï¼é¿å
误å叿ªå
¬è¯å®è£
å
ã",en:"The release script now verifies the Developer ID certificate, Hardened Runtime, notarization stapling and DMG notarization, preventing accidental release of an un-notarized installer."}]}]},{version:"1.0.4",date:"2026-05-12",sections:[{type:"added",items:[{zh:"**ç»ç«¯çªå£å¿«é忢å¨ï¼TerminalSwitcherï¼**ï¼æµ®çªå½¢å¼å¿«é忢 / æå / å±
ä¸ç»ç«¯çªå£ï¼æ¯æå¤å±éç¦»ä¸æå ææï¼åå°æ¶æ¦æª â1-9ï¼æ¿æ´»çªå£ä¸æµ®çªéå æ¶èªå¨æå å±å¼ï¼å¯å¨è®¾ç½®é¡µå¼å¯å¼å
³ãå¯å¨æ¢å¤åè°æ´å¿«æ·é®ã",en:"**Terminal window quick switcher (TerminalSwitcher)**: A floating panel to quickly switch, raise or center terminal windows; supports per-display isolation and a collapse handle; intercepts â1-9 while in the foreground; auto-collapses when the active window overlaps the panel; toggle, launch-restore and shortcuts are all configurable in settings."},{zh:"**æé®æ å°ï¼Key Remapï¼**ï¼å¯å¨è®¾ç½®ä¸èªå®ä¹æé®æ å°è§åï¼å¦ Caps Lock â Esc çï¼ã",en:"**Key Remap**: Define your own key-mapping rules in settings (e.g. Caps Lock â Esc)."},{zh:"**å¿«æ·æç´¢ï¼è®¡ç®å¨ä¸è´§å¸æ¢ç®**ï¼æç´¢æ¡å
ç´æ¥è¾å
¥ç®å¼å³å¯å¾å°ç»æï¼è´§å¸æ¢ç®æ¯æå¤æ ¼å¼åä½ï¼ä¸å
ãæ´æ°ãå°æ°çå¤ç§å±ç¤ºï¼ã",en:"**Quick Search: calculator and currency conversion**: Type an expression right in the search box to get the result; currency conversion supports multiple display formats."},{zh:"**ç³»ç»æä½å¨ä½å½©è²å¾æ **ï¼å¨ä½éæ©å¨å
ç³»ç»å¨ä½æ¹ç¨å½©è²å¾æ ï¼æ´æè¾¨è¯ã",en:"**Color icons for system actions**: System actions in the action picker now use color icons for easier recognition."},{zh:"**æ¬å° 14 天å
è´¹è¯ç¨**ï¼æ éç»å½ãæ éèç½å³å¯ä¸é®å¯å¨è¯ç¨ã",en:"**Local 14-day free trial**: Start a trial with one click â no sign-in and no internet required."},{zh:"**é®ç®± + License Key ç¦»çº¿æ¿æ´»**ï¼è´ä¹°åå¯å¨ç¦»çº¿åºæ¯ä¸ç¨é®ç®± + License Key å®ææ¿æ´»ã",en:"**Offline activation with email + license key**: After purchase you can activate offline using your email and license key."},{zh:"**æ¿æ´»æµç¨å®æ´ UI éåï¼V5ï¼**ï¼åºäº 9 æå忍¡åéææ¿æ´»é¡µä¸è´¦æ·é¡µï¼è¦çæªç»å½ / è¯ç¨ä¸ / è¯ç¨å°æ / å·²æ¿æ´» / 设å¤è¶
éçåç±»ç¶æã",en:"**Fully rewritten activation UI (V5)**: The activation and account pages are rebuilt on a 9-state model covering signed-out, trialing, trial-expired, activated, device-limit-exceeded and more."}]},{type:"improved",items:[{zh:"ç»ç«¯åæ¢å¨è®¾ç½®é¡µæè®¾è®¡ç¨¿éåï¼æ°å¢ Hero å¡çãè£
饰å䏿¥å¿å±ç¤ºã",en:"The Terminal Switcher settings page is rebuilt to the design, adding a hero card, decorative circles and a log view."},{zh:"åºç¨è®¾ç½®é¡µæ´ä½å»å¡çåï¼è§è§å¯¹é½ä¸»è®¾è®¡ç¨¿ã",en:"App settings pages drop their card framing to align with the main design."},{zh:"å·²æ¿æ´»è´¦æ·é¡µæç®åï¼ç§»é¤åä½ç license æç»ä¸æä½æé®ã",en:"The activated account page is simplified, removing redundant license details and buttons."},{zh:"å级å¡çæ°å¢ä»·æ ¼è¡ä¸éæ¶åä»· Badgeã",en:"The upgrade card adds a price row and a limited-time half-price badge."},{zh:"ä»·æ ¼å¡ Badge æ¹ä¸ºçº¯è¶åå½¢ï¼ç§»é¤ä¸å¸¦ææï¼ã",en:"Price-card badges become plain pills (the ribbon effect is removed)."},{zh:"äºåæ¥åæ¶ç«¯å°ç«¯å å¯ï¼æ¹ä¸ºææäºå¤ä»½ï¼ä¸ç½é¡µç«¯ç»å½æä¿æä¸è´ã",en:"
1Cloud sync drops end-to-end encryption in favor of plain cloud backup, consistent with the web sign-in state."},{zh:"å¤å¤ç¨æ·å¯è§ææ¡è¡¥å
¨ä¸è±æç¿»è¯ï¼èååè½ãå¿«æ·é®ãæç¤ºé³ãDMG ä¸è½½å¤ç¨æ¹å¼ãå¨ä½éæ©å¨åç»ã设置页æè¿°çã",en:"Filled in bilingual copy across many user-facing strings: menu features, shortcuts, sounds, the DMG download fallback, action-picker groups, settings descriptions and more."},{zh:"å级 / Pro å¼å¯¼å¡å
±äº«åä¸å¼¹çªä¸»ä½ï¼å¤è§ä¸äº¤äºä¸è´ã",en:"The upgrade and Pro prompt cards share a single dialog body for consistent look and behavior."}]},{type:"fixed",items:[{zh:"ç»ç«¯åæ¢å¨ç â¥F / â¥S å¿«æ·é®æ¹ä¸ºåå°å¨ææ³¨åï¼é¿å
å¨é WindSpace åå°æ¶è¯¯æ¦æªå
¶ä»åºç¨çååå¿«æ·é®ã",en:"The Terminal Switcher's â¥F / â¥S shortcuts now register dynamically in the foreground, so they no longer hijack the same shortcuts in other apps when WindSpace isn't frontmost."},{zh:"å¨ä½éæ©å¨åç»æ ç¾çæ¬å°åæ ¼å¼åéä½ã",en:"Fixed mis-formatted localized group labels in the action picker."},{zh:"æ°åæ ¼å¼åä¸è¥å¹²è®¾ç½®é¡¹æè¿°çç¿»è¯ç¼ºå¤±ã",en:"Fixed missing translations for number formatting and several settings descriptions."}]}]},{version:"1.0.3",date:"2026-05-05",sections:[{type:"fixed",items:[{zh:"å¤å±ç¯å¢ä¸ãå¿«æ·é®å¾ªç¯åæ¢ãå¨åæ¢å±å¹åè½ä»ç¬¬ 1 æ¥éæ°å¼å§ï¼é¿å
å¨ A 屿䏿¬¡ååå° B å±ç»§ç»ææ¶è¢«å½æåä¸åºåç第 2 次æä¸èè·³æ¥ã",en:"On multi-display setups, the shortcut cycle now restarts from step 1 after switching screens â so pressing once on screen A and then continuing on screen B is no longer treated as the second press of the same sequence (which used to skip a step)."}]}]},{version:"1.0.2",date:"2026-05-04",sections:[{type:"added",items:[{zh:"è®¾ç½®é¡µçæ¬åºæ°å¢ãæ£æ¥æ´æ°ãæé®ï¼å¯æå¨è§¦å Sparkle æ£æ¥ã",en:"Added a âCheck for Updatesâ button in the settings version section to trigger a Sparkle check manually."},{zh:"Sparkle èªå¨æ´æ°æ¯æ Beta ééï¼ä½è
æ¬æºå¯å¨ã设置 â çæ¬ãå¼å¯ãæ¥æ¶ Beta æ´æ°ãå¼å
³åç¬å betaï¼æ®éç¨æ·ä¸åå½±åã",en:"Sparkle auto-update gains a Beta channel: a âReceive beta updatesâ toggle under Settings â Version lets the author opt into betas without affecting regular users."}]},{type:"improved",items:[{zh:"Sparkle å级æµç¨æ¹ä¸ºãä¸è½½ dmg + æå¼ Finder æå¨å®è£
ãè¿æ¸¡æ¹æ¡ï¼é¿å
ad-hoc ç¾ååºç¨ç´æ¥æ¿æ¢è¢« Gatekeeper æ¦æªã",en:"The Sparkle update flow switches to a âdownload the DMG and install via Finderâ interim approach, avoiding Gatekeeper blocking an in-place replacement of an ad-hoc-signed app."},{zh:"å¿«æ·æç´¢åç±»æ 颿¹ç¨ç³»ç»åºç¨çå®å¾æ 并彩è²åï¼æåè§è§å±çº§ä¸å¯è¯å«æ§ã",en:"Quick Search category headers now use real system app icons in color, improving visual hierarchy and recognition."},{zh:"ç»å½æä¿æ´»é»è¾ä¼åï¼ç½ç»æ
éæ¶ä¿çç»å½æï¼ä»
å¨ 401 å鍿§è§¦åæ¶ææ¸
é¤åæ®ã",en:"Improved sign-in persistence: the session is kept through network failures, and credentials are only cleared after a two-strike 401."},{zh:"èªå¨å
³éç½ååè§å¾ææ¡ä¸è±æç¿»è¯å®åã",en:"Refined the copy and English translations for the auto-close allowlist view."},{zh:"License æ¿æ´»ä¸ç»å½æµç¨è¡¥å
¨å½é
åææ¡ã",en:"Filled in i18n copy across the license activation and sign-in flows."},{zh:"åºç¨åæ¢ / æµç¨ç¸å
³ææ¡è¡¥å
¨è±æç¿»è¯ã",en:"Added English translations for app-switcher and related flow copy."}]},{type:"fixed",items:[{zh:"åªè´´æ¿åå²å¼¹çªæªæ¿æ´» PRO æ¶ç¦æ¢å¼åºï¼å¹¶å¼å¯¼ç¨æ·å级ã",en:"The clipboard history popup no longer opens without PRO and guides you to upgrade instead."},{zh:"å¿«éå¯å¨å¨åç»é¡¶é¨ç©ºç½é®é¢ã",en:"Fixed extra blank space at the top of quick-launcher groups."},{zh:"å¿«æ·æç´¢åç±»æ é¢å¾æ 对é½ä¸è§è§å±çº§ã",en:"Fixed icon alignment and visual hierarchy in Quick Search category headers."},{zh:"appcast å¢å `sparkle:version` åæ®µï¼è§£å³ Sparkle v2 è§£æå¤±è´¥ã",en:"Added the `sparkle:version` field to the appcast, fixing a Sparkle v2 parse failure."}]},{type:"other",items:[{zh:"ææ¶ç¦ç¨å¿«æ·æç´¢åå¿«æ·å¯å¨å
¥å£ï¼å¾
åç»éæ°æç£¨å弿¾ï¼ã",en:"Temporarily disabled the Quick Search and quick-launch entries (to reopen after further polish)."},{zh:"å叿¸ éä» GitHub Release åæ¢å° Cloudflare R2 + `cdn.windseed.app`ã",en:"Moved the release channel from GitHub Releases to Cloudflare R2 + `cdn.windseed.app`."}]}]},{version:"1.0.1",date:"2026-05-01",note:{zh:"é¦ä¸ªå¯¹å¤å
¬å¼ç稳å®çæ¬ã",en:"The first public stable release."}}],l=["added","improved","fixed","other"];function w(t){const n=t.match(/^\*\*(.+?)\*\*(?:[ï¼:]\s*)?([\s\S]*)$/);if(!n)return t;const[,i,s]=n;return e.jsxDEV(e.Fragment,{children:[e.jsxDEV("strong",{className:"changelog-item-lead",children:i},void 0,!1,{fileName:"/Users/scott/projects/mac-projects/mac-window-layout/windspace-web/src/components/changelog/ChangelogTimeline.tsx",lineNumber:27,columnNumber:7},this),s?e.jsxDEV("span",{className:"changelog-item-body",children:s},void 0,!1,{fileName:"/Users/scott/projects/mac-projects/mac-window-layout/windspace-web/src/components/changelog/ChangelogTimeline.tsx",lineNumber:28,columnNumber:15},this):null]},void 0,!0,{fileName:"/Users/scott/projects/mac-projects/mac-window-layout/windspace-web/src/components/changelog/ChangelogTimeline.tsx",lineNumber:26,columnNumber:5},this)}function y(){const{locale:t}=h();return e.jsxDEV("div",{className:"changelog-timeline",children:g.map((n,i)=>{const s=i===0;return e.jsxDEV("article",{className:"changelog-entry",children:[e.jsxDEV("div",{className:"changelog-entry-meta",children:[e.jsxDEV("div",{className:"changelog-version-row",children:[e.jsxDEV("h2",{className:"changelog-version",children:n.version},void 0,!1,{fileName:"/Users/scott/projects/mac-projects/mac-window-layout/windspace-web/src/components/changelog/ChangelogTimeline.tsx",lineNumber:44,columnNumber:17},this),s?e.jsxDEV("span",{className:"changelog-latest-badge",children:a(r.latestBadge,t)},void 0,!1,{fileName:"/Users/scott/projects/mac-projects/mac-window-layout/windspace-web/src/components/changelog/ChangelogTimeline.tsx",lineNumber:46,columnNumber:19},this):null]},void 0,!0,{fileName:"/Users/scott/projects/mac-projects/mac-window-layout/windspace-web/src/components/changelog/ChangelogTimeline.tsx",lineNumber:43,columnNumber:15},this),e.jsxDEV("time",{className:"changelog-date",dateTime:n.date,children:n.date},void 0,!1,{fileName:"/Users/scott/projects/mac-projects/mac-window-layout/windspace-web/src/components/changelog/ChangelogTimeline.tsx",lineNumber:51,columnNumber:15},this)]},void 0,!0,{fileName:"/Users/scott/projects/mac-projects/mac-window-layout/windspace-web/src/components/changelog/ChangelogTimeline.tsx",lineNumber:42,columnNumber:13},this),e.jsxDEV("div",{className:"changelog-entry-body",children:[n.note?e.jsxDEV("p",{className:"changelog-note",children:a(n.note,t)},void 0,!1,{fileName:"/Users/scott/projects/mac-projects/mac-window-layout/windspace-web/src/components/changelog/ChangelogTimeline.tsx",lineNumber:58,columnNumber:17},this):null,(n.sections??[]).slice().sort((o,c)=>l.indexOf(o.type)-l.indexOf(c.type)).map(o=>e.jsxDEV("section",{className:"changelog-group",children:[e.jsxDEV("span",{className:`changelog-tag changelog-tag-${o.type}`,children:a(r.typeLabels[o.type],t)},void 0,!1,{fileName:"/Users/scott/projects/mac-projects/mac-window-layout/windspace-web/src/components/changelog/ChangelogTimeline.tsx",lineNumber:70,columnNumber:21},this),e.jsxDEV("ul",{className:"changelog-list",children:o.items.map((c,p)=>e.jsxDEV("li",{className:"changelog-list-item",children:[e.jsxDEV("span",{className:"changelog-list-bullet","aria-hidden":"true"},void 0,!1,{fileName:"/Users/scott/projects/mac-projects/mac-window-layout/windspace-web/src/components/changelog/ChangelogTimeline.tsx",lineNumber:78,columnNumber:27},this),e.jsxDEV("span",{className:"changelog-list-text",children:w(a(c,t))},void 0,!1,{fileName:"/Users/scott/projects/mac-projects/mac-window-layout/windspace-web/src/components/changelog/ChangelogTimeline.tsx",lineNumber:79,columnNumber:27},this)]},p,!0,{fileName:"/Users/scott/projects/mac-projects/mac-window-layout/windspace-web/src/components/changelog/ChangelogTimeline.tsx",lineNumber:77,columnNumber:25},this))},void 0,!1,{fileName:"/Users/scott/projects/mac-projects/mac-window-layout/windspace-web/src/components/changelog/ChangelogTimeline.tsx",lineNumber:75,columnNumber:21},this)]},o.type,!0,{fileName:"/Users/scott/projects/mac-projects/mac-window-layout/windspace-web/src/components/changelog/ChangelogTimeline.tsx",lineNumber:69,columnNumber:19},this))]},void 0,!0,{fileName:"/Users/scott/projects/mac-projects/mac-window-layout/windspace-web/src/components/changelog/ChangelogTimeline.tsx",lineNumber:56,columnNumber:13},this)]},n.version,!0,{fileName:"/Users/scott/projects/mac-projects/mac-window-layout/windspace-web/src/components/changelog/ChangelogTimeline.tsx",lineNumber:41,columnNumber:11},this)})},void 0,!1,{fileName:"/Users/scott/projects/mac-projects/mac-window-layout/windspace-web/src/components/changelog/ChangelogTimeline.tsx",lineNumber:37,columnNumber:5},this)}const d="https://windseed.app/windspace/changelog";function b(){const{locale:t}=h(),{embed:n}=m.useSearch(),i=a(r.title,t),s=a(r.metaDescription,t),o=a(r.intro,t);return e.jsxDEV(e.Fragment,{children:[e.jsxDEV("title",{children:`${i} · WindSpace`},void 0,!1,{fileName:"/Users/scott/projects/mac-projects/mac-window-layout/windspace-web/src/routes/changelog.tsx?tsr-split=component",lineNumber:28,columnNumber:7},this),e.jsxDEV("meta",{name:"description",content:s},void 0,!1,{fileName:"/Users/scott/projects/mac-projects/mac-window-layout/windspace-web/src/routes/changelog.tsx?tsr-split=component",lineNumber:29,columnNumber:7},this),e.jsxDEV("link",{rel:"canonical",href:d},void 0,!1,{fileName:"/Users/scott/projects/mac-projects/mac-window-layout/windspace-web/src/routes/changelog.tsx?tsr-split=component",lineNumber:30,columnNumber:7},this),e.jsxDEV("meta",{property:"og:title",content:`${i} · WindSpace`},void 0,!1,{fileName:"/Users/scott/projects/mac-projects/mac-window-layout/windspace-web/src/routes/changelog.tsx?tsr-split=component",lineNumber:31,columnNumber:7},this),e.jsxDEV("meta",{property:"og:description",content:s},void 0,!1,{fileName:"/Users/scott/projects/mac-projects/mac-window-layout/windspace-web/src/routes/changelog.tsx?tsr-split=component",lineNumber:32,columnNumber:7},this),e.jsxDEV("meta",{property:"og:url",content:d},void 0,!1,{fileName:"/Users/scott/projects/mac-projects/mac-window-layout/windspace-web/src/routes/changelog.tsx?tsr-split=component",lineNumber:33,columnNumber:7},this),e.jsxDEV("meta",{name:"twitter:title",content:`${i} · WindSpace`},void 0,!1,{fileName:"/Users/scott/projects/mac-projects/mac-window-layout/windspace-web/src/routes/changelog.tsx?tsr-split=component",lineNumber:34,columnNumber:7},this),e.jsxDEV("meta",{name:"twitter:description",content:s},void 0,!1,{fileName:"/Users/scott/projects/mac-projects/mac-window-layout/windspace-web/src/routes/changelog.tsx?tsr-split=component",lineNumber:35,columnNumber:7},this),e.jsxDEV(u,{icon:"fa-solid fa-clock-rotate-left",title:i,lead:o,hideChrome:n,children:e.jsxDEV(y,{},void 0,!1,{fileName:"/Users/scott/projects/mac-projects/mac-window-layout/windspace-web/src/routes/changelog.tsx?tsr-split=component",lineNumber:38,columnNumber:9},this)},void 0,!1,{fileName:"/Users/scott/projects/mac-projects/mac-window-layout/windspace-web/src/routes/changelog.tsx?tsr-split=component",lineNumber:37,columnNumber:7},this)]},void 0,!0,{fileName:"/Users/scott/projects/mac-projects/mac-window-layout/windspace-web/src/routes/changelog.tsx?tsr-split=component",lineNumber:26,columnNumber:10},this)}export{b as component};
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.