dom/xbl/builtin/ShortcutKeys.h
author Dave Townsend <dtownsend@oxymoronical.com>
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: https://phabricator.services.mozilla.com/D8930

/* 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 http://mozilla.org/MPL/2.0/. */

#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
{
protected:
  static ShortcutKeyData sBrowserHandlers[];
  static ShortcutKeyData sEditorHandlers[];
  static ShortcutKeyData sInputHandlers[];
  static ShortcutKeyData sTextAreaHandlers[];
};

} // namespace mozilla

#endif // #ifndef mozilla_dom_ShortcutKeys_h