changed: #processEvent:
authorClaus Gittinger <cg@exept.de>
Thu, 17 Jan 2013 12:16:28 +0100
changeset 12113 239341521c07
parent 12112 0012158092fb
child 12114 d3f28a282edd
changed: #processEvent: fixed ist update of directory contents
DirectoryContentsBrowser.st
--- a/DirectoryContentsBrowser.st	Thu Jan 17 12:16:00 2013 +0100
+++ b/DirectoryContentsBrowser.st	Thu Jan 17 12:16:28 2013 +0100
@@ -1744,6 +1744,9 @@
     "filter keyboard events.
      Return true, if I have eaten the event"
 
+    <resource: #keyboard (#Accept #Paste #CursorLeft #Cut #Copy #Delete 
+                          #Return #Rename)>
+
     |focusView key rawKey|
 
     anEvent isKeyPressEvent ifFalse:[^ false].
@@ -1788,7 +1791,7 @@
         self doCopy.
         ^ true.
     ].
-    key == #Delete ifTrue:[
+    ((key == #Delete) or:[key == #BackSpace]) ifTrue:[
         self doDelete.
         ^ true.
     ].
@@ -2426,7 +2429,6 @@
 
     directory isNil ifTrue:[^ self].
 
-    filterChangeFlag := false.
     updatingColumns := true.
 
     newAllItems := self readDirectoryItems.
@@ -2436,6 +2438,7 @@
     (oldItems isEmptyOrNil 
     or:[newAllItems size > 150]) ifTrue:[ 
         self createItemList.
+        filterChangeFlag := false.
         ^ self
     ].
 
@@ -2461,19 +2464,19 @@
     ].
     oldAllItems := self allItems.
     oldAllItems notEmpty ifTrue:[
-        itemsToRemove notEmpty ifTrue:[
-            oldAllItems removeAllFoundIn:itemsToRemove        
-        ].
+        oldAllItems removeAllFoundIn:itemsToRemove        
     ].
     itemsToAdd do:[: aNewItem |
         (oldAllItems includes:aNewItem) ifFalse:[
             oldAllItems add:aNewItem.
         ]
     ].
-
     self
         enqueueMessage:#value 
-        for:[ self browserItemListAdd:itemsToAdd remove:itemsToRemove. ]
+        for:[ 
+            self browserItemListAdd:itemsToAdd remove:itemsToRemove. 
+            filterChangeFlag := false.
+        ]
         arguments:#().
     filteredItems := newItems.
 
@@ -3417,10 +3420,10 @@
 !DirectoryContentsBrowser class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libtool/DirectoryContentsBrowser.st,v 1.250 2012-12-21 12:31:36 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libtool/DirectoryContentsBrowser.st,v 1.251 2013-01-17 11:16:28 cg Exp $'
 !
 
 version_CVS
-    ^ '$Header: /cvs/stx/stx/libtool/DirectoryContentsBrowser.st,v 1.250 2012-12-21 12:31:36 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libtool/DirectoryContentsBrowser.st,v 1.251 2013-01-17 11:16:28 cg Exp $'
 ! !