[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [41147] trunk/blender/source/blender: fixes for unicode input, should work for operator textinput now.
Campbell Barton
ideasman42 at gmail.com
Thu Oct 20 13:18:58 CEST 2011
Revision: 41147
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=41147
Author: campbellbarton
Date: 2011-10-20 11:18:57 +0000 (Thu, 20 Oct 2011)
Log Message:
-----------
fixes for unicode input, should work for operator textinput now.
Modified Paths:
--------------
trunk/blender/source/blender/editors/curve/editfont.c
trunk/blender/source/blender/editors/interface/interface_handlers.c
trunk/blender/source/blender/windowmanager/intern/wm_event_system.c
Modified: trunk/blender/source/blender/editors/curve/editfont.c
===================================================================
--- trunk/blender/source/blender/editors/curve/editfont.c 2011-10-20 10:47:38 UTC (rev 41146)
+++ trunk/blender/source/blender/editors/curve/editfont.c 2011-10-20 11:18:57 UTC (rev 41147)
@@ -1289,7 +1289,7 @@
else if(event==BACKSPACEKEY)
ascii= 0;
- if(val && ascii) {
+ if(val && (ascii || evt->utf8_buf[0])) {
/* handle case like TAB (== 9) */
if( (ascii > 31 && ascii < 254 && ascii != 127) ||
(ascii==13) ||
Modified: trunk/blender/source/blender/editors/interface/interface_handlers.c
===================================================================
--- trunk/blender/source/blender/editors/interface/interface_handlers.c 2011-10-20 10:47:38 UTC (rev 41146)
+++ trunk/blender/source/blender/editors/interface/interface_handlers.c 2011-10-20 11:18:57 UTC (rev 41147)
@@ -1930,7 +1930,7 @@
break;
}
- if(event->ascii && (retval == WM_UI_HANDLER_CONTINUE)) {
+ if((event->ascii || event->utf8_buf[0]) && (retval == WM_UI_HANDLER_CONTINUE)) {
char ascii = event->ascii;
/* exception that's useful for number buttons, some keyboard
@@ -1939,7 +1939,7 @@
if(event->type == PADPERIOD && ascii == ',')
ascii = '.';
- if(event->utf8_buf[0] || 1) {
+ if(event->utf8_buf[0]) {
/* keep this printf until utf8 is well tested */
printf("%s: utf8 char '%s'\n", __func__, event->utf8_buf);
// strcpy(event->utf8_buf, "12345");
Modified: trunk/blender/source/blender/windowmanager/intern/wm_event_system.c
===================================================================
--- trunk/blender/source/blender/windowmanager/intern/wm_event_system.c 2011-10-20 10:47:38 UTC (rev 41146)
+++ trunk/blender/source/blender/windowmanager/intern/wm_event_system.c 2011-10-20 11:18:57 UTC (rev 41147)
@@ -1146,7 +1146,7 @@
/* the matching rules */
if(kmitype==KM_TEXTINPUT)
- if(ISTEXTINPUT(winevent->type) && winevent->ascii) return 1;
+ if(ISTEXTINPUT(winevent->type) && (winevent->ascii || winevent->utf8_buf[0])) return 1;
if(kmitype!=KM_ANY)
if(winevent->type!=kmitype) return 0;
More information about the Bf-blender-cvs
mailing list