mirror of
https://github.com/priyanshujain/sanderling.git
synced 2026-10-02 19:17:10 +00:00
feat(driver): add FocusedWindowChecker capability
This commit is contained in:
1 parent
2fe01ea254
commit
3fe92537be
2 files changed
+22
No files matched your search
@@ -47,6 +47,18 @@ type ForegroundChecker interface {
|
|||||||
ForegroundApp(ctx context.Context) (string, error)
|
ForegroundApp(ctx context.Context) (string, error)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// FocusedWindowChecker is the optional capability for reporting which app owns
|
||||||
|
// the focused (on-screen) window. The startup gate prefers it over
|
||||||
|
// ForegroundChecker: the resumed-activity signal flips to a freshly launched
|
||||||
|
// app before its first frame draws, so observing on it alone can capture the
|
||||||
|
// previous app's screen. The focused window only names the app once its window
|
||||||
|
// is actually up.
|
||||||
|
type FocusedWindowChecker interface {
|
||||||
|
// FocusedWindowApp returns the package owning the focused window, or ""
|
||||||
|
// when no window is focused yet (e.g. mid-launch transition).
|
||||||
|
FocusedWindowApp(ctx context.Context) (string, error)
|
||||||
|
}
|
||||||
|
|
||||||
type LogEntry struct {
|
type LogEntry struct {
|
||||||
UnixMillis int64
|
UnixMillis int64
|
||||||
Level string
|
Level string
|
||||||
|
|||||||
@@ -33,6 +33,16 @@ func (c *Client) ForegroundApp(ctx context.Context) (string, error) {
|
|||||||
return android.ForegroundPackage(ctx)
|
return android.ForegroundPackage(ctx)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// FocusedWindowApp reports the package owning the focused window. Only Android
|
||||||
|
// is supported (via adb); other platforms return "" so the startup gate falls
|
||||||
|
// back to the foreground-app signal.
|
||||||
|
func (c *Client) FocusedWindowApp(ctx context.Context) (string, error) {
|
||||||
|
if c.platform != "android" {
|
||||||
|
return "", nil
|
||||||
|
}
|
||||||
|
return android.FocusedWindowPackage(ctx)
|
||||||
|
}
|
||||||
|
|
||||||
// Dial connects to the sidecar gRPC server at the given address.
|
// Dial connects to the sidecar gRPC server at the given address.
|
||||||
// Address must be a host:port pair, typically "127.0.0.1:<sidecar-port>".
|
// Address must be a host:port pair, typically "127.0.0.1:<sidecar-port>".
|
||||||
func Dial(address string) (*Client, error) {
|
func Dial(address string) (*Client, error) {
|
||||||
|
|||||||
Reference in new issue
Block a user