commit d9f8925d9d6b06bcec7b5bf5d72f17e5fe12e28c
parent 93e9e1d404c4294e263c4c662af02cbc4f2e65cb
Author: Michael Camilleri <[email protected]>
Date: Wed, 22 Apr 2026 01:32:09 +0900
Add additional performance logging
Diffstat:
1 file changed, 15 insertions(+), 3 deletions(-)
diff --git a/ListlessiOS/Helpers/PerfSampler.swift b/ListlessiOS/Helpers/PerfSampler.swift
@@ -80,8 +80,10 @@ final class PerfSampler {
forName: UIResponder.keyboardWillShowNotification,
object: nil,
queue: .main
- ) { _ in
- Task { @MainActor in PerfSampler.shared.keyboardWillShow() }
+ ) { note in
+ let animationMs = (note.userInfo?[UIResponder.keyboardAnimationDurationUserInfoKey]
+ as? Double).map { $0 * 1000 } ?? 0
+ Task { @MainActor in PerfSampler.shared.keyboardWillShow(animationMs: animationMs) }
}
NotificationCenter.default.addObserver(
forName: UIResponder.keyboardDidShowNotification,
@@ -90,11 +92,21 @@ final class PerfSampler {
) { _ in
Task { @MainActor in PerfSampler.shared.keyboardDidShow() }
}
+ NotificationCenter.default.addObserver(
+ forName: UIApplication.didBecomeActiveNotification,
+ object: nil,
+ queue: .main
+ ) { _ in
+ Task { @MainActor in
+ PerfSampler.shared.record(label: "App.didBecomeActive", durationMs: 0)
+ }
+ }
}
- private func keyboardWillShow() {
+ private func keyboardWillShow(animationMs: Double) {
pendingKeyboardWillShow = DispatchTime.now()
record(label: "Keyboard.willShow", durationMs: 0)
+ record(label: "Keyboard.animationDurationReported", durationMs: animationMs)
}
private func keyboardDidShow() {