355 //if scrolling is going on, it need to be stopped immediately when user touches down |
355 //if scrolling is going on, it need to be stopped immediately when user touches down |
356 if (aPointerEvent.iType == TPointerEvent::EButton1Down && m_webview->viewIsScrolling()) { |
356 if (aPointerEvent.iType == TPointerEvent::EButton1Down && m_webview->viewIsScrolling()) { |
357 WebScrollingDeceleratorGH* scrollDecelGH = m_webview->pageScrollHandler()->ScrollingDeceleratorGH(); |
357 WebScrollingDeceleratorGH* scrollDecelGH = m_webview->pageScrollHandler()->ScrollingDeceleratorGH(); |
358 if(scrollDecelGH) { |
358 if(scrollDecelGH) { |
359 scrollDecelGH->cancelDecel(); |
359 scrollDecelGH->cancelDecel(); |
|
360 m_webview->setViewIsScrolling(false); |
360 } |
361 } |
361 } |
362 } |
362 |
363 |
363 #ifdef BRDO_USE_GESTURE_HELPER |
364 #ifdef BRDO_USE_GESTURE_HELPER |
364 m_gestureInterface->HandlePointerEventL(aPointerEvent); |
365 m_gestureInterface->HandlePointerEventL(aPointerEvent); |
413 TPoint nodePoint; |
414 TPoint nodePoint; |
414 |
415 |
415 Element* eventNode = frm->document()->elementFromPoint(pt.iX, pt.iY); |
416 Element* eventNode = frm->document()->elementFromPoint(pt.iX, pt.iY); |
416 |
417 |
417 if (m_isHighlighted){ |
418 if (m_isHighlighted){ |
418 dehighlight(); |
419 dehighlight(pos); |
419 } |
420 } |
420 |
421 |
421 m_highlightedNode = NULL; |
422 m_highlightedNode = NULL; |
422 |
423 |
423 Node* retNode = 0; |
424 Node* retNode = 0; |
424 frm->bridge()->getTypeFromElement(eventNode, elType, elRect, retNode); |
425 frm->bridge()->getTypeFromElement(eventNode, elType, elRect, retNode); |
535 |
536 |
536 |
537 |
537 //----------------------------------------------------------------------------- |
538 //----------------------------------------------------------------------------- |
538 // WebPointerEventHandler::deHighlight |
539 // WebPointerEventHandler::deHighlight |
539 //----------------------------------------------------------------------------- |
540 //----------------------------------------------------------------------------- |
540 void WebPointerEventHandler::dehighlight() |
541 void WebPointerEventHandler::dehighlight(const TPoint &aPoint) |
541 { |
542 { |
542 // send dehighlight event to engine by passing -1, -1 |
543 // m_highlightPos should be (-1, -1). |
543 // sending any other pointer value may result in highligh of other links |
|
544 m_highlightPos = TPoint(-1, -1); |
544 m_highlightPos = TPoint(-1, -1); |
545 m_isHighlighted = EFalse; |
545 m_isHighlighted = EFalse; |
546 |
546 |
547 Frame* frm = m_webview->page()->focusController()->focusedOrMainFrame(); |
547 Frame* frm = m_webview->page()->focusController()->focusedOrMainFrame(); |
548 m_webview->sendMouseEventToEngine(TPointerEvent::EMove, m_highlightPos, frm); |
548 m_webview->sendMouseEventToEngine(TPointerEvent::EMove, aPoint, frm); |
549 |
549 |
550 |
550 |
551 m_highlightedNode = NULL; |
551 m_highlightedNode = NULL; |
552 |
552 |
553 m_webview->syncRepaint(); |
553 m_webview->syncRepaint(); |
596 m_buttonDownTimer.stop(); |
596 m_buttonDownTimer.stop(); |
597 |
597 |
598 Frame* coreFrame = core(m_webview->mainFrame()); |
598 Frame* coreFrame = core(m_webview->mainFrame()); |
599 TPointerEvent event; |
599 TPointerEvent event; |
600 |
600 |
|
601 if (!IS_NAVIGATION_NONE) { |
|
602 m_webview->page()->chrome()->client()->setElementVisibilityChanged(false); |
|
603 } |
|
604 |
601 TBrCtlDefs::TBrCtlElementType elType = highlitableElement(); |
605 TBrCtlDefs::TBrCtlElementType elType = highlitableElement(); |
602 |
606 |
603 if (!isHighlitableElement(elType)) { |
607 if (!isHighlitableElement(elType)) { |
604 elType = TBrCtlDefs::EElementNone; |
608 elType = TBrCtlDefs::EElementNone; |
605 } |
609 } |