Add a window full-screen changed event
Personne n'a encore pris cette issue.
Évaluation
- Difficulté
- 4/5
- Temps estimé
- 3-5 jours
- Accessibilité débutants
- 48/100
Piste de recherche
Start by tracing Window::SetFullScreen() and IsFullScreen() on macOS, Windows, and Linux. Review the listed native notifications and window-state event, including the Windows style and title-bar restoration concerns. Done means a full-screen change event is emitted for programmatic and user-triggered changes on each platform.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
Window::SetFullScreen() / IsFullScreen() exist on all three desktop platforms, but there is no event when a window enters or leaves full screen. That includes changes the user triggers (the green button on macOS, F11 / the window manager on Linux). Apps that change their layout in full screen currently have to poll.
Proposal: add a WindowFullScreenChangedEvent (or an entered/left pair), emitted:
- macOS:
NSWindowDidEnterFullScreenNotification/NSWindowDidExitFullScreenNotification - Windows: from
SetFullScreen(), which is the only way in since Win32 has no native full-screen state. Note thatWM_SIZEarrives withSIZE_RESTORED, so it can't be detected from the size message. - Linux:
window-state-eventwithGDK_WINDOW_STATE_FULLSCREEN
It should also be checked that the Windows SetFullScreen() restores the style and title bar correctly on exit (see leanflutter/window_manager#579 and #569).
Background:
- leanflutter/window_manager#560: onWindowEnterFullScreen / onWindowLeaveFullScreen never fire on Windows
- leanflutter/window_manager#559: a draft PR for Windows full-screen handling
- Langage dominant
- C++
- Étoiles
- 34
- Forks
- 7
- Merge moyen
- 3 j 1 h
- PR mergées (30 j)
- 1
Guide de contribution
Aucun guide de contribution indexé pour ce dépôt
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Autres issues de libnativeapi/nativeapi
-
bug
Difficulté 4/5 3-5 jours Accessibilité débutants 45/100
libnativeapi/nativeapi#81 ·
-
bug
Difficulté 4/5 3-5 jours Accessibilité débutants 45/100
libnativeapi/nativeapi#80 ·
-
bug
Difficulté 4/5 3-5 jours Accessibilité débutants 35/100
libnativeapi/nativeapi#79 ·
-
bug
Difficulté 4/5 3-5 jours Accessibilité débutants 45/100
libnativeapi/nativeapi#78 ·
-
bug
Difficulté 4/5 3-5 jours Accessibilité débutants 45/100
libnativeapi/nativeapi#77 ·
Toutes les issues de libnativeapi/nativeapi
Issues similaires
-
AuTest Bug Tests
Difficulté 2/5 1-3 heures Accessibilité débutants 78/100
apache/trafficserver#13714 ·
-
bug build
Difficulté 2/5 1-3 heures Accessibilité débutants 88/100
facebookincubator/velox#19143 ·
-
Difficulté 2/5 1-3 heures Accessibilité débutants 82/100
-
Difficulté 2/5 1-3 heures Accessibilité débutants 68/100
tenstorrent/tt-metal#57393 · 1 commentaire ·
-
Difficulté 2/5 1-3 heures Accessibilité débutants 76/100
objectionary/eo-graphs#74 ·