src/hbwidgets/widgets/hbcombobox_p.cpp
changeset 7 923ff622b8b9
parent 6 c3690ec91ef8
child 21 4633027730f5
child 34 ed14f46c0e55
--- a/src/hbwidgets/widgets/hbcombobox_p.cpp	Wed Jun 23 18:33:25 2010 +0300
+++ b/src/hbwidgets/widgets/hbcombobox_p.cpp	Tue Jul 06 14:36:53 2010 +0300
@@ -38,6 +38,8 @@
 #include <QSortFilterProxyModel>
 #include <QCompleter>
 #include <QItemSelectionModel>
+#include <QApplication>
+
 
 #ifdef HB_EFFECTS
 #include <hbeffect.h>
@@ -107,8 +109,6 @@
     HbStyle::setItemName( mButton, "combobox_button" );
 
     mButtonTouchAreaItem = q->style( )->createPrimitive( HbStyle::P_ComboBoxButton_toucharea, q );
-    static_cast<HbTouchArea*>( mButtonTouchAreaItem )->installEventFilter( q );
-    q->setHandlesChildEvents( true );
 
     static_cast<HbTouchArea*>( mButtonTouchAreaItem )->grabGesture( Qt::TapGesture );
 }
@@ -148,6 +148,10 @@
             mDropDown->mList->setModel( mModel );
             q->connect( mDropDown->mList, SIGNAL( activated( QModelIndex ) ), q,
                 SLOT( _q_textChanged( QModelIndex ) ) );
+            //send layout request so that geometries of list view item are updated
+            //and proper height is fetched in calculateListItemHeight
+            QEvent layoutEvent(QEvent::LayoutRequest);
+            QApplication::sendEvent(mDropDown->mList->contentWidget(), &layoutEvent);
         }
         if ( mCurrentIndex.isValid( ) ) {
             if( mDropDown->mList->model( ) != mModel ) {