[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [40864] trunk/blender/source/blender/ editors/interface/interface_handlers.c: text editing: make jumping left/ right both act the same way (was skipping an extra char when jumping left).

Campbell Barton ideasman42 at gmail.com
Sun Oct 9 02:54:42 CEST 2011


Revision: 40864
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=40864
Author:   campbellbarton
Date:     2011-10-09 00:54:41 +0000 (Sun, 09 Oct 2011)
Log Message:
-----------
text editing: make jumping left/right both act the same way (was skipping an extra char when jumping left).

Modified Paths:
--------------
    trunk/blender/source/blender/editors/interface/interface_handlers.c

Modified: trunk/blender/source/blender/editors/interface/interface_handlers.c
===================================================================
--- trunk/blender/source/blender/editors/interface/interface_handlers.c	2011-10-09 00:45:26 UTC (rev 40863)
+++ trunk/blender/source/blender/editors/interface/interface_handlers.c	2011-10-09 00:54:41 UTC (rev 40864)
@@ -1393,7 +1393,7 @@
 	else {
 		if(direction) { /* right*/
 			if(jump) {
-				/* jump betweenn special characters (/,\,_,-, etc.),
+				/* jump between special characters (/,\,_,-, etc.),
 				 * look at function test_special_char() for complete
 				 * list of special character, ctr -> */
 				while(but->pos < len) {
@@ -1408,13 +1408,25 @@
 		}
 		else { /* left */
 			if(jump) {
-				/* jump betweenn special characters (/,\,_,-, etc.),
+
+				/* left only: compensate for index/change in direction */
+				if(but->pos > 0) {
+					but->pos--;
+				}
+
+				/* jump between special characters (/,\,_,-, etc.),
 				 * look at function test_special_char() for complete
 				 * list of special character, ctr -> */
 				while(but->pos > 0){
 					but->pos--;
 					if(!jump_all && test_special_char(str[but->pos])) break;
 				}
+
+				/* left only: compensate for index/change in direction */
+				if((but->pos != 0) && ABS(pos_prev - but->pos) > 1) {
+					but->pos++;
+				}
+
 			}
 			else {
 				if(but->pos>0) but->pos--;




More information about the Bf-blender-cvs mailing list