[Webkit-unassigned] [Bug 202183] [Win] Update KeyboardEvent as per the latest specification

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Tue Oct 8 20:56:45 PDT 2019


https://bugs.webkit.org/show_bug.cgi?id=202183

--- Comment #10 from Fujii Hironori <Hironori.Fujii at sony.com> ---
In Chromium, InputMethodWinBase::DispatchKeyEvent retrieves queued WM_CHAR events, and sets a char information from WM_CHAR to the keydown event.

Callstack:

> content.dll!ui::MakeWebKeyboardEventFromUiEvent(const ui::KeyEvent & event) Line 115	C++
> content.dll!ui::MakeWebKeyboardEvent(const ui::KeyEvent & event) Line 332	C++
> content.dll!content::NativeWebKeyboardEvent::NativeWebKeyboardEvent(const ui::KeyEvent & key_event, wchar_t character) Line 132	C++
> content.dll!content::RenderWidgetHostViewAura::InsertChar(const ui::KeyEvent & event) Line 1270	C++
> ui_base_ime_win.dll!ui::InputMethodWinBase::OnChar(HWND__ * window_handle, unsigned int message, unsigned __int64 wparam, __int64 lparam, const tagMSG & event, int * handled) Line 294	C++
> ui_base_ime_win.dll!ui::InputMethodWinBase::ProcessUnhandledKeyEvent(ui::KeyEvent * event, const std::__1::vector<tagMSG,std::__1::allocator<tagMSG>> * char_msgs) Line 503	C++
> ui_base_ime_win.dll!ui::InputMethodWinBase::DispatchKeyEvent(ui::KeyEvent * event) Line 255	C++
> aura.dll!aura::WindowEventDispatcher::PreDispatchKeyEvent(ui::KeyEvent * event) Line 1036	C++
> aura.dll!aura::WindowEventDispatcher::PreDispatchEvent(ui::EventTarget * target, ui::Event * event) Line 535	C++
> events.dll!ui::EventDispatcherDelegate::DispatchEvent(ui::EventTarget * target, ui::Event * event) Line 55	C++
> events.dll!ui::EventProcessor::OnEventFromSource(ui::Event * event) Line 49	C++
> events.dll!ui::EventSource::DeliverEventToSink(ui::Event * event) Line 112	C++
> events.dll!ui::EventSource::SendEventToSinkFromRewriter(const ui::Event * event, const ui::EventRewriter * rewriter) Line 137	C++
> events.dll!ui::EventSource::SendEventToSink(const ui::Event * event) Line 106	C++
> views.dll!views::DesktopWindowTreeHostWin::HandleKeyEvent(ui::KeyEvent * event) Line 934	C++
> views.dll!views::HWNDMessageHandler::OnKeyEvent(unsigned int message, unsigned __int64 w_param, __int64 l_param) Line 1912	C++
> views.dll!views::HWNDMessageHandler::_ProcessWindowMessage(HWND__ * hWnd, unsigned int uMsg, unsigned __int64 wParam, __int64 lParam, __int64 & lResult, unsigned long dwMsgMapID) Line 380	C++
> views.dll!views::HWNDMessageHandler::OnWndProc(unsigned int message, unsigned __int64 w_param, __int64 l_param) Line 1024	C++
> gfx.dll!gfx::WindowImpl::WndProc(HWND__ * hwnd, unsigned int message, unsigned __int64 w_param, __int64 l_param) Line 298	C++
> gfx.dll!base::win::WrappedWindowProc<&gfx::WindowImpl::WndProc>(HWND__ * hwnd, unsigned int message, unsigned __int64 wparam, __int64 lparam) Line 75	C++
> [External Code]	
> base.dll!base::MessagePumpForUI::ProcessMessageHelper(const tagMSG & msg) Line 476	C++
> base.dll!base::MessagePumpForUI::ProcessNextWindowsMessage() Line 445	C++
> base.dll!base::MessagePumpForUI::DoRunLoop() Line 212	C++
> base.dll!base::MessagePumpWin::Run(base::MessagePump::Delegate * delegate) Line 76	C++
> base.dll!base::sequence_manager::internal::ThreadControllerWithMessagePumpImpl::Run(bool application_tasks_allowed, base::TimeDelta timeout) Line 467	C++
> base.dll!base::RunLoop::Run() Line 156	C++
> chrome.dll!ChromeBrowserMainParts::MainMessageLoopRun(int * result_code) Line 1854	C++
> content.dll!content::BrowserMainLoop::RunMainMessageLoopParts() Line 1026	C++
> content.dll!content::BrowserMainRunnerImpl::Run() Line 149	C++
> content.dll!content::BrowserMain(const content::MainFunctionParams & parameters) Line 47	C++
> content.dll!content::RunBrowserProcessMain(const content::MainFunctionParams & main_function_params, content::ContentMainDelegate * delegate) Line 556	C++
> content.dll!content::ContentMainRunnerImpl::RunServiceManager(content::MainFunctionParams & main_params, bool start_service_manager_only) Line 963	C++
> content.dll!content::ContentMainRunnerImpl::Run(bool start_service_manager_only) Line 871	C++
> content.dll!content::ContentServiceManagerMainDelegate::RunEmbedderProcess() Line 52	C++
> embedder.dll!service_manager::Main(const service_manager::MainParams & params) Line 423	C++
> content.dll!content::ContentMain(const content::ContentMainParams & params) Line 20	C++
> chrome.dll!ChromeMain(HINSTANCE__ * instance, sandbox::SandboxInterfaceInfo * sandbox_info, __int64 exe_entry_point_ticks) Line 110	C++
> chrome.exe!MainDllLoader::Launch(HINSTANCE__ * instance, base::TimeTicks exe_entry_point_ticks) Line 202	C++
> chrome.exe!wWinMain(HINSTANCE__ * instance, HINSTANCE__ * prev, wchar_t *, int) Line 234	C++
> [External Code]	

Issue 1267483003: Combine the WM_CHAR with WM_KEY* for key event flow. - Code Review
https://codereview.chromium.org/1267483003

-- 
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.webkit.org/pipermail/webkit-unassigned/attachments/20191009/b2904e35/attachment.html>


More information about the webkit-unassigned mailing list