168043e1e95eeb07d5cae7aca370b26518b0867d6Torne (Richard Coles)// Copyright 2013 The Chromium Authors. All rights reserved. 268043e1e95eeb07d5cae7aca370b26518b0867d6Torne (Richard Coles)// Use of this source code is governed by a BSD-style license that can be 368043e1e95eeb07d5cae7aca370b26518b0867d6Torne (Richard Coles)// found in the LICENSE file. 468043e1e95eeb07d5cae7aca370b26518b0867d6Torne (Richard Coles) 54e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)#ifndef CHROME_TEST_REMOTING_KEY_CODE_CONV_H_ 64e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)#define CHROME_TEST_REMOTING_KEY_CODE_CONV_H_ 768043e1e95eeb07d5cae7aca370b26518b0867d6Torne (Richard Coles) 868043e1e95eeb07d5cae7aca370b26518b0867d6Torne (Richard Coles)#include "ui/events/keycodes/keyboard_codes.h" 968043e1e95eeb07d5cae7aca370b26518b0867d6Torne (Richard Coles) 1068043e1e95eeb07d5cae7aca370b26518b0867d6Torne (Richard Coles)namespace remoting { 1168043e1e95eeb07d5cae7aca370b26518b0867d6Torne (Richard Coles) 1268043e1e95eeb07d5cae7aca370b26518b0867d6Torne (Richard Coles)// Find out the key(s) that need to be pressed to type the desired character. 1368043e1e95eeb07d5cae7aca370b26518b0867d6Torne (Richard Coles)// The information can be used to simulate a key press event. 1468043e1e95eeb07d5cae7aca370b26518b0867d6Torne (Richard Coles)// The information returned includes: 1568043e1e95eeb07d5cae7aca370b26518b0867d6Torne (Richard Coles)// 1. The UIEvents (aka: DOM4Events) |code| value as defined in: 1668043e1e95eeb07d5cae7aca370b26518b0867d6Torne (Richard Coles)// http://www.w3.org/TR/uievents/ 1768043e1e95eeb07d5cae7aca370b26518b0867d6Torne (Richard Coles)// 2. The virtual key code (ui::KeyboardCode) 1868043e1e95eeb07d5cae7aca370b26518b0867d6Torne (Richard Coles)// 3. The shift state. 1968043e1e95eeb07d5cae7aca370b26518b0867d6Torne (Richard Coles)// This function assumes US keyboard layout. 2068043e1e95eeb07d5cae7aca370b26518b0867d6Torne (Richard Coles)void GetKeyValuesFromChar( 2168043e1e95eeb07d5cae7aca370b26518b0867d6Torne (Richard Coles) char c, const char** code, ui::KeyboardCode* vkey_code, bool* shift); 2268043e1e95eeb07d5cae7aca370b26518b0867d6Torne (Richard Coles) 2368043e1e95eeb07d5cae7aca370b26518b0867d6Torne (Richard Coles)} // namespace remoting 2468043e1e95eeb07d5cae7aca370b26518b0867d6Torne (Richard Coles) 254e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)#endif // CHROME_TEST_REMOTING_KEY_CODE_CONV_H_ 26