diff --git a/src/plugins/qmljseditor/qmljscomponentfromobjectdef.cpp b/src/plugins/qmljseditor/qmljscomponentfromobjectdef.cpp
index 85c5d679c6042ef11b3d2dc65573f02d0f4f2a67..0d21a6101a5c78040b4df2c78cee72c5d4fd9dcb 100644
--- a/src/plugins/qmljseditor/qmljscomponentfromobjectdef.cpp
+++ b/src/plugins/qmljseditor/qmljscomponentfromobjectdef.cpp
@@ -46,8 +46,23 @@ using namespace QmlJSEditor::Internal;
 
 namespace {
 
+static QString toString(Statement *statement)
+{
+    ExpressionStatement *expStmt = cast<ExpressionStatement *>(statement);
+    if (!expStmt)
+        return QString::null;
+    if (IdentifierExpression *idExp = cast<IdentifierExpression *>(expStmt->expression)) {
+        return idExp->name->asString();
+    } else if (StringLiteral *strExp = cast<StringLiteral *>(expStmt->expression)) {
+        return strExp->value->asString();
+    }
+    return QString::null;
+}
+
 static QString getIdProperty(UiObjectDefinition *def)
 {
+    QString objectName;
+
     if (def && def->initializer) {
         for (UiObjectMemberList *iter = def->initializer->members; iter; iter = iter->next) {
             if (UiScriptBinding *script = cast<UiScriptBinding*>(iter->member)) {
@@ -56,22 +71,16 @@ static QString getIdProperty(UiObjectDefinition *def)
                 if (script->qualifiedId->next)
                     continue;
                 if (script->qualifiedId->name) {
-                    if (script->qualifiedId->name->asString() == QLatin1String("id")) {
-                        ExpressionStatement *expStmt = cast<ExpressionStatement *>(script->statement);
-                        if (!expStmt)
-                            continue;
-                        if (IdentifierExpression *idExp = cast<IdentifierExpression *>(expStmt->expression)) {
-                            return idExp->name->asString();
-                        } else if (StringLiteral *strExp = cast<StringLiteral *>(expStmt->expression)) {
-                            return strExp->value->asString();
-                        }
-                    }
+                    if (script->qualifiedId->name->asString() == QLatin1String("id"))
+                        return toString(script->statement);
+                    if (script->qualifiedId->name->asString() == QLatin1String("objectName"))
+                        objectName = toString(script->statement);
                 }
             }
         }
     }
 
-    return QString();
+    return objectName;
 }
 
 class Operation: public QmlJSQuickFixOperation
@@ -90,7 +99,7 @@ public:
 
         if (m_componentName.isEmpty()) {
             setDescription(QCoreApplication::translate("QmlJSEditor::ComponentFromObjectDef",
-                                                       "Move Component into separate file'"));
+                                                       "Move Component into separate file"));
         } else {
             m_componentName[0] = m_componentName.at(0).toUpper();
             setDescription(QCoreApplication::translate("QmlJSEditor::ComponentFromObjectDef",