Fix T60101: vertex paint color sample
authorSebastian Parborg <zeddb>
Thu, 3 Jan 2019 21:02:17 +0000 (08:02 +1100)
committerCampbell Barton <ideasman42@gmail.com>
Thu, 3 Jan 2019 21:07:41 +0000 (08:07 +1100)
source/blender/editors/sculpt_paint/paint_image.c
source/blender/editors/sculpt_paint/paint_vertex.c

index 30efcd2cb9a3d99992b595f2f28242b6ae2324b3..b8ac4403e1dd67824430dd7f2b4935636484bcd1 100644 (file)
@@ -302,7 +302,7 @@ static bool image_paint_poll(bContext *C)
        return image_paint_poll_ex(C, true);
 }
 
-static bool image_paint_ignore_tool_poll(bContext *C)
+static bool image_paint_poll_ignore_tool(bContext *C)
 {
        return image_paint_poll_ex(C, false);
 }
@@ -1022,6 +1022,11 @@ static int sample_color_modal(bContext *C, wmOperator *op, const wmEvent *event)
        return OPERATOR_RUNNING_MODAL;
 }
 
+static bool sample_color_poll(bContext *C)
+{
+       return (image_paint_poll_ignore_tool(C) || vertex_paint_poll_ignore_tool(C));
+}
+
 void PAINT_OT_sample_color(wmOperatorType *ot)
 {
        /* identifiers */
@@ -1033,7 +1038,7 @@ void PAINT_OT_sample_color(wmOperatorType *ot)
        ot->exec = sample_color_exec;
        ot->invoke = sample_color_invoke;
        ot->modal = sample_color_modal;
-       ot->poll = image_paint_ignore_tool_poll;
+       ot->poll = sample_color_poll;
 
        /* flags */
        ot->flag = OPTYPE_REGISTER | OPTYPE_UNDO;
index f5c49c4b7e19a6cf5fe4ea62b39270601737d45c..f91c5f71b2f9f4e4fd3a7aa2898e5de5e6800cd0 100644 (file)
@@ -246,7 +246,7 @@ bool vertex_paint_poll(bContext *C)
 
 bool vertex_paint_poll_ignore_tool(bContext *C)
 {
-       return vertex_paint_poll_ex(C, true);
+       return vertex_paint_poll_ex(C, false);
 }
 
 bool weight_paint_mode_poll(bContext *C)