32 lines
825 B
C++
32 lines
825 B
C++
#include "../src/input.hpp"
|
|
|
|
#include <SDL.h>
|
|
#include <rfb/keysym.h>
|
|
|
|
#include <cassert>
|
|
|
|
namespace {
|
|
|
|
SDL_Keysym keysym(SDL_Keycode key, Uint16 mod = KMOD_NONE)
|
|
{
|
|
SDL_Keysym value {};
|
|
value.sym = key;
|
|
value.mod = mod;
|
|
value.scancode = SDL_GetScancodeFromKey(key);
|
|
return value;
|
|
}
|
|
|
|
}
|
|
|
|
int main()
|
|
{
|
|
assert(wayviewer::mapSdlKey(keysym(SDLK_a)) == 'a');
|
|
assert(wayviewer::mapSdlKey(keysym(SDLK_a, KMOD_LSHIFT)) == 'A');
|
|
assert(wayviewer::mapSdlKey(keysym(SDLK_a, KMOD_CAPS)) == 'A');
|
|
assert(wayviewer::mapSdlKey(keysym(SDLK_a, KMOD_LSHIFT | KMOD_CAPS)) == 'a');
|
|
assert(wayviewer::mapSdlKey(keysym(SDLK_1, KMOD_LSHIFT)) == '!');
|
|
assert(wayviewer::mapSdlKey(keysym(SDLK_SLASH, KMOD_LSHIFT)) == '?');
|
|
assert(wayviewer::mapSdlKey(keysym(SDLK_LSHIFT)) == XK_Shift_L);
|
|
return 0;
|
|
}
|