Hacktoberfest 2026: as issues que os mantenedores marcaram para outubro, abertas e boas para iniciantes. Ver issues do Hacktoberfest

Secure Keyboard Entry refusal should name the app/window that enabled it

Aberta
#176 0 comentários 0 reações 0 responsáveis Ver no GitHub

Mantenedores costumam responder em até 1 dia

Ninguém assumiu esta issue ainda.

Avaliação

Dificuldade
3/5
Tempo estimado
1-2 dias
Facilidade para iniciantes
67/100
Tipo de issue
Funcionalidade
Clareza
Claramente especificada
Status de atividade
Ativa
Stack de tecnologia
macos, swift

Direção de pesquisa

Start from the typing route that refuses input when Secure Keyboard Entry is active, then check how desktop_apps reports session.secure_keyboard_entry and how focus information is exposed. Include the focused app identity in the refusal so the user can identify the blocking dialog; done when the refusal names the app holding focus or provides its bundle ID.

Escrita pelo modelo de indexação a partir do texto da issue.

Descrição

What happened

Typing into an ordinary web form field in Safari was refused:

desktop_insert → refused
"Secure keyboard entry is on, as for a password field or a terminal's
 Secure Keyboard Entry, so typed text can't be delivered. Nothing was typed."
hint: "Use a field that isn't secure, or turn off Secure Keyboard Entry in the app."

There was no secure field anywhere near the target. The actual cause was a
com.apple.NetAuthAgent SMB password dialog open behind the Safari window,
holding focus on an AXSecureTextField. macOS enables secure input globally
while that field has focus, so every synthesized keystroke in every app is
blocked.

Why the current hint doesn't help

"turn off Secure Keyboard Entry in the app" is ambiguous — which app? The
agent is pointed at its own target window, which is not the cause. I only
found the real cause by noticing focus.bundle_id had changed to
com.apple.NetAuthAgent in an unrelated desktop_apps call, then inspecting
that window.

Also note the fix is something the agent cannot do: system password prompts
are (correctly) refused to agents, so the only resolution is asking the user
to dismiss a specific dialog — which requires naming it.

Suggestion

desktop_apps already reports session.secure_keyboard_entry. When a typing
route is refused for this reason, include the app that currently holds focus
in the refusal, e.g.:

"Secure keyboard entry is on. com.apple.NetAuthAgent ("Enter your name and
 password for the server …") holds focus on a secure field. Ask the user to
 dismiss or complete it; agents cannot answer system password prompts."

Even just focused_bundle_id in the error payload would be enough to let the
agent inspect and describe it.

Environment

Desktop Tools 0.16.1 (app + MCP), macOS 27, Safari 27

Linguagem predominante
Swift
Estrelas
0
Forks
0
Merge médio
39min
PRs com merge (30d)
144

Preparar o ambiente

Este projeto não oferece contêiner de desenvolvimento, Dockerfile nem guia de contribuição, então a configuração fica por sua conta: comece pelo README e veja nosso guia da primeira contribuição para os passos gerais.

Primeiros passos

  1. Leia a issue inteira e depois o guia de contribuição do projeto.
  2. Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
  3. Faça um fork do repositório e trabalhe em uma branch.
  4. Abra um pull request que referencie o número da issue.

Mais de githubnext/desktop-tools

Todas as issues de githubnext/desktop-tools

Issues semelhantes

Mais issues de Swift

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.