diff --git a/accountitemdelegate.cpp b/accountitemdelegate.cpp index b5d2827128ba062333f920892653f7f83f42dd40..0465c55eb1e9aedfb19ec1077ac36a11d05c6d3e 100644 --- a/accountitemdelegate.cpp +++ b/accountitemdelegate.cpp @@ -87,15 +87,15 @@ AccountItemDelegate::paint(QPainter* painter, QPixmap::fromImage(index.data(AccountListModel::Role::Picture).value<QImage>()) .scaled(avatarSize_, avatarSize_, Qt::KeepAspectRatio, Qt::SmoothTransformation)); - // Presence indicator - QPainterPath outerCircle, innerCircle; - QPointF center(rectAvatar.right() - avatarSize_ / 6, (rectAvatar.bottom() - avatarSize_ / 6) + 1); - qreal outerCRadius = avatarSize_ / 6, innerCRadius = outerCRadius * 0.85; - outerCircle.addEllipse(center, outerCRadius, outerCRadius); - innerCircle.addEllipse(center, innerCRadius, innerCRadius); auto status = index.data(static_cast<int>(AccountListModel::Role::Status)).value<int>(); auto isPresent = Utils::toEnum<lrc::api::account::Status>(status) == lrc::api::account::Status::REGISTERED; + // Presence indicator if (isPresent) { + QPainterPath outerCircle, innerCircle; + QPointF center(rectAvatar.right() - avatarSize_ / 6, (rectAvatar.bottom() - avatarSize_ / 6) + 1); + qreal outerCRadius = avatarSize_ / 6, innerCRadius = outerCRadius * 0.75; + outerCircle.addEllipse(center, outerCRadius, outerCRadius); + innerCircle.addEllipse(center, innerCRadius, innerCRadius); painter->fillPath(outerCircle, Qt::white); painter->fillPath(innerCircle, RingTheme::presenceGreen_); } diff --git a/currentaccountcombobox.cpp b/currentaccountcombobox.cpp index 350fdab8e0e64ecbd144ba8582d7174dd0f8314f..31031c8f6309eafe4b1a5a24d608fb83b085accf 100644 --- a/currentaccountcombobox.cpp +++ b/currentaccountcombobox.cpp @@ -108,7 +108,7 @@ CurrentAccountComboBox::paintEvent(QPaintEvent* e) QPainterPath outerCircle, innerCircle; QPointF presenceCenter(40.0 + p.x(), 40.0); qreal outerCircleRadius = cellHeight_/6.5; - qreal innerCircleRadius = outerCircleRadius - 1; + qreal innerCircleRadius = outerCircleRadius * 0.75; outerCircle.addEllipse(presenceCenter, outerCircleRadius, outerCircleRadius); innerCircle.addEllipse(presenceCenter, innerCircleRadius, innerCircleRadius); painter.fillPath(outerCircle, Qt::white);