Skip to content

System Settings sheet (Spotlight Search Privacy) unclickable: no AX window, pixel click misreported as occluded #141

Closed

Description

@iamnbutler

Summary

The Search Privacy… sheet in System Settings > Spotlight cannot be operated. Accessibility does not expose it as a window. The only input left is a pixel snapshot, and its background click on the sheet's + button is refused or misrouted, because hit-testing resolves to the parent window underneath.

This means an agent can't add a folder to the Spotlight privacy list without the user stepping in.

Environment

  • Desktop Tools 0.14.1
  • macOS 27.0.1 (26A434)
  • System Settings (com.apple.systempreferences)

Repro

  1. Open System Settings > Spotlight.

  2. Click Search Privacy…. With an element ID from an accessibility inspect of the main window, this works fine.

  3. A sheet opens as window 756, sized 470×375, at x=532, y=241.

  4. Run desktop_inspect on the sheet window in accessibility mode. It fails:

    AX tree incomplete at incomplete accessibility read. Retry once to obtain a fresh observation. If the exact target is a transient sheet without an independent AX-window identity, inspect its owning process or app tree for read-only dialog elements…

  5. desktop_windows reports the sheet as observation_capability: pixels_only, with availability limited / accessibility_unavailable / no_matching_accessibility_window.

  6. Inspecting the window with mode: pixels captures the sheet correctly ("Privacy… No Locations Added", the +/− buttons, and Done). OCR timed out after 8 s on its first run.

  7. Run desktop_click with the pixel snapshot at the + button (x 0.089, y 0.715). The outcome is unknown:

    Point (574, 509) is occluded for the pinned target window 756: accessibility hit-testing resolved an element in a different window of the same app. Background clicks press the frontmost element at the point and cannot reach an overlapped window. Move the overlapping window aside, or re-run with --foreground to raise and click the target window.

    No open panel appeared.

What's wrong

  • The sheet is the frontmost window at that point; nothing is overlapping it. AX hit-testing resolves to the parent Spotlight window (75) only because the sheet has no AX window of its own. The "occluded" diagnosis is therefore wrong, and "move the overlapping window aside" can't be acted on.
  • The error suggests --foreground, but desktop_click has no foreground option apart from adding modifiers. The suggested recovery isn't reachable from the MCP surface.
  • desktop_dialog and desktop_dialog_answer look like the intended route for sheets, but they rely on the same AX window identity, so they don't help here either.

Expected

At least one of these:

  • When AX has no window for the target, a pixel-snapshot click on a sheet that is attached and frontmost should be delivered by a CGEvent at that point, or by a real-pointer click in the foreground.
  • An explicit foreground: true option on desktop_click for pixel snapshots, matching what the error message recommends.
  • An error message that names the actual cause (the sheet has no AX window) rather than occlusion.

Workaround

The user clicked + by hand.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions