mirror of https://gitee.com/openkylin/peony.git
Fix new favotite folder emblem icons wrong issue, link to bug#118015.
This commit is contained in:
parent
20cc26d60a
commit
8b06c73373
|
@ -208,20 +208,18 @@ void IconViewDelegate::paint(QPainter *painter, const QStyleOptionViewItem &opti
|
|||
return;
|
||||
}
|
||||
auto info = item->info();
|
||||
if(info->uri().startsWith("favorite://")){/* 快速访问须特殊处理 */
|
||||
info = FileInfo::fromUri(FileUtils::getEncodedUri(FileUtils::getTargetUri(info->uri())));
|
||||
}
|
||||
//fix file emblemed icon not correct issue, link to bug#118015
|
||||
if (info->isEmptyInfo()) {
|
||||
FileInfoJob j(info);
|
||||
j.querySync();
|
||||
}
|
||||
|
||||
// draw color symbols
|
||||
int iLine = 0;
|
||||
int yoffset = 0;
|
||||
auto colors = info->getColors();
|
||||
|
||||
if (!isDragging || !view->selectedIndexes().contains(index)) {
|
||||
auto colors = info->getColors();
|
||||
//快速访问目录,颜色标记设置后更新不及时问题单独处理,修复bug#118015
|
||||
if(info->uri().startsWith("favorite://")){/* 快速访问须特殊处理 */
|
||||
auto matchInfo = FileInfo::fromUri(FileUtils::getEncodedUri(FileUtils::getTargetUri(info->uri())));
|
||||
colors = matchInfo->getColors();
|
||||
}
|
||||
|
||||
if(0 < colors.count())
|
||||
{
|
||||
const int MAX_LABEL_NUM = 3;
|
||||
|
|
|
@ -209,15 +209,18 @@ void IconViewIndexWidget::paintEvent(QPaintEvent *e)
|
|||
|
||||
//extra emblems
|
||||
auto info = m_info.lock();
|
||||
|
||||
// draw color symbols
|
||||
if(info->uri().startsWith("favorite://")){/* 快速访问须特殊处理 */
|
||||
info = FileInfo::fromUri(FileUtils::getEncodedUri(FileUtils::getTargetUri(info->uri())));
|
||||
}
|
||||
auto colors = info->getColors();
|
||||
auto lineSpacing = opt.fontMetrics.lineSpacing();
|
||||
int yoffset = 0;
|
||||
int iLine = 0;
|
||||
|
||||
// draw color symbols
|
||||
if(info->uri().startsWith("favorite://")){/* 快速访问须特殊处理 */
|
||||
//快速访问目录,颜色标记设置后更新不及时问题单独处理,修复bug#118015
|
||||
auto matchInfo = FileInfo::fromUri(FileUtils::getEncodedUri(FileUtils::getTargetUri(info->uri())));
|
||||
colors = matchInfo->getColors();
|
||||
}
|
||||
|
||||
if(0 < colors.count())
|
||||
{
|
||||
const int MAX_LABEL_NUM = 3;
|
||||
|
|
|
@ -69,15 +69,16 @@ void ListViewDelegate::paint(QPainter *painter, const QStyleOptionViewItem &opti
|
|||
auto view = qobject_cast<DirectoryView::ListView *>(parent());
|
||||
/* 此处以中文命名的文件保护箱标记实时同步还存在问题,是由于uri编码(尽管使用FileUtils::urlEncoded进行转换)与底层(info的uri)不匹配 */
|
||||
QString uri = index.data(Qt::UserRole).toString();
|
||||
if(uri.startsWith("favorite://"))/* 快速访问须特殊处理 */
|
||||
uri =FileUtils::getEncodedUri(FileUtils::getTargetUri(uri));
|
||||
auto info = FileInfo::fromUri(uri);
|
||||
//fix file emblemed icon not correct issue, link to bug#118015
|
||||
if (info->isEmptyInfo()) {
|
||||
FileInfoJob j(info);
|
||||
j.querySync();
|
||||
}
|
||||
auto colors = info->getColors();
|
||||
|
||||
if(uri.startsWith("favorite://")){/* 快速访问须特殊处理 */
|
||||
//快速访问目录,颜色标记设置后更新不及时问题单独处理,修复bug#118015
|
||||
uri =FileUtils::getEncodedUri(FileUtils::getTargetUri(uri));
|
||||
auto matchInfo = FileInfo::fromUri(uri);
|
||||
colors = matchInfo->getColors();
|
||||
}
|
||||
|
||||
if (index.column() == 0 && colors.count() >0) {
|
||||
if (!view->isDragging() || !view->selectionModel()->selectedIndexes().contains(index)) {
|
||||
int xoffset = 5;
|
||||
|
|
Loading…
Reference in New Issue