Merge remote-tracking branch 'origin/KDE/4.12'

This commit is contained in:
Frank Reininghaus 2013-12-06 01:36:42 +01:00
commit 2619cc1c3d
2 changed files with 15 additions and 6 deletions

View file

@ -99,11 +99,18 @@ QSizeF KStandardItemListWidgetInformant::itemSizeHint(int index, const KItemList
// to show all roles without horizontal clipping.
qreal maximumRequiredWidth = 0.0;
const QHash<QByteArray, QVariant> values = view->model()->data(index);
foreach (const QByteArray& role, view->visibleRoles()) {
const QString text = roleText(role, values);
const qreal requiredWidth = option.fontMetrics.width(text);
maximumRequiredWidth = qMax(maximumRequiredWidth, requiredWidth);
const QList<QByteArray>& visibleRoles = view->visibleRoles();
const bool showOnlyTextRole = (visibleRoles.count() == 1) && (visibleRoles.first() == "text");
if (showOnlyTextRole) {
maximumRequiredWidth = option.fontMetrics.width(itemText(index, view));
} else {
const QHash<QByteArray, QVariant> values = view->model()->data(index);
foreach (const QByteArray& role, view->visibleRoles()) {
const QString text = roleText(role, values);
const qreal requiredWidth = option.fontMetrics.width(text);
maximumRequiredWidth = qMax(maximumRequiredWidth, requiredWidth);
}
}
qreal width = option.padding * 4 + option.iconSize + maximumRequiredWidth;

View file

@ -1486,7 +1486,9 @@ void DolphinView::slotRoleEditingFinished(int index, const QByteArray& role, con
}
KonqOperations* op = KonqOperations::renameV2(this, oldUrl, newName);
if (op) {
if (op && !newNameExistsAlready) {
// Only connect the renamingFailed signal if there is no item with the new name
// in the model yet, see bug 328262.
connect(op, SIGNAL(renamingFailed(KUrl,KUrl)), SLOT(slotRenamingFailed(KUrl,KUrl)));
}
}