#UI_ENHANCEMENT by cg
authorClaus Gittinger <cg@exept.de>
Wed, 15 Mar 2017 19:37:36 +0100
changeset 6136 54e34fbf8f6d
parent 6135 5d74fd984cde
child 6137 ede94cb05df9
#UI_ENHANCEMENT by cg class: EditField changed: #keyPress:x:y: #preferredExtent #resizeOrScroll do not resize on meta keys; do not limit the pref-extent to half the screen
EditField.st
--- a/EditField.st	Tue Mar 14 20:29:15 2017 +0100
+++ b/EditField.st	Wed Mar 15 19:37:36 2017 +0100
@@ -1764,11 +1764,13 @@
     key == #EndOfText ifTrue:[
         super keyPress:#EndOfLine x:x y:y.
     ].
-
-    self resizeOrScroll.
+    
+    key isCharacter ifTrue:[
+        self resizeOrScroll.
+    ].
 
     "Modified: / 02-05-1996 / 17:24:16 / stefan"
-    "Modified: / 17-01-2011 / 11:26:08 / cg"
+    "Modified: / 15-03-2017 / 19:35:45 / cg"
 !
 
 keyboardZoom:larger
@@ -1796,10 +1798,10 @@
      should (& can) we resize ?
     "
     xCol := (self xOfCol:cursorCol inVisibleLine:cursorLine) - viewOrigin x.
-    (xCol > (width * (5/6))) ifTrue:[
+    (xCol > (width - 150 "* (5/6)")) ifTrue:[
         self changedPreferredBounds:nil
     ] ifFalse:[
-        newWidth < (width * (1/6)) ifTrue:[
+        newWidth < (width * (2/6)) ifTrue:[
             self changedPreferredBounds:nil
         ]
     ].
@@ -1831,7 +1833,7 @@
         ]
     ].
 
-    "Modified: 6.3.1997 / 16:13:59 / cg"
+    "Modified: / 15-03-2017 / 19:22:56 / cg"
 !
 
 sizeChanged:how
@@ -2287,15 +2289,16 @@
         w := ((f widthOf:string) * 1.5) rounded. 
         w := w + margin + margin.
     ].
-    w := w min:(device width // 2).
+    "/ never more than the screen width, minus some 
+    w := w min:(device width - 200 " // 2").
 
     "/ h := f maxHeight + (f maxDescent * 2) + (margin * 2).
     h := fontHeight + topMargin + (margin * 2).
 
     ^ w rounded @ h rounded
 
-    "Modified: / 6.9.1995 / 19:24:06 / claus"
-    "Modified: / 21.5.1998 / 02:13:35 / cg"
+    "Modified: / 06-09-1995 / 19:24:06 / claus"
+    "Modified: / 15-03-2017 / 19:31:54 / cg"
 !
 
 specClass