changeset 29326:44c929164604

(quail-start-conversion): Don't include unhandled events in the returned events, but set them in unread-command-events. Exit if all inputs are deleted.
author Kenichi Handa <handa@m17n.org>
date Wed, 31 May 2000 03:49:49 +0000
parents e67ef9cdfe51
children 18bfc4113440
files lisp/international/quail.el
diffstat 1 files changed, 7 insertions(+), 7 deletions(-) [+]
line wrap: on
line diff
--- a/lisp/international/quail.el	Wed May 31 03:49:22 2000 +0000
+++ b/lisp/international/quail.el	Wed May 31 03:49:49 2000 +0000
@@ -1065,11 +1065,12 @@
 					  (if (stringp quail-current-str)
 					      quail-current-str
 					    (char-to-string quail-current-str)))))
-			(if input-method-exit-on-first-char
+			(if (or input-method-exit-on-first-char
+				(= (length quail-conversion-str) 0))
 			    (setq quail-converting nil)))))
 	      ;; KEYSEQ is not defined in the conversion keymap.
 	      ;; Let's return the event(s) to the caller.
-	      (setq generated-events
+	      (setq unread-command-events
 		    (string-to-list (this-single-command-raw-keys)))
 	      (setq quail-converting nil))))
 	(if (overlay-start quail-conv-overlay)
@@ -1077,11 +1078,10 @@
 			   (overlay-end quail-conv-overlay)))
 	(if (> (length quail-conversion-str) 0)
 	    (setq generated-events
-		  (append (string-to-list
-			   (if enable-multibyte-characters
-			       quail-conversion-str
-			     (string-make-unibyte quail-conversion-str)))
-			  generated-events)))
+		  (string-to-list
+		   (if enable-multibyte-characters
+		       quail-conversion-str
+		     (string-make-unibyte quail-conversion-str)))))
 	(if (and input-method-exit-on-first-char generated-events)
 	    (list (car generated-events))
 	  generated-events))