[Bf-blender-cvs] [3a712632f50] blender2.8: Merge branch 'master' into blender2.8

Germano noreply at git.blender.org
Tue Jan 23 04:00:25 CET 2018


Commit: 3a712632f50875368eaccc7eaead573b732c8175
Author: Germano
Date:   Tue Jan 23 01:00:16 2018 -0200
Branches: blender2.8
https://developer.blender.org/rB3a712632f50875368eaccc7eaead573b732c8175

Merge branch 'master' into blender2.8

# Conflicts:
#	source/blender/editors/screen/screen_ops.c

===================================================================



===================================================================

diff --cc source/blender/editors/screen/screen_ops.c
index fcfee8dfb2c,2e5f93ff521..e1480dbe967
--- a/source/blender/editors/screen/screen_ops.c
+++ b/source/blender/editors/screen/screen_ops.c
@@@ -1875,12 -1809,54 +1830,54 @@@ static int area_split_modal(bContext *C
  	}
  
  	if (update_factor) {
- 		float fac = (float)(sd->delta + sd->origval - sd->origmin) / sd->origsize;
- 		RNA_float_set(op->ptr, "factor", fac);
+ 		const int dir = RNA_property_enum_get(op->ptr, prop_dir);
+ 
+ 		sd->delta = (dir == 'v') ? event->x - sd->origval : event->y - sd->origval;
+ 
+ 		if (sd->previewmode == 0) {
+ 			if (sd->do_snap) {
+ 				const int snap_loc = area_snap_calc_location(
+ 				        CTX_wm_screen(C), sd->delta, sd->origval, dir, sd->bigger, sd->smaller);
+ 				sd->delta = snap_loc - sd->origval;
+ 			}
+ 			area_move_apply_do(C, sd->delta, sd->origval, dir, sd->bigger, sd->smaller, false);
+ 		}
+ 		else {
+ 			if (sd->sarea) {
+ 				ED_area_tag_redraw(sd->sarea);
+ 			}
+ 			/* area context not set */
+ 			sd->sarea = BKE_screen_find_area_xy(CTX_wm_screen(C), SPACE_TYPE_ANY, event->x, event->y);
+ 
+ 			if (sd->sarea) {
+ 				ScrArea *sa = sd->sarea;
+ 				if (dir == 'v') {
+ 					sd->origsize = sa->winx;
+ 					sd->origmin = sa->totrct.xmin;
+ 				}
+ 				else {
+ 					sd->origsize = sa->winy;
+ 					sd->origmin = sa->totrct.ymin;
+ 				}
  
- 		if (sd->sarea) {
- 			ED_area_tag_redraw(sd->sarea);
+ 				if (sd->do_snap) {
+ 					sa->v1->editflag = sa->v2->editflag = sa->v3->editflag = sa->v4->editflag = 1;
+ 
+ 					const int snap_loc = area_snap_calc_location(
+ 					        CTX_wm_screen(C), sd->delta, sd->origval, dir, sd->origmin + sd->origsize, -sd->origmin);
+ 
+ 					sa->v1->editflag = sa->v2->editflag = sa->v3->editflag = sa->v4->editflag = 0;
+ 					sd->delta = snap_loc - sd->origval;
+ 				}
+ 
+ 				ED_area_tag_redraw(sd->sarea);
+ 			}
+ 
 -			CTX_wm_window(C)->screen->do_draw = true;
++			CTX_wm_screen(C)->do_draw = true;
  		}
+ 
+ 		float fac = (float)(sd->delta + sd->origval - sd->origmin) / sd->origsize;
+ 		RNA_float_set(op->ptr, "factor", fac);
  	}
  
  	return OPERATOR_RUNNING_MODAL;



More information about the Bf-blender-cvs mailing list