diff options
| -rw-r--r-- | src/plugins/Ui/skinned/listwidgetdrawer.cpp | 2 | ||||
| -rw-r--r-- | src/qmmpui/columnmanager.cpp | 5 |
2 files changed, 5 insertions, 2 deletions
diff --git a/src/plugins/Ui/skinned/listwidgetdrawer.cpp b/src/plugins/Ui/skinned/listwidgetdrawer.cpp index 827639b91..1bbd33dfd 100644 --- a/src/plugins/Ui/skinned/listwidgetdrawer.cpp +++ b/src/plugins/Ui/skinned/listwidgetdrawer.cpp @@ -235,7 +235,7 @@ void ListWidgetDrawer::drawTrack(QPainter *painter, ListWidgetRow *row) offset += QmmpUiSettings::instance()->columnManager()->size(i); - if(i != QmmpUiSettings::instance()->columnManager()->count() - 1 && + if(QmmpUiSettings::instance()->columnManager()->count() > 1 && row->x[ListWidgetRow::TITLE] + offset < row->x[ListWidgetRow::EXTRA_STRING] - m_metrics->width("9")) { painter->drawLine(row->x[ListWidgetRow::TITLE] + offset - m_metrics->width("9")/2, row->rect.top(), diff --git a/src/qmmpui/columnmanager.cpp b/src/qmmpui/columnmanager.cpp index 331a8445c..f5ba0054e 100644 --- a/src/qmmpui/columnmanager.cpp +++ b/src/qmmpui/columnmanager.cpp @@ -27,7 +27,7 @@ ColumnManager::ColumnManager(QObject *parent) : { QSettings s (Qmmp::configFile(), QSettings::IniFormat); s.beginGroup("PlayList"); - int c = s.value("column_count", 1).toInt(); + int c = qMax(1, s.value("column_count", 1).toInt()); for(int i = 0; i < c; ++i) { s.beginGroup(QString("column%1").arg(i)); @@ -72,6 +72,9 @@ void ColumnManager::remove(int index) if(index < 0 || index >= m_columns.size()) qWarning("ColumnManager: index is out of range"); + if(m_columns.count() == 1) + return; + delete m_columns.takeAt(index).titleFormatter; sync(); emit removed(index); |
