Repository navigation
Off Work Countdown 3.2.1
Immutable
release. Only release title and notes can be modified.
What's new in 3.2.1
- Schedules: choose Fixed weekdays, Alternating weeks, Work/rest rotation, Free roster or Manual timer. In a free roster, pick a shift, then click or drag across dates to fill them in.
- Holiday calendar: choose your country or region, and its public holidays and makeup workdays go straight into your schedule.
- Countdown digits now roll as they change, in the main window, the floating timer and the macOS menu bar Mini Timer.
- The woodfish floating timer is easier to read, shows how long until your next shift once you're done, and makes every knock easier to see.
- Animations run at the full refresh rate on 120 Hz ProMotion Macs.
- The countdown no longer skips a second now and then, plus other small fixes.
3.2.1 更新内容
- 排班:可选固定星期、单双休、轮班轮休、自由排班或手动计时。自由排班下,选好班次后点击或拖过日期即可快速填入。
- 节假日安排:选择国家或地区后,法定假日和调休上班会直接排进你的班表。
- 倒计时数字变化时会滚动切换,主窗口、悬浮计时器和 macOS 菜单栏迷你计时器都是如此。
- 木鱼悬浮计时器排版更清晰,下班后会显示距下一班还有多久,每次敲击的反馈也更明显。
- 在 120Hz ProMotion 屏幕的 Mac 上,动画以满帧率运行。
- 修复了倒计时偶尔跳过一秒的问题,以及其他小问题。
Off Work Countdown desktop release.
See README for installation notes on unsigned macOS and Windows builds.
What's Changed
✨ New Features
- feat(ios): 3.2.0 architecture remediation and Apple Watch by @ififi2017 in #179
- feat(ios): adopt the Icon Composer app icon for iPhone and Watch by @ififi2017 in #182
- feat(watch): surface the shift in the Smart Stack and close out plan 017 locally by @ififi2017 in #183
- feat(desktop): use the Icon Composer app icon on macOS by @ififi2017 in #186
- feat(ios): group reminders and fold lunch into schedule settings by @ififi2017 in #187
- feat(ios): resolve shifts natively in Swift (plan 019 R1) by @ififi2017 in #188
- feat(ios): store extended schedules and hand-set days (plan 018 P8-a) by @ififi2017 in #197
- feat(ios): resolve extended schedule days in Swift (plan 018 P8-b) by @ififi2017 in #198
- feat(ios): run the countdown and Records on the extended schedule (plan 018 P8-c1a) by @ififi2017 in #203
- feat(ios): plan the shift roster on a month calendar (plan 018 P8-c1b) by @ififi2017 in #204
- feat(ios): fill in earlier months on the roster calendar (plan 018 P8-c2a) by @ififi2017 in #205
- feat(ios): make Watch schedules independent and rebuild roster calendar by @ififi2017 in #207
- feat(ios): add holiday templates and redesign schedule calendar by @ififi2017 in #208
- feat(ios): clear future free-schedule plans safely by @ififi2017 in #211
- perf(watch): update complication progress every minute by @ififi2017 in #213
- feat(android): add native project, rules core and records store by @ififi2017 in #216
- feat(android): port day records, focus lifecycle and focus planning (T12, T13) by @ififi2017 in #219
- feat(android): port reminder rules and schedule them with AlarmManager (T14) by @ififi2017 in #220
- feat(android): generate native string resources from the iOS catalog (T05) by @ififi2017 in #221
- feat(android): add DoneAt design tokens on stable Material3 (T04) by @ififi2017 in #222
- feat(android): add the app shell, settings and first-run setup (T15) by @ififi2017 in #223
- feat(android): add the timer, schedule and salary pages (T16) by @ififi2017 in #224
- feat(android): add backup import, export and the records data page (T11) by @ififi2017 in #225
- feat(android): add the records week, month and day pages (T17a) by @ififi2017 in #226
- feat(android): add the records year view and day editing (T17b) by @ififi2017 in #227
- feat(android): add the Life scale and profile editor (T17c) by @ififi2017 in #228
- feat(android): add the focus page (T18a) by @ififi2017 in #229
- feat(web): search titles, work hours calculator and web timer redesign by @ififi2017 in #232
- feat(web): showcase the native apps below the fold by @ififi2017 in #231
- feat(desktop): match the web timer's font, title and rolling digits by @ififi2017 in #234
- feat(android): add the Usual scale and usual-day templates (T18b) by @ififi2017 in #235
- feat(android): add share cards and backup rules (T19a) by @ififi2017 in #236
- feat(android): add the home-screen countdown widget (T19b) by @ififi2017 in #237
- feat(android): add the countdown notification (T19c) by @ififi2017 in #238
- feat(android): complete pre-Console client and UI polish by @ififi2017 in #239
- perf(ios): smooth tab switches and settings pushes by @ififi2017 in #241
- feat(extension): add the DoneAt Chrome toolbar popup by @ififi2017 in #245
- feat(web): link the Chrome extension from the get-app section by @ififi2017 in #246
- feat(ios): add calendar painting and annual shift ranges by @ififi2017 in #247
- feat(ios): fade between app themes by @ififi2017 in #248
- feat(android): add calendar painting and annual shift ranges by @ififi2017 in #249
- feat(ios): add the leave planner engine by @ififi2017 in #251
- feat(android): add custom accents, glass tabs and Play offers by @ififi2017 in #250
- feat(ios): plan time off around holidays and shifts by @ififi2017 in #252
- feat(ios): wake-up alarms before each shift by @ififi2017 in #255
- feat(ios): show recorded overtime to free users as one line by @ififi2017 in #254
- feat(desktop): add iOS schedule patterns and holiday calendars to the desktop app by @ififi2017 in #257
- perf(desktop): render WebView animation at full ProMotion refresh rate by @ififi2017 in #259
🐛 Bug Fixes
- fix(reminders): give lunch reminders their own title by @ififi2017 in #184
- fix(ios): keep geometry-only shapes nonisolated by @ififi2017 in #189
- fix(ios): drop the privacy note under Reminders in settings by @ififi2017 in #190
- fix(ios): keep a chosen rotation day when switching to rotation by @ififi2017 in #191
- fix(ios): check the string catalog and stop showing raw key names (plan 019 L2a) by @ififi2017 in #200
- fix(ios): bundle the locale files into the widget again by @ififi2017 in #201
- fix(ios): stop the share sheet crashing on iOS 27 by @ififi2017 in #206
- fix(ios): resolve 3.2.0 schedule and Watch regressions by @ififi2017 in #209
- fix(ios): stabilize holiday region names and reduce Watch widget rendering by @ififi2017 in #210
- fix(ios): remove Apple Watch free messaging by @ififi2017 in #212
- fix(asc): preserve reviewed 3.2.0 copy by @ififi2017 in #214
- fix(android): stop the focus page redrawing every frame by @ififi2017 in #230
- fix(mobile): validate salary edits and prepare 3.2.1 by @ififi2017 in #240
- fix(ios): unblock Xcode Cloud's string catalog check by @ififi2017 in #242
- fix(android): surface unreadable archives and verify recovery by @ififi2017 in #243
- fix(ios): keep future workdays when old roster days name a missing shift type by @ififi2017 in #253
- fix(desktop): tidy the woodfish floating timer by @ififi2017 in #258
- fix(desktop): remove the duplicate website row from settings by @ififi2017 in #260
📚 Documentation
- docs(plans): add extended scheduling, holidays and native iOS rules plans by @ififi2017 in #185
- docs(plans): close out plan 013 by @ififi2017 in #193
- docs(agents): split agent guides and reorganize plans for Android by @ififi2017 in #215
- docs(ios): record the 3.2.0 App Store release by @ififi2017 in #233
- docs(plans): add 021 workplace automation plan v0.3 by @ififi2017 in #256
🔧 Other Changes
- chore(store): windows shots, 17-locale mac listing, compliant iOS previews by @ififi2017 in #177
- chore(store): take the Microsoft Store listing to 19 languages by @ififi2017 in #178
- test(ios): pin scene timer tests to the device zone by @ififi2017 in #180
- fix(ios): keep launch continuous and stop devices duplicating focus sessions by @ififi2017 in #181
- refactor(ios): resolve reminders in Swift (plan 019 R2) by @ififi2017 in #192
- chore(ios): set the App Store category, icon asset scope and Xcode Cloud manifest by @ififi2017 in #194
- refactor(ios): resolve summaries and income in Swift (plan 019 R3) by @ififi2017 in #195
- refactor(ios): remove the JavaScriptCore rules bundle (plan 019 R4) by @ififi2017 in #196
- refactor(ios): ship app copy as a String Catalog (plan 019 L1) by @ififi2017 in #199
- refactor(ios): make the string catalog the source of iOS copy (plan 019 L2b) by @ififi2017 in #202
- chore(release): prepare desktop 3.2.1 store listings by @ififi2017 in #261
Full Changelog: desktop-v3.1.9...desktop-v3.2.1