diff --git a/Terminal/Source/CocoaWindow.mm b/Terminal/Source/CocoaWindow.mm index c8def11..e3d53da 100644 --- a/Terminal/Source/CocoaWindow.mm +++ b/Terminal/Source/CocoaWindow.mm @@ -572,7 +572,10 @@ -(id)initWithImpl:(BearLibTerminal::CocoaWindow::Impl*)impl; void CocoaWindow::SetFullscreen(bool fullscreen) { - LOG(Error, "CocoaWindow::SetFullscreen: not yet implemented"); + bool is_fullscreen = ([m_impl->m_window styleMask] & NSFullScreenWindowMask) == NSFullScreenWindowMask; + if (is_fullscreen != fullscreen) { + [m_impl->m_window toggleFullScreen: nil]; + } } void CocoaWindow::SetCursorVisibility(bool visible) diff --git a/Terminal/Source/Terminal.cpp b/Terminal/Source/Terminal.cpp index e3ec9a1..62cef9d 100644 --- a/Terminal/Source/Terminal.cpp +++ b/Terminal/Source/Terminal.cpp @@ -655,6 +655,7 @@ namespace BearLibTerminal if (updated.window_fullscreen != m_options.window_fullscreen) { // XXX: It's not always possible to change fullscreen state in runtime. + m_vars[TK_FULLSCREEN] = updated.window_fullscreen; m_window->SetFullscreen(updated.window_fullscreen); }