Bug 855975 part.1 Make widget::KeyboardLayout a singleton class r=jimm
Bug 855975 part.2 Wrap MapVirtualKeyEx() API for converting native key event to VK or Unichar with widget::NativeKey r=jimm
Bug 855975 part.3 Wrap MapVirtualKeyEx() API for converting VK to ScanCode with widget::KeyboardLayout r=jimm
Bug 855975 part.4 Move nsWindow::InitKeyEvent() to widget::NativeKey::InitKeyEvent() r=jimm
Bug 855975 part.5 Move nsWindow::DispatchKeyEvent() to widget::NativeKey::DispatchKeyEvent() r=jimm
Bug 855975 part.6 Move nsWindow::OnKeyUp() to widget::NativeKey::HandleKeyUpMessage() r=jimm
Bug 855975 part.7 Implement widget::NativeKey::DispatchKeyDownEvent() r=jimm
Bug 855975 part.8 Move nsWindow::OnChar() to widget::NativeKey::HandleCharMessage() r=jimm
Bug 855975 part.9 Move keypress events dispatcher of nsWindow::OnKeyDown() to widget::NativeKey::DispatchKeyPressEventsWithKeyboardLayout() r=jimm
Bug 855975 part.10 Move nsWindow::DispatchPluginEvent() to nsWindowBase r=jimm
Bug 855975 part.11 Sort out the if statement which checks whether the native keydown message needs to be handled without following char messages r=jimm
Bug 855975 part.12 Move special keypress event handling from nsWindow::OnKeyDown() to widget::NativeKey::DispatchKeyPressEventsAndDiscardsCharMessages r=jimm
Bug 855975 part.13 widget::NativeKey should manage following WM_*CHAR message if it's initialized with WM_*KEYDOWN r=jimm
Bug 855975 part.14 Move following WM_*CHAR message handler from nsWindow::OnKeyDown() to widget::NativeKey::DispatchKeyPressEventForFollowingCharMessage() r=jimm
Bug 855975 part.15 Use widget::NativeKey::mCommittedCharsAndModifiers directly in the methods of widget::NativeKey r=jimm
Bug 855975 part.16 Move keydown message redirect manager from nsWindow to widget::RedirectedKeyDownMessageManager r=jimm
Bug 855975 part.17 Move nsWindow::OnKeyDown() to widget::NativeKey::HandleKeyDownMessage() r=jimm
Bug 855975 part.18 Merge widget::NativeKey::DispatchKeyDown() into widget::NativeKey::HandleKeyDown() r=jimm
Bug 855975 part.19 Move nsWindow::SynthesizeNativeKeyEvent() to widget::KeyboardLayout::SynthesizeNativeKeyEvent() r=jimm
Bug 855975 part.20 Sort out the scope of the methods of widget::NativKey r=jimm