Imported Upstream version 0.1.0+git20131207+e452e83
[deb_libhybris.git] / hybris / include / hybris / input / input_stack_compatibility_layer_flags.h
1 /*
2 * Copyright (C) 2013 Canonical Ltd
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
7 *
8 * http://www.apache.org/licenses/LICENSE-2.0
9 *
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
15 *
16 * Authored by: Thomas Voss <thomas.voss@canonical.com>
17 */
18
19 #ifndef INPUT_STACK_COMPATIBILITY_LAYER_FLAGS_H_
20 #define INPUT_STACK_COMPATIBILITY_LAYER_FLAGS_H_
21
22 #include <hybris/input/input_stack_compatibility_layer_flags_key.h>
23 #include <hybris/input/input_stack_compatibility_layer_flags_motion.h>
24
25 /*
26 * Constants that identify tool types.
27 * Refer to the documentation on the MotionEvent class for descriptions of each tool type.
28 */
29 enum
30 {
31 ISCL_MOTION_EVENT_TOOL_TYPE_UNKNOWN = 0,
32 ISCL_MOTION_EVENT_TOOL_TYPE_FINGER = 1,
33 ISCL_MOTION_EVENT_TOOL_TYPE_STYLUS = 2,
34 ISCL_MOTION_EVENT_TOOL_TYPE_MOUSE = 3,
35 ISCL_MOTION_EVENT_TOOL_TYPE_ERASER = 4,
36 };
37
38 /*
39 * Input sources.
40 *
41 * Refer to the documentation on android.view.InputDevice for more details about input sources
42 * and their correct interpretation.
43 */
44 enum
45 {
46 ISCL_INPUT_SOURCE_CLASS_MASK = 0x000000ff,
47
48 ISCL_INPUT_SOURCE_CLASS_BUTTON = 0x00000001,
49 ISCL_INPUT_SOURCE_CLASS_POINTER = 0x00000002,
50 ISCL_INPUT_SOURCE_CLASS_NAVIGATION = 0x00000004,
51 ISCL_INPUT_SOURCE_CLASS_POSITION = 0x00000008,
52 ISCL_INPUT_SOURCE_CLASS_JOYSTICK = 0x00000010,
53 };
54
55 enum
56 {
57 ISCL_INPUT_SOURCE_UNKNOWN = 0x00000000,
58
59 ISCL_INPUT_SOURCE_KEYBOARD = 0x00000100 | ISCL_INPUT_SOURCE_CLASS_BUTTON,
60 ISCL_INPUT_SOURCE_DPAD = 0x00000200 | ISCL_INPUT_SOURCE_CLASS_BUTTON,
61 ISCL_INPUT_SOURCE_GAMEPAD = 0x00000400 | ISCL_INPUT_SOURCE_CLASS_BUTTON,
62 ISCL_INPUT_SOURCE_TOUCHSCREEN = 0x00001000 | ISCL_INPUT_SOURCE_CLASS_POINTER,
63 ISCL_INPUT_SOURCE_MOUSE = 0x00002000 | ISCL_INPUT_SOURCE_CLASS_POINTER,
64 ISCL_INPUT_SOURCE_STYLUS = 0x00004000 | ISCL_INPUT_SOURCE_CLASS_POINTER,
65 ISCL_INPUT_SOURCE_TRACKBALL = 0x00010000 | ISCL_INPUT_SOURCE_CLASS_NAVIGATION,
66 ISCL_INPUT_SOURCE_TOUCHPAD = 0x00100000 | ISCL_INPUT_SOURCE_CLASS_POSITION,
67 ISCL_INPUT_SOURCE_JOYSTICK = 0x01000000 | ISCL_INPUT_SOURCE_CLASS_JOYSTICK,
68
69 ISCL_INPUT_SOURCE_ANY = 0xffffff00,
70 };
71
72 #endif // INPUT_STACK_COMPATIBILITY_LAYER_FLAGS_H_