Chromium Code Reviews| Index: ui/events/x/events_x_unittest.cc |
| diff --git a/ui/events/x/events_x_unittest.cc b/ui/events/x/events_x_unittest.cc |
| index 368682cbb1bd5fec0bb896ada960ac5c5ea5aa92..1d64c515fe4e53ed738f9dc71823a0db116e424c 100644 |
| --- a/ui/events/x/events_x_unittest.cc |
| +++ b/ui/events/x/events_x_unittest.cc |
| @@ -370,4 +370,66 @@ TEST(EventsXTest, NumpadKeyEvents) { |
| } |
| } |
| +TEST(EventsXTest, FunctionKeyEvents) { |
| + XEvent event; Display* display = gfx::GetXDisplay(); |
|
oshima
2014/05/30 17:03:19
split to two lines
bruthig
2014/05/30 19:10:03
Done.
|
| + |
| + struct { |
| + bool is_function_key; |
| + int x_keysym; |
| + ui::KeyboardCode ui_keycode; |
|
oshima
2014/05/30 17:03:19
is this field used?
bruthig
2014/05/30 19:10:03
Done.
|
| + } keys[] = { |
| + // Min function key code minus 1. |
| + { false, XK_F1-1 }, |
|
oshima
2014/05/30 17:03:19
space before/after -
bruthig
2014/05/30 19:10:03
Done.
|
| + // All function keys. |
| + { true, XK_F1 }, |
| + { true, XK_F2 }, |
| + { true, XK_F3 }, |
| + { true, XK_F4 }, |
| + { true, XK_F5 }, |
| + { true, XK_F6 }, |
| + { true, XK_F7 }, |
| + { true, XK_F8 }, |
| + { true, XK_F9 }, |
| + { true, XK_F10 }, |
| + { true, XK_F11 }, |
| + { true, XK_F12 }, |
| + { true, XK_F13 }, |
| + { true, XK_F14 }, |
| + { true, XK_F15 }, |
| + { true, XK_F16 }, |
| + { true, XK_F17 }, |
| + { true, XK_F18 }, |
| + { true, XK_F19 }, |
| + { true, XK_F20 }, |
| + { true, XK_F21 }, |
| + { true, XK_F22 }, |
| + { true, XK_F23 }, |
| + { true, XK_F24 }, |
| + { true, XK_F25 }, |
| + { true, XK_F26 }, |
| + { true, XK_F27 }, |
| + { true, XK_F28 }, |
| + { true, XK_F29 }, |
| + { true, XK_F30 }, |
| + { true, XK_F31 }, |
| + { true, XK_F32 }, |
| + { true, XK_F33 }, |
| + { true, XK_F34 }, |
| + { true, XK_F35 }, |
| + // Max function key code plus 1. |
| + { false, XK_F35+1 } |
|
oshima
2014/05/30 17:03:19
ditto
bruthig
2014/05/30 19:10:03
Done.
|
| + }; |
| + |
| + for (size_t k = 0; k < ARRAYSIZE_UNSAFE(keys); ++k) { |
| + int x_keycode = XKeysymToKeycode(display, keys[k].x_keysym); |
| + // Exclude keysyms for which the server has no corresponding keycode. |
| + if (x_keycode) { |
| + InitKeyEvent(display, &event, true, x_keycode, 0); |
| + ui::KeyEvent ui_key_event(&event, false); |
| + EXPECT_EQ(keys[k].is_function_key ? ui::EF_FUNCTION_KEY : 0, |
| + ui_key_event.flags() & ui::EF_FUNCTION_KEY); |
| + } |
|
oshima
2014/05/30 17:03:19
isn't it simpler to do something like
EXPECT_FALS
bruthig
2014/05/30 19:10:03
This has been re-written but this has uncovered so
|
| + } |
| +} |
| + |
| } // namespace ui |