stb_textedit/stb_text_locate_coord:

fix cursor position in the "shouldn't happen, but if it does, fall through to end-of-line case" case (`i=0` causes problems with the return values in this case)
pull/293/head
Hansi Raber 2016-04-29 04:45:55 +02:00
parent e2505ba00c
commit f710c23bf7
1 changed files with 2 additions and 3 deletions

View File

@ -417,10 +417,9 @@ static int stb_text_locate_coord(STB_TEXTEDIT_STRING *str, float x, float y)
// check if it's before the end of the line
if (x < r.x1) {
// search characters in row for one that straddles 'x'
k = i;
prev_x = r.x0;
for (i=0; i < r.num_chars; ++i) {
float w = STB_TEXTEDIT_GETWIDTH(str, k, i);
for (k=0; k < r.num_chars; ++k) {
float w = STB_TEXTEDIT_GETWIDTH(str, i, k);
if (x < prev_x+w) {
if (x < prev_x+w/2)
return k+i;