X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Fgraphics%2Fwindow.cpp;h=6cadf3ec9f4becb047c35033b7d70be5f919a770;hb=24da3e62cf22663ef16b61b9510fbac49308f756;hp=958667ead5698165d18508a7685f7ea1eebcfa9f;hpb=a8a9191481151f049781b670ea8883025a594a5f;p=libs%2Fgui.git diff --git a/source/graphics/window.cpp b/source/graphics/window.cpp index 958667e..6cadf3e 100644 --- a/source/graphics/window.cpp +++ b/source/graphics/window.cpp @@ -15,6 +15,8 @@ WindowOptions::WindowOptions(): width(640), height(480), fullscreen(false), + fullscreen_monitor(0), + fullscreen_exclusive(true), resizable(false) { } @@ -45,6 +47,9 @@ void Window::init() moving = false; priv = new Private; + if(options.fullscreen && !options.fullscreen_monitor) + options.fullscreen_monitor = display.get_desktop_mode().monitor; + platform_init(); display.add_window(*this); @@ -90,11 +95,14 @@ void Window::reconfigure(const WindowOptions &opts) void Window::set_fullscreen_mode() { + if(!options.fullscreen_monitor) + options.fullscreen_monitor = display.get_desktop_mode().monitor; VideoMode mode(options.width, options.height); - mode.rotation = display.get_desktop_mode().monitor->desktop_settings.rotation; + mode.monitor = options.fullscreen_monitor; + mode.rotation = mode.monitor->desktop_settings.rotation; if(mode.rotation==ROTATE_LEFT || mode.rotation==ROTATE_RIGHT) swap(mode.width, mode.height); - display.set_mode(mode, true); + display.set_mode(mode, options.fullscreen_exclusive); } void Window::set_keyboard_autorepeat(bool r)