remove double Ids
If an id was displayed in double (if bestName == bestId)
the bestId is now hidden.
Change-Id: I562d7b1812cda1594fca01cb5bf0d413f4cb478f
Reviewed-by: Andreas Traczyk <andreas.traczyk@savoirfairelinux.com>
diff --git a/callwidget.cpp b/callwidget.cpp
index 0043798..c5373e4 100644
--- a/callwidget.cpp
+++ b/callwidget.cpp
@@ -759,10 +759,20 @@
CallWidget::showIMOutOfCall(const QModelIndex& nodeIdx)
{
ui->contactMethodComboBox->clear();
+ QString name = nodeIdx.data(static_cast<int>(Ring::Role::Name)).toString();
+ QString number = nodeIdx.data(static_cast<int>(Ring::Role::Number)).toString();
+
ui->imNameLabel->setText(QString(tr("%1", "%1 is the contact username"))
- .arg(nodeIdx.data(static_cast<int>(Ring::Role::Name)).toString()));
- ui->imIdLabel->setText(QString(tr("%1", "%1 is the contact unique identifier"))
- .arg(nodeIdx.data(static_cast<int>(Ring::Role::Number)).toString()));
+ .arg(name));
+
+ if (name != number){
+ ui->imIdLabel->show();
+ ui->imIdLabel->setText(QString(tr("%1", "%1 is the contact unique identifier"))
+ .arg(number));
+ } else {
+ ui->imIdLabel->hide();
+ }
+
auto cmVector = RecentModel::instance().getContactMethods(nodeIdx);
ui->contactMethodComboBox->setVisible(cmVector.size() > 1);
foreach (const ContactMethod* cm, cmVector) {
diff --git a/callwidget.ui b/callwidget.ui
index 88a07fb..bc828c4 100644
--- a/callwidget.ui
+++ b/callwidget.ui
@@ -1082,6 +1082,9 @@
<property name="leftMargin">
<number>0</number>
</property>
+ <property name="bottomMargin">
+ <number>4</number>
+ </property>
<item>
<widget class="QLabel" name="imNameLabel">
<property name="sizePolicy">
diff --git a/smartlistdelegate.cpp b/smartlistdelegate.cpp
index ac38147..4c164e0 100644
--- a/smartlistdelegate.cpp
+++ b/smartlistdelegate.cpp
@@ -149,22 +149,24 @@
// Display the ID under the name
QString idStr = index.data(static_cast<int>(Ring::Role::Number)).value<QString>();
- pen.setColor(RingTheme::grey_);
- painter->setPen(pen);
- font.setItalic(true);
- font.setBold(false);
- painter->setFont(font);
- QFontMetrics fontMetrics(font);
- if (!idStr.isNull()){
- idStr = fontMetrics.elidedText(idStr, Qt::ElideRight, rectTexts.width()- sizeImage_ - effectiveComBarSize_ - dx_);
- painter->drawText(QRect(16 + rect.left() + dx_ + sizeImage_,
- rect.top() + rect.height()/7,
- rect.width(),
- rect.height()/2),
- Qt::AlignBottom | Qt::AlignLeft, idStr);
+ if (idStr != name.toString()){
+ pen.setColor(RingTheme::grey_);
+ painter->setPen(pen);
+ font.setItalic(true);
+ font.setBold(false);
+ painter->setFont(font);
+ QFontMetrics fontMetrics(font);
+ if (!idStr.isNull()){
+ idStr = fontMetrics.elidedText(idStr, Qt::ElideRight, rectTexts.width()- sizeImage_ - effectiveComBarSize_ - dx_);
+ painter->drawText(QRect(16 + rect.left() + dx_ + sizeImage_,
+ rect.top() + rect.height()/7,
+ rect.width(),
+ rect.height()/2),
+ Qt::AlignBottom | Qt::AlignLeft, idStr);
- } else {
- qDebug() << "This is not a Person";
+ } else {
+ qDebug() << "This is not a Person";
+ }
}
// Finally, either last interaction date or call state is displayed