Hi All,
I have an embedded application and am trying to simulate an event from
inside my application(written in C++). I am trying to simulate events like
click etc. on HTML Elements. I have been able to fire the events but they do
not bubble.
I have created an event object using the code snip below ..
nsMouseEvent event;
event.eventStructType = NS_MOUSE_EVENT;
event.message = NS_MOUSE_LEFT_CLICK;
event.isShift = PR_FALSE;
event.isControl = PR_TRUE;
event.isAlt = PR_FALSE;
event.isMeta = PR_FALSE;
event.clickCount = 0;
event.widget = nsnull;
event.acceptActivation=1;
Now, I get an event receiver by QI'ing an element like and then get the
EventListenerManager on this inpElement ..
nsCOMPtr<nsIDOMEventReceiver> aReceiver =
do_QueryInterface(inpElement);
nsCOMPtr<nsIEventListenerManager> listenerManager;
aReceiver->GetListenerManager(getter_AddRefs(listenerManager));
nsCOMPtr<nsIDOMEventTarget> aEventTarget
= do_QueryInterface(inpElement);
nsCOMPtr<nsIDOMEvent> aDOMEvent;
I now try to simulate the event using this event listener manager. The event
gets simulated but the problem is that IT DOES NOT BUBBLE !.
listenerManager->HandleEvent(nsnull, &event,
getter_AddRefs(aDOMEvent),
aEventTarget,NS_EVENT_FLAG_INIT,&aEventStatus);
I want this event to bubble! Any hints what I may be doing wrong or what
more do I need to do?
Thanx,
Amlan.