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

Show the system window menu (Window::ShowSystemMenu)

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

Ninguém assumiu esta issue ainda.

Avaliação

Dificuldade
4/5
Tempo estimado
3-5 dias
Facilidade para iniciantes
58/100
Tipo de issue
Funcionalidade
Clareza
Razoavelmente clara
Status de atividade
Ativa
Stack de tecnologia
cpp
Domínio
api, desktop

Direção de pesquisa

Start by locating the Window API and the platform-specific implementations for Windows, Linux, and macOS. Compare the proposed Windows GetSystemMenu/TrackPopupMenu and Linux gdk_window_show_window_menu behavior, and document the macOS limitation. Done means ShowSystemMenu(Point) works at the requested position with correct Windows item states and is documented where unsupported.

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

Descrição

enhancement

There's no API to show the system window menu (restore / move / size / minimize / maximize / close) at a point. Apps with a custom title bar need it for right-click on their drag area, and for Alt+Space on Windows. window_manager's popUpWindowMenu() is a no-op in 0.6.0 because of this.

Proposal: Window::ShowSystemMenu(Point). On Windows, GetSystemMenu + TrackPopupMenu, with the item states (restore/maximize enabled) kept correct. On Linux, gdk_window_show_window_menu(). On macOS, no equivalent (document it). Then DragToMoveArea in nativeapi-flutter can open it on secondary click.

Background:

  • leanflutter/window_manager#562: popUpWindowMenu not working
  • leanflutter/window_manager#532: right-clicking the DragToMove area should show the window context menu
  • leanflutter/window_manager#151: menu item states shown incorrectly on Windows
Linguagem predominante
C++
Estrelas
34
Forks
7
Merge médio
3d 1h
PRs com merge (30d)
1

Guia de contribuição

Nenhum guia de contribuição indexado para este repositório

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 libnativeapi/nativeapi

Todas as issues de libnativeapi/nativeapi

Issues semelhantes

Mais issues de C++

Receba novas issues na sua caixa de entrada

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