Fix hover race condition by removing timer delay

This commit is contained in:
Beingpax 2025-09-18 12:40:43 +05:45
parent ba4a5d3f86
commit 2157a9c2f7

View File

@ -3,18 +3,14 @@ import SwiftUI
// MARK: - Hover Interaction Manager
class HoverInteraction: ObservableObject {
@Published var isHovered: Bool = false
private var timer: Timer?
func setHover(on: Bool, delay: TimeInterval = 0.1) {
func setHover(on: Bool) {
if on {
timer?.invalidate()
if !isHovered {
isHovered = true
}
} else {
timer = Timer.scheduledTimer(withTimeInterval: delay, repeats: false) { [weak self] _ in
self?.isHovered = false
}
isHovered = false
}
}
}