Revision: 6233
Author: nogu.dev
Date: Sat Mar 6 15:42:04 2010
Log: * qt4/candwin/qt4.cpp
- (CandidateWindow::CandidateWindow, CandidateWindow::strParse,
CandidateWindow::setIndex): Disable auto scroll in table widget.
This commit is a true fix for a bug in selecting a cell
and also removes the workaround added in r6217 and r6225.
* qt4/immodule/candidatewindow.cpp
- (CandidateWindow::CandidateWindow, CandidateWindow::setIndex,
CandidateWindow::setIndexInPage, CandidateWindow::shiftPage): Ditto.
http://code.google.com/p/uim/source/detail?r=6233
Modified:
/trunk/qt4/candwin/qt4.cpp
/trunk/qt4/immodule/candidatewindow.cpp
=======================================
--- /trunk/qt4/candwin/qt4.cpp Fri Mar 5 06:02:37 2010
+++ /trunk/qt4/candwin/qt4.cpp Sat Mar 6 15:42:04 2010
@@ -90,6 +90,7 @@
cList->verticalHeader()->hide();
cList->setHorizontalScrollBarPolicy( Qt::ScrollBarAlwaysOff );
cList->setVerticalScrollBarPolicy( Qt::ScrollBarAlwaysOff );
+ cList->setAutoScroll( false );
cList->setShowGrid( false );
cList->setMinimumWidth( MIN_CAND_WIDTH );
connect( cList, SIGNAL( cellClicked( int, int ) ),
@@ -421,7 +422,6 @@
void CandidateWindow::slotCandidateSelected( int row )
{
- cList->scrollToItem( cList->item( row, 0 ) );
candidateIndex = ( pageIndex * displayLimit ) + row;
// write message
@@ -570,7 +570,6 @@
{
cList->clearSelection();
cList->selectRow( pos );
- cList->scrollToItem( cList->item( pos, 0 ) );
}
}
else
=======================================
--- /trunk/qt4/immodule/candidatewindow.cpp Fri Mar 5 06:02:52 2010
+++ /trunk/qt4/immodule/candidatewindow.cpp Sat Mar 6 15:42:04 2010
@@ -80,6 +80,7 @@
cList->verticalHeader()->hide();
cList->setHorizontalScrollBarPolicy( Qt::ScrollBarAlwaysOff );
cList->setVerticalScrollBarPolicy( Qt::ScrollBarAlwaysOff );
+ cList->setAutoScroll( false );
cList->setShowGrid( false );
cList->setMinimumWidth( MIN_CAND_WIDTH );
connect( cList, SIGNAL( cellClicked( int, int ) ),
@@ -369,7 +370,6 @@
{
cList->clearSelection();
cList->selectRow( pos );
- cList->scrollToItem( cList->item( pos, 0 ) );
}
}
else
@@ -391,7 +391,6 @@
void CandidateWindow::slotCandidateSelected( int row )
{
- cList->scrollToItem( cList->item( row, 0 ) );
candidateIndex = ( pageIndex * displayLimit ) + row;
if ( ic && ic->uimContext() )
uim_set_candidate_index( ic->uimContext(), candidateIndex );
@@ -426,7 +425,6 @@
cList->clearSelection();
int idx = displayLimit ? candidateIndex % displayLimit :
candidateIndex;
cList->selectRow( idx );
- cList->scrollToItem( cList->item( idx, 0 ) );
}
if ( ic && ic->uimContext() && candidateIndex != -1 )
uim_set_candidate_index( ic->uimContext(), candidateIndex );