From d10bf294934ed670accb99bdcd6a0257d41ba264 Mon Sep 17 00:00:00 2001
From: Filippo Scognamiglio <flscogna@gmail.com>
Date: Tue, 30 Dec 2014 10:25:33 +0100
Subject: [PATCH] Fix bad behaving color dialog on some platforms.

---
 app/qml/ColorButton.qml         | 12 +++++++-----
 app/qml/SettingsTerminalTab.qml |  4 ++--
 2 files changed, 9 insertions(+), 7 deletions(-)

diff --git a/app/qml/ColorButton.qml b/app/qml/ColorButton.qml
index 3c1eb60..3b9e1b9 100644
--- a/app/qml/ColorButton.qml
+++ b/app/qml/ColorButton.qml
@@ -22,8 +22,10 @@ import QtQuick 2.2
 import QtQuick.Dialogs 1.1
 
 Item {
+    id: rootItem
+
     signal colorSelected (color color)
-    property color button_color
+    property color color
     property string name
 
     ColorDialog {
@@ -33,13 +35,13 @@ Item {
         visible: false
 
         //This is a workaround to a Qt 5.2 bug.
-        onCurrentColorChanged: colorDialog.color = colorDialog.currentColor;
-        onAccepted: colorSelected(color)
+        onColorChanged: if (Qt.platform.os !== "osx") colorSelected(color)
+        onAccepted: if (Qt.platform.os === "osx") colorSelected(color)
     }
     Rectangle{
         anchors.fill: parent
         radius: 10
-        color: button_color
+        color: rootItem.color
         border.color: "black"
         Glossy {}
         Rectangle {
@@ -52,7 +54,7 @@ Item {
         Text{
             anchors.centerIn: parent
             z: parent.z + 1
-            text: name + ":  " + button_color
+            text: name + ":  " + rootItem.color
         }
     }
     MouseArea{
diff --git a/app/qml/SettingsTerminalTab.qml b/app/qml/SettingsTerminalTab.qml
index 83f338d..439ee8e 100644
--- a/app/qml/SettingsTerminalTab.qml
+++ b/app/qml/SettingsTerminalTab.qml
@@ -125,14 +125,14 @@ Tab{
                         height: 50
                         Layout.fillWidth: true
                         onColorSelected: appSettings._fontColor = color;
-                        button_color: appSettings._fontColor
+                        color: appSettings._fontColor
                     }
                     ColorButton{
                         name: qsTr("Background")
                         height: 50
                         Layout.fillWidth: true
                         onColorSelected: appSettings._backgroundColor = color;
-                        button_color: appSettings._backgroundColor
+                        color: appSettings._backgroundColor
                     }
                 }
             }