diff options
author | Campbell Barton <ideasman42@gmail.com> | 2019-01-18 01:31:39 +0300 |
---|---|---|
committer | Campbell Barton <ideasman42@gmail.com> | 2019-01-18 01:31:39 +0300 |
commit | 2757469824bbe98d943b42f57ff23782b97a3abf (patch) | |
tree | 8fcb55970a4e1e5b42605a245823076df1f3b195 /source/blender/editors/interface/interface_eyedropper_color.c | |
parent | 7a0cc955cc0b13e69412ff64b83bea1fcbbb9206 (diff) |
UI: only reset eyedropper on cancel when set
Diffstat (limited to 'source/blender/editors/interface/interface_eyedropper_color.c')
-rw-r--r-- | source/blender/editors/interface/interface_eyedropper_color.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/source/blender/editors/interface/interface_eyedropper_color.c b/source/blender/editors/interface/interface_eyedropper_color.c index 322d368dc27..9448585a563 100644 --- a/source/blender/editors/interface/interface_eyedropper_color.c +++ b/source/blender/editors/interface/interface_eyedropper_color.c @@ -71,6 +71,7 @@ typedef struct Eyedropper { int index; bool is_undo; + bool is_set; float init_col[3]; /* for resetting on cancel */ bool accum_start; /* has mouse been pressed */ @@ -212,6 +213,7 @@ static void eyedropper_color_set(bContext *C, Eyedropper *eye, const float col[3 } RNA_property_float_set_array(&eye->ptr, eye->prop, col_conv); + eye->is_set = true; RNA_property_update(C, &eye->ptr, eye->prop); } @@ -245,7 +247,9 @@ static void eyedropper_color_sample(bContext *C, Eyedropper *eye, int mx, int my static void eyedropper_cancel(bContext *C, wmOperator *op) { Eyedropper *eye = op->customdata; - eyedropper_color_set(C, eye, eye->init_col); + if (eye->is_set) { + eyedropper_color_set(C, eye, eye->init_col); + } eyedropper_exit(C, op); } |