Я встроил nsIWebBrowser в свое приложение. Поскольку я просто генерирую HTML для него на лету, я использую OpenStream, AppendToStream и CloseStream для добавления контента. Что мне нужно, это добавить слушателей событий для перемещения мыши по веб-браузеру, а также щелчков мыши. Я прочитал документацию и перепробовал много разных вещей, но ничего, что я пробовал, не сработало. Например, приведенный ниже код может показаться правильным, но он ничего не делает:
nsCOMPtr<nsIDOMWindow> domWindow;
mWebBrowser->GetContentDOMWindow(getter_AddRefs(domWindow));
if (!mEventTarget) {
mEventTarget = do_QueryInterface(domWindow);
if (mEventTarget)
mEventTarget->AddEventListener(NS_LITERAL_STRING("mouseover"), (nsIDOMEventListener *)mEventListener, PR_FALSE);
}
Возможно, это не работает, потому что это выполняется во время инициализации, но до того, как какой-либо контент действительно добавляется. Однако, если я добавлю его во время AppendStream или CloseStream, это приведет к ошибкам.
Пожалуйста, скажите мне простой способ сделать это.