Bug 520405 - [Glance] Dark theme is not applied to search panel
Change-Id: Ied40247b8c571cc48b4b08f4577ff58950785a48
diff --git a/bundles/org.eclipse.ui.glance/src/org/eclipse/ui/glance/internal/panels/PopupSearchDialog.java b/bundles/org.eclipse.ui.glance/src/org/eclipse/ui/glance/internal/panels/PopupSearchDialog.java
index bed63da..f51cc9b 100644
--- a/bundles/org.eclipse.ui.glance/src/org/eclipse/ui/glance/internal/panels/PopupSearchDialog.java
+++ b/bundles/org.eclipse.ui.glance/src/org/eclipse/ui/glance/internal/panels/PopupSearchDialog.java
@@ -24,7 +24,6 @@
import org.eclipse.swt.widgets.Display;
import org.eclipse.swt.widgets.Label;
import org.eclipse.swt.widgets.Shell;
-
import org.eclipse.ui.glance.panels.SearchPanel;
import org.eclipse.ui.glance.sources.Match;
import org.eclipse.ui.glance.utils.UIUtils;
@@ -207,8 +206,12 @@
return list;
}
+ private Color initialBackground;
+
public void setBackground(boolean found) {
- Color color = found ? getBackground() : BAD_COLOR;
+ if (initialBackground == null)
+ initialBackground = getBackgroundColor();
+ Color color = found ? initialBackground : BAD_COLOR;
applyBackgroundColor(color);
}
diff --git a/bundles/org.eclipse.ui.glance/src/org/eclipse/ui/glance/internal/panels/SearchDialog.java b/bundles/org.eclipse.ui.glance/src/org/eclipse/ui/glance/internal/panels/SearchDialog.java
index 87613db..9ddfc03 100644
--- a/bundles/org.eclipse.ui.glance/src/org/eclipse/ui/glance/internal/panels/SearchDialog.java
+++ b/bundles/org.eclipse.ui.glance/src/org/eclipse/ui/glance/internal/panels/SearchDialog.java
@@ -52,7 +52,6 @@
separator = createHorizontalSeparator(composite);
createInfoTextArea(composite);
- applyColors(composite);
applyFonts(composite);
return composite;
}
@@ -87,11 +86,6 @@
info.setText(text);
}
- protected void applyColors(final Composite composite) {
- applyForegroundColor(getForeground(), composite);
- applyBackgroundColor(getBackground(), composite);
- }
-
protected void applyFonts(final Composite composite) {
Dialog.applyDialogFont(composite);
@@ -163,6 +157,10 @@
return result;
}
+ protected Color getBackgroundColor() {
+ return titleArea.getBackground();
+ }
+
protected void applyBackgroundColor(final Color color) {
applyBackgroundColor(color, titleArea);
}
diff --git a/bundles/org.eclipse.ui.glance/src/org/eclipse/ui/glance/panels/SearchPanel.java b/bundles/org.eclipse.ui.glance/src/org/eclipse/ui/glance/panels/SearchPanel.java
index 4569b4d..463e8af 100644
--- a/bundles/org.eclipse.ui.glance/src/org/eclipse/ui/glance/panels/SearchPanel.java
+++ b/bundles/org.eclipse.ui.glance/src/org/eclipse/ui/glance/panels/SearchPanel.java
@@ -658,11 +658,12 @@
}
protected void setBackground(final boolean found) {
- title.setBackground(found ? GOOD_COLOR : BAD_COLOR);
+ if (initialBackground == null)
+ initialBackground = title.getBackground();
+ title.setBackground(found ? initialBackground : BAD_COLOR);
}
- protected static final Color GOOD_COLOR = Display.getDefault()
- .getSystemColor(SWT.COLOR_WHITE);
+ protected Color initialBackground;
protected static final Color BAD_COLOR = new Color(Display.getDefault(),
255, 102, 102);