From 790f17573d91dc4776dd15804969c63ec7d30c77 Mon Sep 17 00:00:00 2001
From: Thomas Hartmann <thomas.hartmann@qt.io>
Date: Thu, 11 May 2017 11:23:28 +0200
Subject: [PATCH] QmlDesigner: Handle missing icons

In the complex model we will not always have icons.
We keep 4 pixels for indentation.

Change-Id: I07b66d3846a36a73a2dcbe4910f2da895756ef07
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
---
 .../qmldesigner/components/navigator/nameitemdelegate.cpp     | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/src/plugins/qmldesigner/components/navigator/nameitemdelegate.cpp b/src/plugins/qmldesigner/components/navigator/nameitemdelegate.cpp
index 141159efcaf..a2149b5245f 100644
--- a/src/plugins/qmldesigner/components/navigator/nameitemdelegate.cpp
+++ b/src/plugins/qmldesigner/components/navigator/nameitemdelegate.cpp
@@ -107,9 +107,11 @@ NameItemDelegate::NameItemDelegate(QObject *parent, NavigatorTreeModel *treeMode
 static int drawIcon(QPainter *painter, const QStyleOptionViewItem &styleOption, const QModelIndex &modelIndex)
 {
     QIcon icon = modelIndex.data(Qt::DecorationRole).value<QIcon>();
-    int pixmapSize = 16;
+
+    const int pixmapSize = icon.isNull() ? 4 : 16;
 
     QPixmap pixmap = icon.pixmap(pixmapSize, pixmapSize);
+
     painter->drawPixmap(styleOption.rect.x() + 1 , styleOption.rect.y() + 2, pixmap);
 
     return pixmapSize;
-- 
GitLab