diff options
author | Lluis Sanchez <llsan@microsoft.com> | 2018-04-13 12:31:45 +0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-04-13 12:31:45 +0300 |
commit | 7774db2137e046629766c3001e267d09f6510dfe (patch) | |
tree | 7ec874bf901971fc848d53103047a17ee2e12f23 /main | |
parent | d555bbd497995cb053ba270ee3a2e75ac5e01187 (diff) | |
parent | 330e8f45ee77636e0625a5d88aa56abe945dd1e8 (diff) |
Merge pull request #4531 from mono/fix529478-editor-search-marker-fallback-color
[529478][Editor] Fix search marker fallback color
Diffstat (limited to 'main')
3 files changed, 15 insertions, 9 deletions
diff --git a/main/src/addins/MonoDevelop.SourceEditor2/MonoDevelop.SourceEditor.QuickTasks/QuickTaskOverviewMode.cs b/main/src/addins/MonoDevelop.SourceEditor2/MonoDevelop.SourceEditor.QuickTasks/QuickTaskOverviewMode.cs index 6ee7b824f5..aba38914eb 100644 --- a/main/src/addins/MonoDevelop.SourceEditor2/MonoDevelop.SourceEditor.QuickTasks/QuickTaskOverviewMode.cs +++ b/main/src/addins/MonoDevelop.SourceEditor2/MonoDevelop.SourceEditor.QuickTasks/QuickTaskOverviewMode.cs @@ -900,15 +900,11 @@ namespace MonoDevelop.SourceEditor.QuickTasks void DrawSearchResults (Cairo.Context cr, IndicatorDrawingState state, int i) { - var color = SyntaxHighlightingService.GetColor (TextEditor.EditorTheme, EditorThemeColors.FindHighlight); - if (i == state.MainSelection) { - // TODO: EditorTheme does that look ok ? - if (HslColor.Brightness (color) < 0.5) { - color = color.AddLight (0.1); - } else { - color = color.AddLight (-0.1); - } - } + bool isSelected = i == state.MainSelection; + var color = SyntaxHighlightingService.GetColor (TextEditor.EditorTheme, isSelected ? EditorThemeColors.Selection : EditorThemeColors.FindHighlight); + if (Math.Abs (HslColor.Brightness (color) - HslColor.Brightness (SyntaxHighlightingService.GetColor (TextEditor.EditorTheme, EditorThemeColors.Background))) < 0.1) + color = isSelected ? Styles.Editor.SearchMarkerSelectedFallbackColor : Styles.Editor.SearchMarkerFallbackColor; + cr.SetSourceColor (color); cr.Rectangle (barPadding, state.SearchResultIndicators[i], Allocation.Width - barPadding * 2, 2); cr.Fill (); diff --git a/main/src/core/MonoDevelop.Ide/MonoDevelop.Components/HslColor.cs b/main/src/core/MonoDevelop.Ide/MonoDevelop.Components/HslColor.cs index b0648b130f..9d5fcdf600 100644 --- a/main/src/core/MonoDevelop.Ide/MonoDevelop.Components/HslColor.cs +++ b/main/src/core/MonoDevelop.Ide/MonoDevelop.Components/HslColor.cs @@ -129,6 +129,11 @@ namespace MonoDevelop.Components return new Xwt.Drawing.Color (r, g, b, hsl.Alpha); } + public static implicit operator HslColor (Xwt.Drawing.Color color) + { + return new HslColor (color.Red, color.Green, color.Blue, color.Alpha); + } + public static implicit operator HslColor (Color color) { return new HslColor (color); diff --git a/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Gui/Styles.cs b/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Gui/Styles.cs index 6d72331346..97c9acf0ef 100644 --- a/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Gui/Styles.cs +++ b/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.Gui/Styles.cs @@ -271,6 +271,8 @@ namespace MonoDevelop.Ide.Gui public static Color SmartTagMarkerColorLight { get; internal set; } public static Color SmartTagMarkerColorDark { get; internal set; } public static Color SearchErrorForegroundColor { get; internal set; } + public static Color SearchMarkerFallbackColor { get; internal set; } + public static Color SearchMarkerSelectedFallbackColor { get; internal set; } } public static class KeyBindingsPanel @@ -431,6 +433,9 @@ namespace MonoDevelop.Ide.Gui Editor.SmartTagMarkerColorLight = Color.FromName ("#ff70fe").WithAlpha (.5); Editor.SmartTagMarkerColorDark = Color.FromName ("#ffffff").WithAlpha (.5); Editor.SearchErrorForegroundColor = ErrorForegroundColor; + Editor.SearchMarkerFallbackColor = Color.FromName ("#f3da2d"); + // TODO: FINAL COLOR! + Editor.SearchMarkerSelectedFallbackColor = Color.FromName ("#ff00ff"); // Key Bindings Preferences |