// Copyright 2014 The Chromium Authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. module ui.mojom; // AcceleratorPhase specifies which phase of event matching the matcher should // be considered for. See WindowTree for details on how it handles the // AcceleratorPhase. enum AcceleratorPhase { PRE_TARGET, POST_TARGET, }; enum EventType { UNKNOWN, KEY_PRESSED, KEY_RELEASED, POINTER_DOWN, POINTER_MOVED, POINTER_UP, POINTER_CANCELLED, POINTER_ENTERED, POINTER_EXITED, POINTER_WHEEL_CHANGED, POINTER_CAPTURE_CHANGED, GESTURE_TAP, SCROLL, SCROLL_FLING_START, SCROLL_FLING_CANCEL, }; // This mirrors ui::EventFlags // TODO(morrita): Use shift operator once it is available. const int32 kEventFlagNone = 0x00000; const int32 kEventFlagIsSynthesized = 0x00001; const int32 kEventFlagShiftDown = 0x00002; const int32 kEventFlagControlDown = 0x00004; const int32 kEventFlagAltDown = 0x00008; const int32 kEventFlagCommandDown = 0x00010; const int32 kEventFlagAltgrDown = 0x00020; const int32 kEventFlagMod3Down = 0x00040; const int32 kEventFlagNumLockOn = 0x00080; const int32 kEventFlagCapsLockOn = 0x00100; const int32 kEventFlagScrollLockOn = 0x00200; const int32 kEventFlagLeftMouseButton = 0x00400; const int32 kEventFlagMiddleMouseButton = 0x00800; const int32 kEventFlagRightMouseButton = 0x01000; const int32 kEventFlagBackMouseButton = 0x02000; const int32 kEventFlagForwardMouseButton = 0x04000; const int32 kMouseEventFlagIsDoubleClick = 0x08000; const int32 kMouseEventFlagIsTripleClick = 0x10000; const int32 kMouseEventFlagIsNonClient = 0x20000; // TODO(erg): Move accessibility flags and maybe synthetic touch events here. enum PointerKind { MOUSE, PEN, TOUCH, ERASER, }; enum WheelMode { PIXEL, LINE, PAGE, SCALING, }; // Phase information used for a ScrollEvent. // These values match ui::ScrollEventPhase in ui/events/event_constants.h enum ScrollEventPhase { kNone, kBegan, kUpdate, kEnd, }; // Momentum phase information used for a ScrollEvent. // These values match ui::EventMomentumPhase in ui/events/event_constants.h enum EventMomentumPhase { NONE, BEGAN, MAY_BEGIN, INERTIAL_UPDATE, END, };