svn merge ^/trunk/blender -r40872:40890
[blender.git] / source / blender / editors / space_view3d / view3d_select.c
index 28f220cd6d005f6f738473837bf5d858454a643c..f30b20ba7d681ed8a043e1af015d21ce5b7af313 100644 (file)
@@ -1953,7 +1953,7 @@ void VIEW3D_OT_select_border(wmOperatorType *ot)
 
 /* much like facesel_face_pick()*/
 /* returns 0 if not found, otherwise 1 */
-static int vertsel_vert_pick(struct bContext *C, Mesh *me, const int mval[2], unsigned int *index, short rect)
+static int vertsel_vert_pick(struct bContext *C, Mesh *me, const int mval[2], unsigned int *index, int size)
 {
        ViewContext vc;
        view3d_set_viewcontext(C, &vc);
@@ -1961,12 +1961,12 @@ static int vertsel_vert_pick(struct bContext *C, Mesh *me, const int mval[2], un
        if (!me || me->totvert==0)
                return 0;
 
-       if (rect) {
+       if (size > 0) {
                /* sample rect to increase changes of selecting, so that when clicking
                   on an face in the backbuf, we can still select a vert */
 
                int dist;
-               *index = view3d_sample_backbuf_rect(&vc, mval, 3, 1, me->totvert+1, &dist,0,NULL, NULL);
+               *index = view3d_sample_backbuf_rect(&vc, mval, size, 1, me->totvert+1, &dist,0,NULL, NULL);
        }
        else {
                /* sample only on the exact position */
@@ -1988,7 +1988,8 @@ static int mouse_weight_paint_vertex_select(bContext *C, const int mval[2], shor
        Mesh* me= obact->data; /* already checked for NULL */
        unsigned int index = 0;
        MVert *mv;
-       if(vertsel_vert_pick(C, me, mval, &index, 1)) {
+
+       if(vertsel_vert_pick(C, me, mval, &index, 50)) {
                mv = me->mvert+index;
                if(extend) {
                        mv->flag ^= SELECT;