mirror of
https://github.com/Shpoike/Quakespasm.git
synced 2025-02-02 22:11:22 +00:00
gl_vidsdl.c: add vid_borderless cvar for getting a borderless window
git-svn-id: svn://svn.code.sf.net/p/quakespasm/code/trunk/quakespasm@1292 af15c1b1-3010-417e-b628-4374ebc0bcbd
This commit is contained in:
parent
185f2f2883
commit
9c9facfe7b
1 changed files with 13 additions and 3 deletions
|
@ -149,6 +149,7 @@ static cvar_t vid_bpp = {"vid_bpp", "16", CVAR_ARCHIVE};
|
|||
static cvar_t vid_vsync = {"vid_vsync", "0", CVAR_ARCHIVE};
|
||||
static cvar_t vid_fsaa = {"vid_fsaa", "0", CVAR_ARCHIVE}; // QuakeSpasm
|
||||
static cvar_t vid_desktopfullscreen = {"vid_desktopfullscreen", "0", CVAR_ARCHIVE}; // QuakeSpasm
|
||||
static cvar_t vid_borderless = {"vid_borderless", "0", CVAR_ARCHIVE}; // QuakeSpasm
|
||||
//johnfitz
|
||||
|
||||
cvar_t vid_gamma = {"gamma", "1", CVAR_ARCHIVE}; //johnfitz -- moved here from view.c
|
||||
|
@ -575,6 +576,9 @@ static qboolean VID_SetMode (int width, int height, int bpp, qboolean fullscreen
|
|||
{
|
||||
flags = SDL_WINDOW_OPENGL | SDL_WINDOW_HIDDEN;
|
||||
|
||||
if (vid_borderless.value)
|
||||
flags |= SDL_WINDOW_BORDERLESS;
|
||||
|
||||
draw_context = SDL_CreateWindow (caption, SDL_WINDOWPOS_UNDEFINED, SDL_WINDOWPOS_UNDEFINED, width, height, flags);
|
||||
if (!draw_context) { // scale back fsaa
|
||||
SDL_GL_SetAttribute(SDL_GL_MULTISAMPLEBUFFERS, 0);
|
||||
|
@ -604,6 +608,7 @@ static qboolean VID_SetMode (int width, int height, int bpp, qboolean fullscreen
|
|||
SDL_SetWindowSize (draw_context, width, height);
|
||||
SDL_SetWindowPosition (draw_context, SDL_WINDOWPOS_CENTERED, SDL_WINDOWPOS_CENTERED);
|
||||
SDL_SetWindowDisplayMode (draw_context, VID_SDL2_GetDisplayMode(width, height, bpp));
|
||||
SDL_SetWindowBordered (draw_context, vid_borderless.value ? SDL_FALSE : SDL_TRUE);
|
||||
|
||||
/* Make window fullscreen if needed, and show the window */
|
||||
|
||||
|
@ -633,7 +638,9 @@ static qboolean VID_SetMode (int width, int height, int bpp, qboolean fullscreen
|
|||
flags = DEFAULT_SDL_FLAGS;
|
||||
if (fullscreen)
|
||||
flags |= SDL_FULLSCREEN;
|
||||
|
||||
if (vid_borderless.value)
|
||||
flags |= SDL_NOFRAME;
|
||||
|
||||
gl_swap_control = true;
|
||||
if (SDL_GL_SetAttribute(SDL_GL_SWAP_CONTROL, (vid_vsync.value) ? 1 : 0) == -1)
|
||||
gl_swap_control = false;
|
||||
|
@ -1501,7 +1508,8 @@ void VID_Init (void)
|
|||
"vid_bpp",
|
||||
"vid_vsync",
|
||||
"vid_fsaa",
|
||||
"vid_desktopfullscreen" };
|
||||
"vid_desktopfullscreen",
|
||||
"vid_borderless"};
|
||||
#define num_readvars ( sizeof(read_vars)/sizeof(read_vars[0]) )
|
||||
|
||||
Cvar_RegisterVariable (&vid_fullscreen); //johnfitz
|
||||
|
@ -1511,6 +1519,7 @@ void VID_Init (void)
|
|||
Cvar_RegisterVariable (&vid_vsync); //johnfitz
|
||||
Cvar_RegisterVariable (&vid_fsaa); //QuakeSpasm
|
||||
Cvar_RegisterVariable (&vid_desktopfullscreen); //QuakeSpasm
|
||||
Cvar_RegisterVariable (&vid_borderless); //QuakeSpasm
|
||||
Cvar_SetCallback (&vid_fullscreen, VID_Changed_f);
|
||||
Cvar_SetCallback (&vid_width, VID_Changed_f);
|
||||
Cvar_SetCallback (&vid_height, VID_Changed_f);
|
||||
|
@ -1518,7 +1527,8 @@ void VID_Init (void)
|
|||
Cvar_SetCallback (&vid_vsync, VID_Changed_f);
|
||||
Cvar_SetCallback (&vid_fsaa, VID_FSAA_f);
|
||||
Cvar_SetCallback (&vid_desktopfullscreen, VID_Changed_f);
|
||||
|
||||
Cvar_SetCallback (&vid_borderless, VID_Changed_f);
|
||||
|
||||
Cmd_AddCommand ("vid_unlock", VID_Unlock); //johnfitz
|
||||
Cmd_AddCommand ("vid_restart", VID_Restart); //johnfitz
|
||||
Cmd_AddCommand ("vid_test", VID_Test); //johnfitz
|
||||
|
|
Loading…
Reference in a new issue