Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(142)

Side by Side Diff: third_party/WebKit/public/web/WebInputEvent.h

Issue 2120153003: Remove keyIdentifier. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@remove_key_identifier_3a
Patch Set: Rebase Created 4 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « third_party/WebKit/Source/web/tests/WebViewTest.cpp ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2009 Google Inc. All rights reserved. 2 * Copyright (C) 2009 Google Inc. All rights reserved.
3 * 3 *
4 * Redistribution and use in source and binary forms, with or without 4 * Redistribution and use in source and binary forms, with or without
5 * modification, are permitted provided that the following conditions are 5 * modification, are permitted provided that the following conditions are
6 * met: 6 * met:
7 * 7 *
8 * * Redistributions of source code must retain the above copyright 8 * * Redistributions of source code must retain the above copyright
9 * notice, this list of conditions and the following disclaimer. 9 * notice, this list of conditions and the following disclaimer.
10 * * Redistributions in binary form must reproduce the above 10 * * Redistributions in binary form must reproduce the above
(...skipping 247 matching lines...) Expand 10 before | Expand all | Expand 10 after
258 }; 258 };
259 259
260 // WebKeyboardEvent ----------------------------------------------------------- 260 // WebKeyboardEvent -----------------------------------------------------------
261 261
262 class WebKeyboardEvent : public WebInputEvent { 262 class WebKeyboardEvent : public WebInputEvent {
263 public: 263 public:
264 // Caps on string lengths so we can make them static arrays and keep 264 // Caps on string lengths so we can make them static arrays and keep
265 // them PODs. 265 // them PODs.
266 static const size_t textLengthCap = 4; 266 static const size_t textLengthCap = 4;
267 267
268 // http://www.w3.org/TR/DOM-Level-3-Events/keyset.html lists the
269 // identifiers. The longest is 18 characters, so we round up to the
270 // next multiple of 4.
271 static const size_t keyIdentifierLengthCap = 20;
272
273 // |windowsKeyCode| is the Windows key code associated with this key 268 // |windowsKeyCode| is the Windows key code associated with this key
274 // event. Sometimes it's direct from the event (i.e. on Windows), 269 // event. Sometimes it's direct from the event (i.e. on Windows),
275 // sometimes it's via a mapping function. If you want a list, see 270 // sometimes it's via a mapping function. If you want a list, see
276 // WebCore/platform/chromium/KeyboardCodes* . Note that this should 271 // WebCore/platform/chromium/KeyboardCodes* . Note that this should
277 // ALWAYS store the non-locational version of a keycode as this is 272 // ALWAYS store the non-locational version of a keycode as this is
278 // what is returned by the Windows API. For example, it should 273 // what is returned by the Windows API. For example, it should
279 // store VK_SHIFT instead of VK_RSHIFT. The location information 274 // store VK_SHIFT instead of VK_RSHIFT. The location information
280 // should be stored in |modifiers|. 275 // should be stored in |modifiers|.
281 int windowsKeyCode; 276 int windowsKeyCode;
282 277
(...skipping 24 matching lines...) Expand all
307 302
308 // |text| is the text generated by this keystroke. |unmodifiedText| is 303 // |text| is the text generated by this keystroke. |unmodifiedText| is
309 // |text|, but unmodified by an concurrently-held modifiers (except 304 // |text|, but unmodified by an concurrently-held modifiers (except
310 // shift). This is useful for working out shortcut keys. Linux and 305 // shift). This is useful for working out shortcut keys. Linux and
311 // Windows guarantee one character per event. The Mac does not, but in 306 // Windows guarantee one character per event. The Mac does not, but in
312 // reality that's all it ever gives. We're generous, and cap it a bit 307 // reality that's all it ever gives. We're generous, and cap it a bit
313 // longer. 308 // longer.
314 WebUChar text[textLengthCap]; 309 WebUChar text[textLengthCap];
315 WebUChar unmodifiedText[textLengthCap]; 310 WebUChar unmodifiedText[textLengthCap];
316 311
317 // This is a string identifying the key pressed.
318 char keyIdentifier[keyIdentifierLengthCap];
319
320 WebKeyboardEvent() 312 WebKeyboardEvent()
321 : WebInputEvent(sizeof(WebKeyboardEvent)) 313 : WebInputEvent(sizeof(WebKeyboardEvent))
322 , windowsKeyCode(0) 314 , windowsKeyCode(0)
323 , nativeKeyCode(0) 315 , nativeKeyCode(0)
324 , isSystemKey(false) 316 , isSystemKey(false)
325 , isBrowserShortcut(false) 317 , isBrowserShortcut(false)
326 { 318 {
327 memset(&text, 0, sizeof(text)); 319 memset(&text, 0, sizeof(text));
328 memset(&unmodifiedText, 0, sizeof(unmodifiedText)); 320 memset(&unmodifiedText, 0, sizeof(unmodifiedText));
329 memset(&keyIdentifier, 0, sizeof(keyIdentifier));
330 } 321 }
331
332 // Sets keyIdentifier based on the value of windowsKeyCode. This is
333 // handy for generating synthetic keyboard events.
334 BLINK_COMMON_EXPORT void setKeyIdentifierFromWindowsKeyCode();
335 }; 322 };
336 323
337 // WebMouseEvent -------------------------------------------------------------- 324 // WebMouseEvent --------------------------------------------------------------
338 325
339 class WebMouseEvent : public WebInputEvent, public WebPointerProperties { 326 class WebMouseEvent : public WebInputEvent, public WebPointerProperties {
340 public: 327 public:
341 // Renderer coordinates. Similar to viewport coordinates but without 328 // Renderer coordinates. Similar to viewport coordinates but without
342 // DevTools emulation transform or overscroll applied. i.e. the coordinates 329 // DevTools emulation transform or overscroll applied. i.e. the coordinates
343 // in Chromium's RenderView bounds. 330 // in Chromium's RenderView bounds.
344 int x; 331 int x;
(...skipping 311 matching lines...) Expand 10 before | Expand all | Expand 10 after
656 , uniqueTouchEventId(0) 643 , uniqueTouchEventId(0)
657 { 644 {
658 } 645 }
659 }; 646 };
660 647
661 #pragma pack(pop) 648 #pragma pack(pop)
662 649
663 } // namespace blink 650 } // namespace blink
664 651
665 #endif 652 #endif
OLDNEW
« no previous file with comments | « third_party/WebKit/Source/web/tests/WebViewTest.cpp ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698