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

[Linux] Window::Restore() doesn't bring back a minimized window on GNOME

Fechada
#62 1 comentário 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
55/100
Tipo de issue
Bug
Clareza
Razoavelmente clara
Status de atividade
Ativa
Stack de tecnologia
cpp, linux

Direção de pesquisa

Start at the Linux implementation of Window::Restore() and trace its use of gdk_window_deiconify(), then inspect the window-state-event handling for iconified state. Compare the GNOME behavior with gtk_window_present_with_time() and verify that restoring a minimized window emits the restored event and that a later Show() does not report a spurious minimize event.

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

Descrição

bug

On Linux, Window::Restore() calls gdk_window_deiconify(), which Mutter ignores, so a minimized window isn't brought back and no restored event fires. It works on X11 window managers that honour it, but not on GNOME. Related: after the user minimizes a window, a later Show() can report a minimize event right away instead of showing it.

Possible fix: gtk_window_present_with_time() (with a real timestamp) when the window is iconified, and track the iconified state from window-state-event rather than from what was requested.

Background:

  • leanflutter/window_manager#525: window does not restore from minimization on Linux
  • leanflutter/window_manager#580: show() triggers an immediate minimize event after the user minimizes the window
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.