diff --git a/src/plugins/qmldesigner/components/propertyeditor/contextpanewidgetrectangle.cpp b/src/plugins/qmldesigner/components/propertyeditor/contextpanewidgetrectangle.cpp
index 3a976051db10f307147fea483624fa045256eae3..d38af8504fc479bf5f47e0b6045eebd9a34d6bd3 100644
--- a/src/plugins/qmldesigner/components/propertyeditor/contextpanewidgetrectangle.cpp
+++ b/src/plugins/qmldesigner/components/propertyeditor/contextpanewidgetrectangle.cpp
@@ -61,7 +61,7 @@ void ContextPaneWidgetRectangle::setProperties(QmlJS::PropertyReader *propertyRe
         ui->borderColorButton->setColor(propertyReader->readProperty("border.color").toString());
         m_hasBorder = true;
     } else {
-        ui->borderColorButton->setColor(QLatin1String("black"));
+        ui->borderColorButton->setColor(QLatin1String("transparent"));
     }
 
     if (propertyReader->hasProperty(QLatin1String("border.width")))
@@ -76,12 +76,13 @@ void ContextPaneWidgetRectangle::setProperties(QmlJS::PropertyReader *propertyRe
 
     if (m_hasGradient) {
         ui->colorGradient->setChecked(true);
-        ui->gradientLine->setEnabled(true);
-        ui->gradientLabel->setEnabled(true);
+        //ui->gradientLine->setEnabled(true);
+        //ui->gradientLabel->setEnabled(true);
         ui->gradientLine->setGradient(propertyReader->parseGradient("gradient"));
     } else {
-        ui->gradientLine->setEnabled(false);
-        ui->gradientLabel->setEnabled(false);
+        //ui->gradientLine->setEnabled(false);
+        //ui->gradientLabel->setEnabled(false);
+        setColor();
     }
 
     if (m_gradientTimer > 0) {
@@ -99,7 +100,7 @@ void ContextPaneWidgetRectangle::onBorderColorButtonToggled(bool flag)
     }
     ContextPaneWidget *parentContextWidget = qobject_cast<ContextPaneWidget*>(parentWidget());
     QPoint p = mapToGlobal(ui->borderColorButton->pos());
-    parentContextWidget->colorDialog()->setupColor(ui->borderColorButton->color());
+    parentContextWidget->colorDialog()->setupColor(ui->borderColorButton->convertedColor());
     p = parentContextWidget->colorDialog()->parentWidget()->mapFromGlobal(p);
     parentContextWidget->onShowColorDialog(flag, p);
 }
@@ -112,7 +113,7 @@ void ContextPaneWidgetRectangle::onColorButtonToggled(bool flag )
     }
     ContextPaneWidget *parentContextWidget = qobject_cast<ContextPaneWidget*>(parentWidget());
     QPoint p = mapToGlobal(ui->colorColorButton->pos());
-    parentContextWidget->colorDialog()->setupColor(ui->colorColorButton->color());
+    parentContextWidget->colorDialog()->setupColor(ui->colorColorButton->convertedColor());
     p = parentContextWidget->colorDialog()->parentWidget()->mapFromGlobal(p);
     parentContextWidget->onShowColorDialog(flag, p);
 }
@@ -231,4 +232,15 @@ void ContextPaneWidgetRectangle::changeEvent(QEvent *e)
     }
 }
 
+void ContextPaneWidgetRectangle::setColor()
+{
+    QLinearGradient gradient;
+    QGradientStops stops;
+    QColor color = ui->colorColorButton->convertedColor();
+    stops.append(QGradientStop(0, color));
+    stops.append(QGradientStop(1, color));
+    gradient.setStops(stops);
+    ui->gradientLine->setGradient(gradient);
+}
+
 } //QmlDesigner
diff --git a/src/plugins/qmldesigner/components/propertyeditor/contextpanewidgetrectangle.h b/src/plugins/qmldesigner/components/propertyeditor/contextpanewidgetrectangle.h
index 6dd3d7594f48bb403463f30b25995f4a9da8b65d..c61de005700b781dd520b5126e17384021cd4131 100644
--- a/src/plugins/qmldesigner/components/propertyeditor/contextpanewidgetrectangle.h
+++ b/src/plugins/qmldesigner/components/propertyeditor/contextpanewidgetrectangle.h
@@ -47,6 +47,7 @@ protected:
     void timerEvent(QTimerEvent *event);
 
 private:
+    void setColor();
     Ui::ContextPaneWidgetRectangle *ui;
     bool m_hasBorder;
     bool m_hasGradient;