X-Git-Url: http://git.cinelerra-gg.org/git/?a=blobdiff_plain;f=cinelerra-5.1%2Fguicast%2Fbctextbox.C;h=2a34c18096952024b3c7c5fa9eb1a40a8432843c;hb=d348518c261d543e12282d516768d4f446434a42;hp=bdbe6040e51cf63939c1e1a1464c567ceccf941c;hpb=9d832a1fff11b11aaa1108c460690ed05e2bdc05;p=goodguy%2Fhistory.git diff --git a/cinelerra-5.1/guicast/bctextbox.C b/cinelerra-5.1/guicast/bctextbox.C index bdbe6040..2a34c180 100644 --- a/cinelerra-5.1/guicast/bctextbox.C +++ b/cinelerra-5.1/guicast/bctextbox.C @@ -191,8 +191,9 @@ int BC_TextBox::tstrlen() int BC_TextBox::tstrcmp(const char *cp) { - if( !tsize ) return strcmp(text, cp); - return strncmp(text, cp, tsize); + const char *tp = get_text(); + if( !tsize ) return strcmp(tp, cp); + return strncmp(tp, cp, tsize); } char *BC_TextBox::tstrcpy(const char *cp) @@ -401,9 +402,9 @@ void BC_TextBox::set_suggestions(ArrayList *suggestions, int column) // Show the highlighted text if( suggestions->size() == 1 ) { highlight_letter1 = wtext_update(); - text_update(wtext,wlen, text,tsize); + int len = text_update(wtext,wlen, text,tsize); char *current_suggestion = suggestions->get(0); - int col = highlight_letter1 - suggestion_column; + int col = len - suggestion_column; if( col < 0 ) col = 0; char *cur = current_suggestion + col; tstrcat(cur); @@ -2077,6 +2078,7 @@ void BC_TextBox::paste_selection(int clipboard_num) len = BC_Resources::encode(BC_Resources::encoding, BC_Resources::wide_encoding, cstring,len, (char *)wstring,(len+1)*sizeof(wchar_t)) / sizeof(wchar_t); insert_text(wstring, len); + last_keypress = 0; } }