diff --git a/src/modules/colorPicker/ColorPickerUI/Behaviors/AppearAnimationBehavior.cs b/src/modules/colorPicker/ColorPickerUI/Behaviors/AppearAnimationBehavior.cs index cc4168a4ba..dbe87491b2 100644 --- a/src/modules/colorPicker/ColorPickerUI/Behaviors/AppearAnimationBehavior.cs +++ b/src/modules/colorPicker/ColorPickerUI/Behaviors/AppearAnimationBehavior.cs @@ -19,7 +19,6 @@ namespace ColorPicker.Behaviors private void AssociatedObject_Loaded(object sender, RoutedEventArgs e) { - Appear(); AssociatedObject.IsVisibleChanged += AssociatedObject_IsVisibleChanged; } diff --git a/src/modules/colorPicker/ColorPickerUI/Mouse/IMouseInfoProvider.cs b/src/modules/colorPicker/ColorPickerUI/Mouse/IMouseInfoProvider.cs index 317f88c5c6..f2766f5af5 100644 --- a/src/modules/colorPicker/ColorPickerUI/Mouse/IMouseInfoProvider.cs +++ b/src/modules/colorPicker/ColorPickerUI/Mouse/IMouseInfoProvider.cs @@ -19,5 +19,7 @@ namespace ColorPicker.Mouse event MouseUpEventHandler OnMouseDown; System.Windows.Point CurrentPosition { get; } + + Color CurrentColor { get; } } } diff --git a/src/modules/colorPicker/ColorPickerUI/Mouse/MouseInfoProvider.cs b/src/modules/colorPicker/ColorPickerUI/Mouse/MouseInfoProvider.cs index 2389c7c268..517ef40684 100644 --- a/src/modules/colorPicker/ColorPickerUI/Mouse/MouseInfoProvider.cs +++ b/src/modules/colorPicker/ColorPickerUI/Mouse/MouseInfoProvider.cs @@ -42,6 +42,8 @@ namespace ColorPicker.Mouse _mouseHook = new MouseHook(); _userSettings = userSettings; _userSettings.CopiedColorRepresentation.PropertyChanged += CopiedColorRepresentation_PropertyChanged; + _previousMousePosition = GetCursorPosition(); + _previousColor = GetPixelColor(_previousMousePosition); } public event EventHandler MouseColorChanged; @@ -60,6 +62,14 @@ namespace ColorPicker.Mouse } } + public Color CurrentColor + { + get + { + return _previousColor; + } + } + private void Timer_Tick(object sender, EventArgs e) { UpdateMouseInfo(); diff --git a/src/modules/colorPicker/ColorPickerUI/ViewModels/MainViewModel.cs b/src/modules/colorPicker/ColorPickerUI/ViewModels/MainViewModel.cs index a4fffec6bc..6d4249c52d 100644 --- a/src/modules/colorPicker/ColorPickerUI/ViewModels/MainViewModel.cs +++ b/src/modules/colorPicker/ColorPickerUI/ViewModels/MainViewModel.cs @@ -67,6 +67,7 @@ namespace ColorPicker.ViewModels if (mouseInfoProvider != null) { + SetColorDetails(mouseInfoProvider.CurrentColor); mouseInfoProvider.MouseColorChanged += Mouse_ColorChanged; mouseInfoProvider.OnMouseDown += MouseInfoProvider_OnMouseDown; mouseInfoProvider.OnMouseWheel += MouseInfoProvider_OnMouseWheel; @@ -132,9 +133,7 @@ namespace ColorPicker.ViewModels /// The new under the mouse cursor private void Mouse_ColorChanged(object sender, System.Drawing.Color color) { - ColorBrush = new SolidColorBrush(Color.FromArgb(color.A, color.R, color.G, color.B)); - ColorText = ColorRepresentationHelper.GetStringRepresentation(color, _userSettings.CopiedColorRepresentation.Value); - ColorName = ColorNameHelper.GetColorName(color); + SetColorDetails(color); } /// @@ -172,6 +171,13 @@ namespace ColorPicker.ViewModels return color.A + "|" + color.R + "|" + color.G + "|" + color.B; } + private void SetColorDetails(System.Drawing.Color color) + { + ColorBrush = new SolidColorBrush(Color.FromArgb(color.A, color.R, color.G, color.B)); + ColorText = ColorRepresentationHelper.GetStringRepresentation(color, _userSettings.CopiedColorRepresentation.Value); + ColorName = ColorNameHelper.GetColorName(color); + } + /// /// Tell the color picker that the user have used the mouse wheel ///