|  | // Copyright 2019 The Fuchsia Authors. All rights reserved. | 
|  | // Use of this source code is governed by a BSD-style license that can be | 
|  | // found in the LICENSE file. | 
|  |  | 
|  | library fuchsia.ui.input2; | 
|  |  | 
|  | /// Modifiers are special keys that modify the purpose or the function | 
|  | /// of other keys when used in combination with them. | 
|  | bits Modifiers : uint32 { | 
|  | /// Applies when either the `LEFT_SHIFT` or `RIGHT_SHIFT` modifier is pressed. | 
|  | SHIFT = 0x00000001; | 
|  | /// Applies when the `LEFT_SHIFT` modifier is pressed. | 
|  | LEFT_SHIFT = 0x00000002; | 
|  | /// Applies when the `RIGHT_SHIFT` modifier is pressed. | 
|  | RIGHT_SHIFT = 0x00000004; | 
|  |  | 
|  | /// Applies when either the `LEFT_CONTROL` or `RIGHT_CONTROL` modifier is pressed. | 
|  | CONTROL = 0x00000008; | 
|  | /// Applies when the `LEFT_CONTROL` modifier is pressed. | 
|  | LEFT_CONTROL = 0x00000010; | 
|  | /// Applies when the `RIGHT_CONTROL` modifier is pressed. | 
|  | RIGHT_CONTROL = 0x00000020; | 
|  |  | 
|  | /// Applies when either the `LEFT_ALT` or `RIGHT_ALT` modifier is pressed. | 
|  | ALT = 0x00000040; | 
|  | /// Applies when the `LEFT_ALT` modifier is pressed. | 
|  | LEFT_ALT = 0x00000080; | 
|  | /// Applies when the `RIGHT_ALT` modifier is pressed. | 
|  | RIGHT_ALT = 0x00000100; | 
|  |  | 
|  | /// Applies when either the `LEFT_META` or `RIGHT_META` modifier is pressed. | 
|  | META = 0x00000200; | 
|  | /// Applies when the `LEFT_META` modifier is pressed. | 
|  | LEFT_META = 0x00000400; | 
|  | /// Applies when the `RIGHT_META` modifier is pressed. | 
|  | RIGHT_META = 0x00000800; | 
|  |  | 
|  | /// Applies when the `CAPS_LOCK` modifier is locked. | 
|  | CAPS_LOCK = 0x00001000; | 
|  | /// Applies when the `NUM_LOCK` modifier is locked. | 
|  | NUM_LOCK = 0x00002000; | 
|  | /// Applies when the `SCROLL_LOCK` modifier is locked. | 
|  | SCROLL_LOCK = 0x00004000; | 
|  |  | 
|  | // TODO: Define additional modifiers as needed. | 
|  | // ALT_GRAPH, FUNCTION, FUNCTION_LOCK, SYMBOL, SYMBOL_LOCK | 
|  | }; |