23 lines
614 B
Go
23 lines
614 B
Go
//go:build windows
|
|
|
|
package enforce
|
|
|
|
import (
|
|
"context"
|
|
|
|
"antidrift/internal/winapi"
|
|
)
|
|
|
|
// NewGuard returns the Windows window-minimize guard.
|
|
func NewGuard() Guard { return windowsGuard{} }
|
|
|
|
type windowsGuard struct{}
|
|
|
|
// MinimizeActive minimizes the current foreground window. It is best-effort:
|
|
// with nothing focused it does nothing and returns nil. Stateless and per-call,
|
|
// with no connection or shared state to manage. ShowWindow does not report a
|
|
// minimize failure, so this always returns nil today.
|
|
func (windowsGuard) MinimizeActive(_ context.Context) error {
|
|
return winapi.MinimizeForeground()
|
|
}
|