diff -r c3690ec91ef8 -r 923ff622b8b9 src/hbinput/inputwidgets/hbinputsmileypicker.cpp --- a/src/hbinput/inputwidgets/hbinputsmileypicker.cpp Wed Jun 23 18:33:25 2010 +0300 +++ b/src/hbinput/inputwidgets/hbinputsmileypicker.cpp Tue Jul 06 14:36:53 2010 +0300 @@ -38,6 +38,11 @@ #include #include +const int HbLandscapeRows = 3; +const int HbLandscapeColumns = 7; +const int HbPortraitRows = 4; +const int HbPortraitColumns = 5; + /// @cond class HbInputSmileyPickerPrivate: public HbDialogPrivate @@ -59,14 +64,14 @@ HbInputSmileyPickerPrivate::HbInputSmileyPickerPrivate(int rows, int columns) : mView(0), mModel(0) { + Q_UNUSED(rows); + Q_UNUSED(columns); Q_Q(HbInputSmileyPicker); // we should make sure that it comes above vkb setPriority(HbPopupPrivate::VirtualKeyboard + 1); // create a view and set the rows and columns. mView = new HbGridView(q); - mView->setRowCount(rows); - mView->setColumnCount(columns); mView->setScrollDirections(Qt::Horizontal); mView->setHorizontalScrollBarPolicy(HbScrollArea::ScrollBarAsNeeded); mModel = new QStandardItemModel(q); @@ -94,7 +99,7 @@ if (!hidingInProgress) { HbIcon smileyIcon = index.model()->data(index, Qt::DecorationRole).value(); emit q->selected(smileyIcon.iconName()); - q->hide(); + q->close(); } } @@ -122,6 +127,18 @@ setFlag(QGraphicsItem::ItemIsPanel, true); setActive(false); + if (!rows || !columns) { + if (mainWindow()->orientation() == Qt::Horizontal) { + rows = HbLandscapeRows; + columns = HbLandscapeColumns; + } else { + rows = HbPortraitRows; + columns = HbPortraitColumns; + } + } + d->mView->setRowCount(rows); + d->mView->setColumnCount(columns); + // set dialog properties setFocusPolicy(Qt::ClickFocus); setDismissPolicy(TapAnywhere);