Ryujinx-SDL/test/relative_mode.markdown
David Ludwig 70438be272 WinRT: fixed bug whereby SDL would override an app's default orientation
WinRT apps can set a default, preferred orientation via a .appxmanifest file.
SDL was overriding this on app startup, and making the app use all possible
orientations (landscape and portrait).

Thanks to Eric Wing for the heads up on this!
2014-12-03 10:55:23 -05:00

1.2 KiB

Relative mode testing

See test program at the bottom of this file.

Initial tests:

  • When in relative mode, the mouse shouldn't be moveable outside of the window.
  • When the cursor is outside the window when relative mode is enabled, mouse clicks should not go to whatever app was under the cursor previously.
  • When alt/cmd-tabbing between a relative mode app and another app, clicks when in the relative mode app should also not go to whatever app was under the cursor previously.

Code

#include <SDL.h>

int PollEvents()
{
    SDL_Event event;
    while (SDL_PollEvent(&event))
    {
        switch (event.type)
        {
            case SDL_QUIT:
                return 1;
            default:
                break;
        }
    }

    return 0;
}

int main(int argc, char *argv[])
{
    SDL_Init(SDL_INIT_VIDEO);

    SDL_Window *win = SDL_CreateWindow("Test", SDL_WINDOWPOS_CENTERED, SDL_WINDOWPOS_CENTERED, 800, 600, 0);
    SDL_SetRelativeMouseMode(SDL_TRUE);

    while (1)
    {
        if (PollEvents())
            break;
    }

    SDL_DestroyWindow(win);

    SDL_Quit();

    return 0;
}