mirror of
https://github.com/hajimehoshi/ebiten.git
synced 2024-12-25 03:08:54 +01:00
internal/uidriver/glfw: Bug fix: FramebufferSize callback was not called when the window size was not changed
Closes #1580
This commit is contained in:
parent
75b0e91228
commit
16d3085884
@ -1032,12 +1032,12 @@ func (u *UserInterface) setWindowSize(width, height int, fullscreen bool) {
|
||||
newW := width
|
||||
newH := height
|
||||
if oldW != newW || oldH != newH {
|
||||
ch := make(chan struct{})
|
||||
ch := make(chan struct{}, 1)
|
||||
u.window.SetFramebufferSizeCallback(func(_ *glfw.Window, _, _ int) {
|
||||
u.window.SetFramebufferSizeCallback(nil)
|
||||
close(ch)
|
||||
ch <- struct{}{}
|
||||
})
|
||||
u.window.SetSize(newW, newH)
|
||||
if w, h := u.window.GetSize(); w != oldW || h != oldH {
|
||||
event:
|
||||
for {
|
||||
glfw.PollEvents()
|
||||
@ -1048,6 +1048,9 @@ func (u *UserInterface) setWindowSize(width, height int, fullscreen bool) {
|
||||
}
|
||||
}
|
||||
}
|
||||
u.window.SetFramebufferSizeCallback(nil)
|
||||
close(ch)
|
||||
}
|
||||
|
||||
// Window title might be lost on macOS after coming back from fullscreen.
|
||||
u.window.SetTitle(u.title)
|
||||
|
Loading…
Reference in New Issue
Block a user