diff --git a/src/libs/qmljsdebugger/editor/abstractformeditortool.cpp b/src/libs/qmljsdebugger/editor/abstractformeditortool.cpp
index 88931850b14c397b7e53cc17a65d5aa076a24d92..d483056610fa1365892b2178a65c79e4f0c53594 100644
--- a/src/libs/qmljsdebugger/editor/abstractformeditortool.cpp
+++ b/src/libs/qmljsdebugger/editor/abstractformeditortool.cpp
@@ -179,12 +179,15 @@ QString AbstractFormEditorTool::titleForItem(QGraphicsItem *item)
         if (!objectStringId.isEmpty()) {
             constructedName = objectStringId + " (" + className + ")";
         } else {
-            if (!gfxObject->objectName().isEmpty())
+            if (!gfxObject->objectName().isEmpty()) {
                 constructedName = gfxObject->objectName() + " (" + className + ")";
+            } else {
+                constructedName = className;
+            }
         }
     }
 
-    return className;
+    return constructedName;
 }
 
 
diff --git a/src/libs/utils/crumblepath.cpp b/src/libs/utils/crumblepath.cpp
index b0b789764828b8d50cdf04a37be4aca4bfa0e2bf..a555baadbdf019285fe34cf9198e1bcf181c540b 100644
--- a/src/libs/utils/crumblepath.cpp
+++ b/src/libs/utils/crumblepath.cpp
@@ -126,7 +126,10 @@ void CrumblePathButton::paintEvent(QPaintEvent *)
         }
     }
     p.setPen(StyleHelper::panelTextColor());
-    p.drawText(QRectF(m_textPos.x(), 4, geom.width(), geom.height()), text());
+    QFontMetrics fm(p.font());
+    QString textToDraw = fm.elidedText(text(), Qt::ElideRight, geom.width() - m_textPos.x());
+
+    p.drawText(QRectF(m_textPos.x(), 4, geom.width(), geom.height()), textToDraw);
 }
 
 void CrumblePathButton::tintImages()