mirror of
https://github.com/love2d/love.git
synced 2026-08-15 15:51:12 +02:00
Changed the default fullscreen type from 'exclusive' to 'desktop'.
--HG-- branch : minor
This commit is contained in:
@@ -89,19 +89,19 @@ StringMap<Window::Setting, Window::SETTING_MAX_ENUM>::Entry Window::settingEntri
|
||||
|
||||
StringMap<Window::Setting, Window::SETTING_MAX_ENUM> Window::settings(Window::settingEntries, sizeof(Window::settingEntries));
|
||||
|
||||
StringMap<Window::FullscreenType, Window::FULLSCREEN_TYPE_MAX_ENUM>::Entry Window::fullscreenTypeEntries[] =
|
||||
StringMap<Window::FullscreenType, Window::FULLSCREEN_MAX_ENUM>::Entry Window::fullscreenTypeEntries[] =
|
||||
{
|
||||
{"exclusive", Window::FULLSCREEN_TYPE_EXCLUSIVE},
|
||||
{"desktop", Window::FULLSCREEN_TYPE_DESKTOP},
|
||||
{"exclusive", FULLSCREEN_EXCLUSIVE},
|
||||
{"desktop", FULLSCREEN_DESKTOP},
|
||||
};
|
||||
|
||||
StringMap<Window::FullscreenType, Window::FULLSCREEN_TYPE_MAX_ENUM> Window::fullscreenTypes(Window::fullscreenTypeEntries, sizeof(Window::fullscreenTypeEntries));
|
||||
StringMap<Window::FullscreenType, Window::FULLSCREEN_MAX_ENUM> Window::fullscreenTypes(Window::fullscreenTypeEntries, sizeof(Window::fullscreenTypeEntries));
|
||||
|
||||
StringMap<Window::MessageBoxType, Window::MESSAGEBOX_MAX_ENUM>::Entry Window::messageBoxTypeEntries[] =
|
||||
{
|
||||
{"error", Window::MESSAGEBOX_ERROR},
|
||||
{"warning", Window::MESSAGEBOX_WARNING},
|
||||
{"info", Window::MESSAGEBOX_INFO},
|
||||
{"error", MESSAGEBOX_ERROR},
|
||||
{"warning", MESSAGEBOX_WARNING},
|
||||
{"info", MESSAGEBOX_INFO},
|
||||
};
|
||||
|
||||
StringMap<Window::MessageBoxType, Window::MESSAGEBOX_MAX_ENUM> Window::messageBoxTypes(Window::messageBoxTypeEntries, sizeof(Window::messageBoxTypeEntries));
|
||||
|
||||
@@ -66,9 +66,9 @@ public:
|
||||
|
||||
enum FullscreenType
|
||||
{
|
||||
FULLSCREEN_TYPE_EXCLUSIVE,
|
||||
FULLSCREEN_TYPE_DESKTOP,
|
||||
FULLSCREEN_TYPE_MAX_ENUM
|
||||
FULLSCREEN_EXCLUSIVE,
|
||||
FULLSCREEN_DESKTOP,
|
||||
FULLSCREEN_MAX_ENUM
|
||||
};
|
||||
|
||||
enum MessageBoxType
|
||||
@@ -189,8 +189,8 @@ private:
|
||||
static StringMap<Setting, SETTING_MAX_ENUM>::Entry settingEntries[];
|
||||
static StringMap<Setting, SETTING_MAX_ENUM> settings;
|
||||
|
||||
static StringMap<FullscreenType, FULLSCREEN_TYPE_MAX_ENUM>::Entry fullscreenTypeEntries[];
|
||||
static StringMap<FullscreenType, FULLSCREEN_TYPE_MAX_ENUM> fullscreenTypes;
|
||||
static StringMap<FullscreenType, FULLSCREEN_MAX_ENUM>::Entry fullscreenTypeEntries[];
|
||||
static StringMap<FullscreenType, FULLSCREEN_MAX_ENUM> fullscreenTypes;
|
||||
|
||||
static StringMap<MessageBoxType, MESSAGEBOX_MAX_ENUM>::Entry messageBoxTypeEntries[];
|
||||
static StringMap<MessageBoxType, MESSAGEBOX_MAX_ENUM> messageBoxTypes;
|
||||
@@ -200,7 +200,7 @@ private:
|
||||
struct WindowSettings
|
||||
{
|
||||
bool fullscreen = false;
|
||||
Window::FullscreenType fstype = Window::FULLSCREEN_TYPE_EXCLUSIVE;
|
||||
Window::FullscreenType fstype = Window::FULLSCREEN_DESKTOP;
|
||||
bool vsync = true;
|
||||
int msaa = 0;
|
||||
bool resizable = false;
|
||||
|
||||
@@ -376,7 +376,7 @@ bool Window::setWindow(int width, int height, WindowSettings *settings)
|
||||
|
||||
if (f.fullscreen)
|
||||
{
|
||||
if (f.fstype == FULLSCREEN_TYPE_DESKTOP)
|
||||
if (f.fstype == FULLSCREEN_DESKTOP)
|
||||
sdlflags |= SDL_WINDOW_FULLSCREEN_DESKTOP;
|
||||
else
|
||||
{
|
||||
@@ -511,12 +511,12 @@ void Window::updateSettings(const WindowSettings &newsettings)
|
||||
if ((wflags & SDL_WINDOW_FULLSCREEN_DESKTOP) == SDL_WINDOW_FULLSCREEN_DESKTOP)
|
||||
{
|
||||
curMode.settings.fullscreen = true;
|
||||
curMode.settings.fstype = FULLSCREEN_TYPE_DESKTOP;
|
||||
curMode.settings.fstype = FULLSCREEN_DESKTOP;
|
||||
}
|
||||
else if ((wflags & SDL_WINDOW_FULLSCREEN) == SDL_WINDOW_FULLSCREEN)
|
||||
{
|
||||
curMode.settings.fullscreen = true;
|
||||
curMode.settings.fstype = FULLSCREEN_TYPE_EXCLUSIVE;
|
||||
curMode.settings.fstype = FULLSCREEN_EXCLUSIVE;
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -547,7 +547,7 @@ void Window::updateSettings(const WindowSettings &newsettings)
|
||||
|
||||
// Only minimize on focus loss if the window is in exclusive-fullscreen
|
||||
// mode.
|
||||
if (curMode.settings.fullscreen && curMode.settings.fstype == FULLSCREEN_TYPE_EXCLUSIVE)
|
||||
if (curMode.settings.fullscreen && curMode.settings.fstype == FULLSCREEN_EXCLUSIVE)
|
||||
SDL_SetHint(SDL_HINT_VIDEO_MINIMIZE_ON_FOCUS_LOSS, "1");
|
||||
else
|
||||
SDL_SetHint(SDL_HINT_VIDEO_MINIMIZE_ON_FOCUS_LOSS, "0");
|
||||
@@ -594,7 +594,7 @@ bool Window::setFullscreen(bool fullscreen, Window::FullscreenType fstype)
|
||||
|
||||
if (fullscreen)
|
||||
{
|
||||
if (fstype == FULLSCREEN_TYPE_DESKTOP)
|
||||
if (fstype == FULLSCREEN_DESKTOP)
|
||||
sdlflags = SDL_WINDOW_FULLSCREEN_DESKTOP;
|
||||
else
|
||||
{
|
||||
|
||||
@@ -92,8 +92,8 @@ int w_setMode(lua_State *L)
|
||||
}
|
||||
else
|
||||
{
|
||||
// Default to exclusive fullscreen mode.
|
||||
settings.fstype = Window::FULLSCREEN_TYPE_EXCLUSIVE;
|
||||
// Default to desktop fullscreen mode.
|
||||
settings.fstype = Window::FULLSCREEN_DESKTOP;
|
||||
}
|
||||
lua_pop(L, 1);
|
||||
|
||||
@@ -138,7 +138,7 @@ int w_getMode(lua_State *L)
|
||||
|
||||
lua_newtable(L);
|
||||
|
||||
const char *fstypestr = "exclusive";
|
||||
const char *fstypestr = "desktop";
|
||||
Window::getConstant(settings.fstype, fstypestr);
|
||||
|
||||
lua_pushstring(L, fstypestr);
|
||||
@@ -222,14 +222,14 @@ int w_getFullscreenModes(lua_State *L)
|
||||
int w_setFullscreen(lua_State *L)
|
||||
{
|
||||
bool fullscreen = luax_toboolean(L, 1);
|
||||
Window::FullscreenType fstype = Window::FULLSCREEN_TYPE_MAX_ENUM;
|
||||
Window::FullscreenType fstype = Window::FULLSCREEN_MAX_ENUM;
|
||||
|
||||
const char *typestr = lua_isnoneornil(L, 2) ? 0 : luaL_checkstring(L, 2);
|
||||
if (typestr && !Window::getConstant(typestr, fstype))
|
||||
return luaL_error(L, "Invalid fullscreen type: %s", typestr);
|
||||
|
||||
bool success = false;
|
||||
if (fstype == Window::FULLSCREEN_TYPE_MAX_ENUM)
|
||||
if (fstype == Window::FULLSCREEN_MAX_ENUM)
|
||||
success = instance()->setFullscreen(fullscreen);
|
||||
else
|
||||
success = instance()->setFullscreen(fullscreen, fstype);
|
||||
|
||||
Reference in New Issue
Block a user