1 // Copyright 2014 The Chromium Authors. All rights reserved. 2 // Use of this source code is governed by a BSD-style license that can be 3 // found in the LICENSE file. 4 5 #ifndef REMOTING_IOS_KEY_INPUT_H_ 6 #define REMOTING_IOS_KEY_INPUT_H_ 7 8 #import <Foundation/Foundation.h> 9 #import <UIKit/UIKit.h> 10 11 // Key codes are translated from the on screen keyboard to the scan codes 12 // needed for Chromoting input. We don't have a good automated approach to do 13 // this. Instead we have created a mapping manually via trial and error. To 14 // support other keyboards in this context we would have to test and create a 15 // mapping for each keyboard manually. 16 17 // Contract to handle translated key presses from the on-screen keyboard to 18 // the format required for Chromoting keyboard input 19 @protocol KeyInputDelegate<NSObject> 20 21 - (void)keyboardActionKeyCode:(uint32_t)keyPressed isKeyDown:(BOOL)keyDown; 22 23 - (void)keyboardDismissed; 24 25 @end 26 27 @interface KeyInput : UIView<UIKeyInput> 28 29 @property(weak, nonatomic) id<KeyInputDelegate> delegate; 30 31 - (void)ctrlAltDel; 32 33 @end 34 35 #endif // REMOTING_IOS_KEY_INPUT_H_