src/hbwidgets/widgets/hbcombodropdown_p.cpp
changeset 30 80e4d18b72f5
parent 28 b7da29130b0e
--- a/src/hbwidgets/widgets/hbcombodropdown_p.cpp	Fri Sep 17 08:32:10 2010 +0300
+++ b/src/hbwidgets/widgets/hbcombodropdown_p.cpp	Mon Oct 04 00:38:12 2010 +0300
@@ -35,6 +35,8 @@
 #include <QGestureEvent>
 #include <QGraphicsSceneMouseEvent>
 
+#include <hbeffect.h>
+
 class HbComboDropDownPrivate : public HbWidgetPrivate
 {
 };
@@ -80,6 +82,15 @@
     comboPrivate->vkbClosed( );
 }
 
+#ifdef HB_EFFECTS
+void HbComboDropDown::dismissEffectFinished( HbEffect::EffectStatus status )
+{
+    Q_UNUSED( status );
+
+    setVisible( false );
+}
+#endif
+
 bool HbComboDropDown::eventFilter( QObject *obj, QEvent *event )
 {
     Q_UNUSED( obj );
@@ -100,8 +111,9 @@
                             if( !vkbOpened ) {
                                 //if vkb is not opened and dropdown is not clicked then dismiss drop down
                                 if( !( this->isUnderMouse( ) ) ) {
+                                    
                                     HbWidgetFeedback::triggered( this, Hb::InstantPopupClosed );
-                                    setVisible( false );
+                                    comboPrivate->showDismissEffect( );
                                     comboPrivate->q_ptr->setProperty("state","normal");
                                     backgroundPressed = true;
                                     accepted = true;
@@ -121,8 +133,8 @@
                                         //    static_cast< QGraphicsSceneMouseEvent * >( event );
                                         if( !( this->isUnderMouse( ) ) &&
                                             !vkbArea.contains( /*mouseEvent->scenePos( )*/ tapGesture->sceneStartPos() ) ) {
+                                            comboPrivate->showDismissEffect( );
                                             HbWidgetFeedback::triggered( this, Hb::InstantPopupClosed );
-                                            setVisible( false );
                                             comboPrivate->q_ptr->setProperty( "state", "normal" );
                                             backgroundPressed = true;
                                             accepted = true;