1
0
mirror of https://github.com/Relintai/sdl2_frt.git synced 2024-12-20 22:16:49 +01:00
sdl2_frt/test/relative_mode.markdown
Gabriel Jacobo dad420670f Fixes , do not resume on Android when surfaceChanged
If the app is in landscape mode and the user presses the power button, a pause
is followed immediately by a surfaceChanged event because the lock screen
is shown in portrait mode. This triggers a "false" resume.
So, we just pause and resume following the onWindowFocusChanged events.

Also, wait for SDL_APP_WILLENTERBACKGROUND and SDL_APP_DIDENTERBACKGROUND before
blocking the event pump.
2013-08-12 11:13:50 -03:00

57 lines
1.2 KiB
Markdown

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;
}