Index: ui/events/x/events_x.cc |
diff --git a/ui/events/x/events_x.cc b/ui/events/x/events_x.cc |
index 03b7e28d8de9704453e90d7dde5a6e126667863b..7516956ebb8103d354b0d4b92947b25e592b8810 100644 |
--- a/ui/events/x/events_x.cc |
+++ b/ui/events/x/events_x.cc |
@@ -189,6 +189,7 @@ int GetEventFlagsFromXKeyEvent(XEvent* xevent) { |
#endif |
return GetEventFlagsFromXState(xevent->xkey.state) | |
+ (xevent->xkey.send_event ? ui::EF_FINAL : 0) | |
(IsKeypadKey(XLookupKeysym(&xevent->xkey, 0)) ? ui::EF_NUMPAD_KEY : 0) | |
(IsFunctionKey(XLookupKeysym(&xevent->xkey, 0)) ? |
ui::EF_FUNCTION_KEY : 0) | |
@@ -201,6 +202,7 @@ int GetEventFlagsFromXGenericEvent(XEvent* xevent) { |
DCHECK((xievent->evtype == XI_KeyPress) || |
(xievent->evtype == XI_KeyRelease)); |
return GetEventFlagsFromXState(xievent->mods.effective) | |
+ (xevent->xkey.send_event ? ui::EF_FINAL : 0) | |
(IsKeypadKey( |
XkbKeycodeToKeysym(xievent->display, xievent->detail, 0, 0)) |
? ui::EF_NUMPAD_KEY |