mirror of
https://github.com/openclaw/openclaw.git
synced 2026-07-16 18:11:37 +00:00
* feat(mac): redesign menu bar critter to match the mascot * fix(mac): draw happy-eye arcs upward and guard stale celebration expiry * docs(mac): update menu bar icon states for critter redesign * fix(mac): own celebration expiry with a start-only generation counter * fix(mac): give voice-wake antennae real headroom at 18pt
27 lines
980 B
Swift
27 lines
980 B
Swift
import SwiftUI
|
|
|
|
struct CritterStatusLabel: View {
|
|
var isPaused: Bool
|
|
var isSleeping: Bool
|
|
var isWorking: Bool
|
|
var earBoostActive: Bool
|
|
var blinkTick: Int
|
|
var sendCelebrationTick: Int
|
|
var gatewayStatus: GatewayProcessManager.Status
|
|
var animationsEnabled: Bool
|
|
var iconState: IconState
|
|
var voiceWakeMeterActive: Bool = false
|
|
|
|
@State var blinkAmount: CGFloat = 0
|
|
@State var celebrating = false
|
|
@State var celebrationGeneration = 0
|
|
@State var nextBlink = Date().addingTimeInterval(Double.random(in: 3.5...8.5))
|
|
@State var wiggleAngle: Double = 0
|
|
@State var wiggleOffset: CGFloat = 0
|
|
@State var nextWiggle = Date().addingTimeInterval(Double.random(in: 6.5...14))
|
|
@State var legWiggle: CGFloat = 0
|
|
@State var nextLegWiggle = Date().addingTimeInterval(Double.random(in: 5.0...11.0))
|
|
@State var earWiggle: CGFloat = 0
|
|
@State var nextEarWiggle = Date().addingTimeInterval(Double.random(in: 7.0...14.0))
|
|
}
|