author Dave Townsend <>
Mon, 08 Oct 2018 11:08:52 -0700
changeset 442897 0e7a8e6537619430d62cdda189acbd440a682788
parent 442363 72ccc94449163738199ec04886f2f5513bce5122
child 442364 ac56492b6ed6f03cd61389db83a73e0fdf970089
permissions -rw-r--r--
Bug 1419091: Define keybindings in a static C++ table. r=masayuki Copies the keybindings from platformHTMLBindings.xml into an array of C structs that can be easily used to instantiate an nsXBLPrototypeHandler (done in later patches). These were mechanically generated. Differential Revision:

/* This Source Code Form is subject to the terms of the Mozilla Public
 * License, v. 2.0. If a copy of the MPL was not distributed with this
 * file, You can obtain one at */

#ifndef mozilla_dom_ShortcutKeys_h
#define mozilla_dom_ShortcutKeys_h

namespace mozilla {

typedef struct
   const char16_t* event;
   const char16_t* keycode;
   const char16_t* key;
   const char16_t* modifiers;
   const char16_t* command;
} ShortcutKeyData;

class ShortcutKeys
  static ShortcutKeyData sBrowserHandlers[];
  static ShortcutKeyData sEditorHandlers[];
  static ShortcutKeyData sInputHandlers[];
  static ShortcutKeyData sTextAreaHandlers[];

} // namespace mozilla

#endif // #ifndef mozilla_dom_ShortcutKeys_h