summaryrefslogtreecommitdiff
authoreilers <eilers>2002-11-28 11:50:57 (UTC)
committer eilers <eilers>2002-11-28 11:50:57 (UTC)
commitadc6c4f994dc38ff287cb03a73933816108ba47b (patch) (side-by-side diff)
tree7a07bb017ec7a0db0888c48b3092904ffc39ba9b
parent0d508bf39ad43aa06c9cd395dd382d8e00dfbf3a (diff)
downloadopie-adc6c4f994dc38ff287cb03a73933816108ba47b.zip
opie-adc6c4f994dc38ff287cb03a73933816108ba47b.tar.gz
opie-adc6c4f994dc38ff287cb03a73933816108ba47b.tar.bz2
Change of view caused jump to the first line of table->fixed
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--core/pim/addressbook/abview.cpp6
1 files changed, 3 insertions, 3 deletions
diff --git a/core/pim/addressbook/abview.cpp b/core/pim/addressbook/abview.cpp
index 3af7663..0f4bd5f 100644
--- a/core/pim/addressbook/abview.cpp
+++ b/core/pim/addressbook/abview.cpp
@@ -390,68 +390,68 @@ bool AbView::contactCompare( const OContact &cnt, int category )
int i;
for ( i = 0; i < int(cats.count()); i++ ) {
qWarning("Comparing %d with %d",cats[i],category );
if ( cats[i] == category ) {
returnMe = true;
break;
}
}
}
qWarning ("Return: %d", returnMe);
return returnMe;
}
// In Some rare cases we have to update all lists..
void AbView::updateListinViews()
{
m_abTable -> setContacts( m_list );
m_ablabel -> setContacts( m_list );
}
void AbView::updateView()
{
qWarning("AbView::updateView()");
- // Feed all views with new lists
- updateListinViews();
-
if ( m_viewStack -> visibleWidget() ){
m_viewStack -> visibleWidget() -> clearFocus();
}
// If we switching the view, we have to store some information
if ( m_list.count() ){
switch ( (int) m_prev_View ) {
case TableView:
m_curr_Contact = m_abTable -> currentEntry_UID();
break;
case CardView:
m_curr_Contact = m_ablabel -> currentEntry_UID();
break;
}
}else
m_curr_Contact = 0;
+ // Feed all views with new lists
+ updateListinViews();
+
// Inform the world that the view is changed
if ( m_curr_View != m_prev_View )
emit signalViewSwitched ( (int) m_curr_View );
m_prev_View = m_curr_View;
// Switch to new View
switch ( (int) m_curr_View ) {
case TableView:
m_abTable -> setChoiceSelection( m_orderedFields );
if ( m_curr_Contact != 0 )
m_abTable -> selectContact ( m_curr_Contact );
m_abTable -> setFocus();
break;
case CardView:
if ( m_curr_Contact != 0 )
m_ablabel -> selectContact( m_curr_Contact );
m_ablabel -> setFocus();
break;
}
// Raise the current View
m_viewStack -> raiseWidget( m_curr_View );
}