Bug 531422 - FormToolkit.adapt should not change already set colors to
null

Change-Id: I3d3c32bdb0a6307290cf5bf73231b08c54c5d583
Signed-off-by: Till Brychcy <register.eclipse@brychcy.de>
diff --git a/bundles/org.eclipse.ui.forms/src/org/eclipse/ui/forms/widgets/FormToolkit.java b/bundles/org.eclipse.ui.forms/src/org/eclipse/ui/forms/widgets/FormToolkit.java
index 1b599de..2c933def 100644
--- a/bundles/org.eclipse.ui.forms/src/org/eclipse/ui/forms/widgets/FormToolkit.java
+++ b/bundles/org.eclipse.ui.forms/src/org/eclipse/ui/forms/widgets/FormToolkit.java
@@ -467,8 +467,12 @@
 	 */
 	public void adapt(Control control, boolean trackFocus, boolean trackKeyboard) {
 		checkDisposed();
-		control.setBackground(colors.getBackground());
-		control.setForeground(colors.getForeground());
+		if (colors.getBackground() != null) {
+			control.setBackground(colors.getBackground());
+		}
+		if (colors.getForeground() != null) {
+			control.setForeground(colors.getForeground());
+		}
 		if (control instanceof ExpandableComposite) {
 			ExpandableComposite ec = (ExpandableComposite) control;
 			if (ec.toggle != null) {
@@ -499,7 +503,9 @@
 	 */
 	public void adapt(Composite composite) {
 		checkDisposed();
-		composite.setBackground(colors.getBackground());
+		if (colors.getBackground() != null) {
+			composite.setBackground(colors.getBackground());
+		}
 		composite.addMouseListener(new MouseAdapter() {
 			@Override
 			public void mouseDown(MouseEvent e) {