fix(macos): disabled Copy menu item; Seatbelt scratch path not canonicalised
Mantenedores costumam responder em até 1 dia
Ninguém assumiu esta issue ainda.
Avaliação
- Dificuldade
- 4/5
- Tempo estimado
- 3-5 dias
- Facilidade para iniciantes
- 42/100
Direção de pesquisa
Read lib/features/macos/querya_platform_menu_bar.dart and locate SandboxScratchDirectory and buildMacOsSeatbeltProfile. First check how the menu actions and Seatbelt profile are built, then trace the scratch and extension root paths and inspect related tests, including a test for a /var path. Done means Copy invokes the selection intent, resolved paths match the profile, and the requested policy narrowing and escaping are covered; items 1–2 also need confirmation on a real Mac.
Escrita pelo modelo de indexação a partir do texto da issue.
Descrição
Problems
- Copy menu item is disabled. In
lib/features/macos/querya_platform_menu_bar.dartCopy isconst PlatformMenuItem(label: 'Copy', shortcut: ...)with noonSelected, which Flutter renders as a disabled item. Cut / Paste / Select All callActions.maybeInvoke. Cmd+C may not work reliably while a text field is focused. - Seatbelt scratch path is not canonical.
SandboxScratchDirectoryusesDirectory.systemTemp(/var/folders/...);/varis a symlink to/private/var, and Seatbeltsubpathmatches the resolved path, so(allow file-write* (subpath "<scratch>"))likely never matches and the extension cannot write to its scratch dir. - Seatbelt profile is looser than documented (
buildMacOsSeatbeltProfile):(allow mach-lookup),(allow process*)and(allow file-read*)outside/Users, andscratchPath/extensionRootare interpolated into the profile without escaping quotes (see also #1560).
Tasks
- Copy: add an
onSelectedusingCopySelectionTextIntent. - Resolve symlinks for scratch and extension roots before building the profile; add a test with a
/varpath. - Narrow
mach-lookup/process*, escape profile strings.
Items 1–2 need confirmation on a real Mac.
- Linguagem predominante
- Dart
- Estrelas
- 23
- Forks
- 1
- Merge médio
- 31min
- PRs com merge (30d)
- 570
Preparar o ambiente
Inicia o contêiner de desenvolvimento do projeto no navegador, com a sua própria conta do GitHub.
- Sem Dockerfile nem arquivo Docker Compose
- Tem um modelo de pull request
- Ler o guia de contribuição
Primeiros passos
- Leia a issue inteira e depois o guia de contribuição do projeto.
- Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
- Faça um fork do repositório e trabalhe em uma branch.
- Abra um pull request que referencie o número da issue.
Mais de QueryaHub/Querya-Desktop
-
enhancement ui
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 78/100
QueryaHub/Querya-Desktop#1689 ·
Mantenedores costumam responder em até 1 dia
-
ui(dialogs): make destructive query and DML preview dialogs adaptive and prevent table name overflowAbertabug frontend
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 82/100
QueryaHub/Querya-Desktop#1642 ·
Mantenedores costumam responder em até 1 dia
-
bug error-handling settings
Dificuldade 1/5 1-3 horas Facilidade para iniciantes 78/100
QueryaHub/Querya-Desktop#1637 ·
Mantenedores costumam responder em até 1 dia
-
enhancement
Dificuldade 1/5 Menos de uma hora Facilidade para iniciantes 88/100
QueryaHub/Querya-Desktop#1636 ·
Mantenedores costumam responder em até 1 dia
-
enhancement marketplace
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 78/100
QueryaHub/Querya-Desktop#1635 ·
Mantenedores costumam responder em até 1 dia
Todas as issues de QueryaHub/Querya-Desktop
Issues semelhantes
-
Needs Attention platform: android type: infrastructure umbrella
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 78/100
firebase/flutterfire#18832 ·
Mantenedores costumam responder em até 1 dia
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 67/100
-
Error on parameter typeAbertafrom.page-issue
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 69/100
Mantenedores costumam responder em até 1 dia
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 72/100
sass/dart-sass#2888 · 2 comentários · 1 reação ·
Mantenedores costumam responder em até 1 dia
-
[a11y_assessments] Disabled CheckboxListTile shares mutable stateTalvez já em andamento @kevmoo assumiu há 12 dias. Abertaa: accessibility fyi-design p: material_ui package team-accessibility
Dificuldade 1/5 Menos de uma hora Facilidade para iniciantes 85/100
Mantenedores costumam responder em até 1 dia