src/video/winrt/SDL_winrtgamebar_cpp.h
author David Ludwig <dludwig@pobox.com>
Sat, 20 Aug 2016 13:46:45 -0400
changeset 10222 29d7289e9055
child 10581 56f5a44e876f
permissions -rw-r--r--
WinRT: fixed bug where Win10 GameBar, when shown + hidden, might not restore a cursor's hidden state

The repro steps were this:
1. run an sdl2 winrt/uwp app, on Win10, v10.0.10586.0 or higher
2. hide the cursor, via a call to SDL_ShowCursor(0)
3. make the Win10 game bar appear, by pressing the Windows + G hotkey
4. observe that the mouse cursor appears, in order to interact with the
game bar (this is expected behavior)
5. make the Win10 game bar disappear, either by pressing the Windows + G hotkey
again, or clicking somewhere in the app

EXPECTED RESULT: cursor disappears, as game bar disappears

ACTUAL RESULT: cursor didn't always disappear
dludwig@10222
     1
/*
dludwig@10222
     2
  Simple DirectMedia Layer
dludwig@10222
     3
  Copyright (C) 1997-2016 Sam Lantinga <slouken@libsdl.org>
dludwig@10222
     4
dludwig@10222
     5
  This software is provided 'as-is', without any express or implied
dludwig@10222
     6
  warranty.  In no event will the authors be held liable for any damages
dludwig@10222
     7
  arising from the use of this software.
dludwig@10222
     8
dludwig@10222
     9
  Permission is granted to anyone to use this software for any purpose,
dludwig@10222
    10
  including commercial applications, and to alter it and redistribute it
dludwig@10222
    11
  freely, subject to the following restrictions:
dludwig@10222
    12
dludwig@10222
    13
  1. The origin of this software must not be misrepresented; you must not
dludwig@10222
    14
     claim that you wrote the original software. If you use this software
dludwig@10222
    15
     in a product, an acknowledgment in the product documentation would be
dludwig@10222
    16
     appreciated but is not required.
dludwig@10222
    17
  2. Altered source versions must be plainly marked as such, and must not be
dludwig@10222
    18
     misrepresented as being the original software.
dludwig@10222
    19
  3. This notice may not be removed or altered from any source distribution.
dludwig@10222
    20
*/
dludwig@10222
    21
#include "SDL_config.h"
dludwig@10222
    22
dludwig@10222
    23
#ifndef _SDL_winrtgamebar_h
dludwig@10222
    24
#define _SDL_winrtgamebar_h
dludwig@10222
    25
dludwig@10222
    26
#ifdef __cplusplus
dludwig@10222
    27
/* These are exported as C++ functions, rather than C, to fix a compilation
dludwig@10222
    28
   bug with MSVC 2013, for Windows 8.x builds. */
dludwig@10222
    29
extern void WINRT_InitGameBar(_THIS);
dludwig@10222
    30
extern void WINRT_QuitGameBar(_THIS);
dludwig@10222
    31
#endif
dludwig@10222
    32
dludwig@10222
    33
#endif /* _SDL_winrtmouse_h */
dludwig@10222
    34
dludwig@10222
    35
/* vi: set ts=4 sw=4 expandtab: */