oclaw/openclaw/apps/macos/Sources/OpenClaw/ViewMetrics.swift
oliver dbbe3add6a 重构主控编排与运行时预热链路,统一工作区提示词/专家调度协议并补齐 wiki 记忆注入与写回闭环。
同时收敛启动与运维脚本默认行为(含 wiki worker)、更新 Admin 可观测性与相关测试,降低首轮时延并提高运行稳定性。

Made-with: Cursor
2026-04-26 08:34:33 +08:00

29 lines
844 B
Swift

import SwiftUI
private struct ViewWidthPreferenceKey: PreferenceKey {
static let defaultValue: CGFloat = 0
static func reduce(value: inout CGFloat, nextValue: () -> CGFloat) {
value = max(value, nextValue())
}
}
extension View {
func onWidthChange(_ onChange: @escaping (CGFloat) -> Void) -> some View {
self.background(
GeometryReader { proxy in
Color.clear.preference(key: ViewWidthPreferenceKey.self, value: proxy.size.width)
})
.onPreferenceChange(ViewWidthPreferenceKey.self, perform: onChange)
}
}
#if DEBUG
enum ViewMetricsTesting {
static func reduceWidth(current: CGFloat, next: CGFloat) -> CGFloat {
var value = current
ViewWidthPreferenceKey.reduce(value: &value, nextValue: { next })
return value
}
}
#endif