mirror of
https://github.com/gnif/LookingGlass.git
synced 2024-12-25 23:13:39 +00:00
[client] x11/sdl/wayland: implement new minimize
(stub for wayland)
This implements the new minimize function introduced in the last commit for x11 and SDL. Wayland at current is just a stub and needs some attention.
This commit is contained in:
parent
f698e4589d
commit
903cc9815f
@ -120,8 +120,7 @@ static bool sdlInit(const LG_DSInitParams params)
|
||||
|
||||
SDL_ShowWindow(sdl.window);
|
||||
|
||||
SDL_SetHint(SDL_HINT_VIDEO_MINIMIZE_ON_FOCUS_LOSS,
|
||||
params.minimizeOnFocusLoss ? "1" : "0");
|
||||
SDL_SetHint(SDL_HINT_VIDEO_MINIMIZE_ON_FOCUS_LOSS, "0");
|
||||
|
||||
if (params.fullscreen)
|
||||
SDL_SetWindowFullscreen(sdl.window, SDL_WINDOW_FULLSCREEN_DESKTOP);
|
||||
@ -507,6 +506,11 @@ static bool sdlGetFullscreen(void)
|
||||
return (SDL_GetWindowFlags(sdl.window) & SDL_WINDOW_FULLSCREEN_DESKTOP) != 0;
|
||||
}
|
||||
|
||||
static void sdlMinimize(void)
|
||||
{
|
||||
SDL_MinimizeWindow(sdl.window);
|
||||
}
|
||||
|
||||
struct LG_DisplayServerOps LGDS_SDL =
|
||||
{
|
||||
.setup = sdlSetup,
|
||||
@ -548,6 +552,7 @@ struct LG_DisplayServerOps LGDS_SDL =
|
||||
.setWindowSize = sdlSetWindowSize,
|
||||
.setFullscreen = sdlSetFullscreen,
|
||||
.getFullscreen = sdlGetFullscreen,
|
||||
.minimize = sdlMinimize,
|
||||
|
||||
/* SDL does not have clipboard support */
|
||||
.cbInit = NULL,
|
||||
|
@ -146,3 +146,8 @@ bool waylandGetFullscreen(void)
|
||||
{
|
||||
return wlWm.fullscreen;
|
||||
}
|
||||
|
||||
void waylandMinimize(void)
|
||||
{
|
||||
//FIXME
|
||||
}
|
||||
|
@ -177,6 +177,7 @@ struct LG_DisplayServerOps LGDS_Wayland =
|
||||
.setWindowSize = waylandSetWindowSize,
|
||||
.setFullscreen = waylandSetFullscreen,
|
||||
.getFullscreen = waylandGetFullscreen,
|
||||
.minimize = waylandMinimize,
|
||||
|
||||
.cbInit = waylandCBInit,
|
||||
.cbNotice = waylandCBNotice,
|
||||
|
@ -254,6 +254,7 @@ bool waylandShellInit(const char * title, bool fullscreen, bool maximize, bool b
|
||||
void waylandShellAckConfigureIfNeeded(void);
|
||||
void waylandSetFullscreen(bool fs);
|
||||
bool waylandGetFullscreen(void);
|
||||
void waylandMinimize(void);
|
||||
|
||||
// window module
|
||||
bool waylandWindowInit(const char * title, bool fullscreen, bool maximize, bool borderless);
|
||||
|
@ -1215,6 +1215,11 @@ static bool x11GetFullscreen(void)
|
||||
return x11.fullscreen;
|
||||
}
|
||||
|
||||
static void x11Minimize(void)
|
||||
{
|
||||
XIconifyWindow(x11.display, x11.window, XDefaultScreen(x11.display));
|
||||
}
|
||||
|
||||
struct LG_DisplayServerOps LGDS_X11 =
|
||||
{
|
||||
.setup = x11Setup,
|
||||
@ -1254,6 +1259,7 @@ struct LG_DisplayServerOps LGDS_X11 =
|
||||
.setWindowSize = x11SetWindowSize,
|
||||
.setFullscreen = x11SetFullscreen,
|
||||
.getFullscreen = x11GetFullscreen,
|
||||
.minimize = x11Minimize,
|
||||
|
||||
.cbInit = x11CBInit,
|
||||
.cbNotice = x11CBNotice,
|
||||
|
Loading…
Reference in New Issue
Block a user