classNameCompletion fix
authorClaus Gittinger <cg@exept.de>
Tue, 23 Sep 2003 12:36:30 +0200
changeset 7618 4bfdf830bd7b
parent 7617 a557bbe96ef1
child 7619 357eb8001851
classNameCompletion fix
Smalltalk.st
--- a/Smalltalk.st	Mon Sep 22 11:11:53 2003 +0200
+++ b/Smalltalk.st	Tue Sep 23 12:36:30 2003 +0200
@@ -2194,18 +2194,20 @@
         ^ Array with:best with:(matches asArray)
     ].
 
-    matches sort:[:name1 :name2 |
-        "name1 comes before:name2 iff"
-        ((name2 includes:$:) and:[(name1 includes:$:) not])
-        or:[ ((name1 includes:$:) == (name2 includes:$:))
-              and:[ (name1 size < name2 size) 
-                    or: [ name1 < name2 ]]
-           ]
-    ].
+    matches 
+        sort:[:name1 :name2 |
+            "name1 comes before:name2 iff"
+            ((name2 includes:$:) and:[(name1 includes:$:) not])
+            or:[ ((name1 includes:$:) == (name2 includes:$:))
+                  and:[ (name1 size < name2 size) 
+                        or: [ name1 < name2 ]]
+               ]
+        ].
 
     isMatchString ifTrue:[
         best := searchName.
     ] ifFalse:[
+        
         best := matches longestCommonPrefix.
         best size == 0 ifTrue:[
             best := matchedNamesWithoutPrefix longestCommonPrefix.
@@ -2217,6 +2219,9 @@
                 ^ Array with:(matches at:idx) with:(matches asArray)
             ].
         ].
+        best size < aPartialClassName size ifTrue:[
+            best := aPartialClassName.
+        ].
     ].
 
     cls := anEnvironment classNamed:best.
@@ -6597,5 +6602,5 @@
 !Smalltalk class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libbasic/Smalltalk.st,v 1.603 2003-09-19 08:44:02 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libbasic/Smalltalk.st,v 1.604 2003-09-23 10:36:30 cg Exp $'
 ! !