Revision: 7265
Author: nogu.dev
Date: Fri Aug 12 17:55:44 2011
Log: * Merge r7264 from trunk.
http://code.google.com/p/uim/source/detail?r=7265
Modified:
/branches/1.7/qt4/immodule/qtextutil.cpp
=======================================
--- /branches/1.7/qt4/immodule/qtextutil.cpp Fri Aug 12 03:06:40 2011
+++ /branches/1.7/qt4/immodule/qtextutil.cpp Fri Aug 12 17:55:44 2011
@@ -932,10 +932,10 @@
& ( ~UTextExtent_Line | ~UTextExtent_Full ) ) )
return -1;
}
- latter_del_end = len + preedit_len;
+ latter_del_end = len;
if ( latter_req_len >= 0 ) {
if ( following_len > latter_req_len )
- latter_del_end = precedence_len + preedit_len +
latter_req_len;
+ latter_del_end = precedence_len + latter_req_len;
} else {
if (! ( ~latter_req_len
& ( ~UTextExtent_Line | ~UTextExtent_Full ) ) )
@@ -945,25 +945,25 @@
case UTextOrigin_Beginning:
former_del_start = 0;
- latter_del_end = precedence_len + preedit_len;
+ latter_del_end = precedence_len;
if ( latter_req_len >= 0 ) {
if ( precedence_len < latter_req_len ) {
if ( following_len >= ( latter_req_len - precedence_len ) )
- latter_del_end = preedit_len + latter_req_len;
+ latter_del_end = latter_req_len;
else
- latter_del_end = len + preedit_len;
+ latter_del_end = len;
}
} else {
if (! ( ~latter_req_len
& ( ~UTextExtent_Line | ~UTextExtent_Full ) ) )
return -1;
- latter_del_end = len + preedit_len;
+ latter_del_end = len;
}
break;
case UTextOrigin_End:
former_del_start = precedence_len;
- latter_del_end = len + preedit_len;
+ latter_del_end = len;
if ( former_req_len < 0 ) {
if (! ( ~former_req_len
& ( ~UTextExtent_Line | ~UTextExtent_Full ) ) )
@@ -978,8 +978,10 @@
return -1;
}
+ if ( len < former_del_start )
+ former_del_start = len;
if ( len < latter_del_end )
- return 0;
+ latter_del_end = len;
cursor.setPosition( latter_del_end );
cursor.setPosition( former_del_start, QTextCursor::KeepAnchor );