2013年12月2日 星期一

[Webkit] Callstack for handle string event to append text to HtmlInputElement.

Memo for handle string event.

It would be useful if you like to know the function flow to append text to HtmlInputElement.

WEBKIT!WebCore::TypingCommand::insertTextRunWithoutNewlines(const WTF::String & {...}, bool false)  line 369
WEBKIT!WebCore::TypingCommandLineOperation::operator()(unsigned int 0, unsigned int 1, bool true)  line 63 + 68 bytes
WEBKIT!WebCore::forEachLineInString<WebCore::TypingCommandLineOperation>(const WTF::String & {...}, const WebCore::TypingCommandLineOperation & {...})  line 62
WEBKIT!WebCore::TypingCommand::insertText(const WTF::String & {...}, bool false)  line 360
WEBKIT!WebCore::TypingCommand::insertText(WebCore::Document * 0x0c71f800, const WTF::String & {...}, const WebCore::VisibleSelection & {...}, unsigned int 0, WebCore::TypingCommand::TextCompositionType TextCompositionNone)  line 194
WEBKIT!WebCore::Editor::insertTextWithoutSendingTextEvent(const WTF::String & {...}, bool false, WebCore::TextEvent * 0x0062b420)  line 944
WEBKIT!WebCore::Editor::handleTextEvent(WebCore::TextEvent * 0x0062b420)  line 181 + 20 bytes
WEBKIT!WebCore::EventHandler::defaultTextInputEventHandler(WebCore::TextEvent * 0x0062b420)  line 3501 + 20 bytes
WEBKIT!WebCore::Node::defaultEventHandler(WebCore::Event * 0x0062b420)  line 2760
WEBKIT!WebCore::HTMLTextFormControlElement::defaultEventHandler(WebCore::Event * 0x0062b420)  line 106
WEBKIT!WebCore::HTMLInputElement::defaultEventHandler(WebCore::Event * 0x0062b420)  line 1249
WEBKIT!WebCore::EventDispatcher::dispatchEventPostProcess(WTF::PassRefPtr<WebCore::Event> * 0x0015e4bc, void * 0x00000000)  line 350
WEBKIT!WebCore::EventDispatcher::dispatchEvent(WTF::PassRefPtr<WebCore::Event> * 0x0015e784)  line 267
WEBKIT!WebCore::EventDispatchMediator::dispatchEvent(WebCore::EventDispatcher * 0x0015e7b4)  line 52 + 108 bytes
WEBKIT!WebCore::EventDispatcher::dispatchEvent(WebCore::Node * 0x0063e140, WTF::PassRefPtr<WebCore::EventDispatchMediator> * 0x0015e828)  line 129 + 52 bytes
WEBKIT!WebCore::Node::dispatchEvent(WTF::PassRefPtr<WebCore::Event> * 0x0015e874)  line 2577 + 96 bytes
WEBKIT!WebCore::EventTarget::dispatchEvent(WTF::PassRefPtr<WebCore::Event> * 0x0015e934, int & 6831584)  line 143 + 84 bytes
WEBKIT!WebCore::EventHandler::handleTextInputEvent(const WTF::String & {...}, WebCore::Event * 0x0c70a0b0, WebCore::TextEventInputType TextEventInputKeyboard)  line 3467
WEBKIT!WebCore::Editor::insertText(const WTF::String & {...}, WebCore::Event * 0x0c70a0b0)  line 885 + 36 bytes
WEBKIT!WebView::handleEditingKeyboardEvent(WebCore::KeyboardEvent * 0x0c70a0b0)  line 3246 + 116 bytes
WEBKIT!WebEditorClient::handleKeyboardEvent(WebCore::KeyboardEvent * 0x0c70a0b0)  line 636 + 20 bytes
WEBKIT!WebCore::Editor::handleKeyboardEvent(WebCore::KeyboardEvent * 0x0c70a0b0)  line 151
WEBKIT!WebCore::EventHandler::defaultKeyboardEventHandler(WebCore::KeyboardEvent * 0x0c70a0b0)  line 3200
WEBKIT!WebCore::Node::defaultEventHandler(WebCore::Event * 0x0c70a0b0)  line 2745
WEBKIT!WebCore::HTMLTextFormControlElement::defaultEventHandler(WebCore::Event * 0x0c70a0b0)  line 106
WEBKIT!WebCore::HTMLInputElement::defaultEventHandler(WebCore::Event * 0x0c70a0b0)  line 1189
WEBKIT!WebCore::EventDispatcher::dispatchEventPostProcess(WTF::PassRefPtr<WebCore::Event> * 0x0015f36c, void * 0x00000000)  line 350
WEBKIT!WebCore::EventDispatcher::dispatchEvent(WTF::PassRefPtr<WebCore::Event> * 0x0015f634)  line 267
WEBKIT!WebCore::EventDispatchMediator::dispatchEvent(WebCore::EventDispatcher * 0x0015f690)  line 52 + 108 bytes
WEBKIT!WebCore::KeyboardEventDispatchMediator::dispatchEvent(WebCore::EventDispatcher * 0x0015f690)  line 222 + 12 bytes
WEBKIT!WebCore::EventDispatcher::dispatchEvent(WebCore::Node * 0x0063e140, WTF::PassRefPtr<WebCore::EventDispatchMediator> * 0x0015f704)  line 129 + 52 bytes
WEBKIT!WebCore::Node::dispatchKeyEvent(const WebCore::PlatformKeyboardEvent & {...})  line 2618 + 188 bytes
WEBKIT!WebCore::EventHandler::keyEvent(const WebCore::PlatformKeyboardEvent & {...})  line 3049 + 12 bytes
WEBKIT!WebView::keyPress(unsigned int 71, long 0, bool false)  line 3525 + 20 bytes
WEBKIT!WebView::handleStrEvent(wchar_t * 0x005005d8)  line 3402 + 44 bytes
BROWSER!CoreService::OnPressTenKey2()  line 904
BROWSER!EBSS_fBrowser__onPressTenKey2()  line 106
UICOMMONLIB!40f683f0()
NEVENTBASELIB!40d63f10()
NEVENTBASELIB!40d64530()
BROWSER!Browser::Run()  line 81
BROWSER!WinMain()  line 17 + 8 bytes
BROWSER!WinMainCRTStartupHelper(HINSTANCE__ * 0xfffffffd, HINSTANCE__ * 0x00000005, unsigned short * 0xf101f798, int 1)  line 71 + 20 bytes
COREDLL!MainThreadBaseFunc(void * 0x00000000, const wchar_t * 0x00000000, const wchar_t * 0x00000000, HINSTANCE__ * 0x00000000, HINSTANCE__ * 0x00000000, HINSTANCE__ * 0x00000000)  line 1209 + 88 bytes
f101fffc()

沒有留言:

張貼留言