Browse Source

Input fixed, now close when activated, stay open on error

Benjamin Van Ryseghem 11 years ago
parent
commit
82163bae0f
3 changed files with 20 additions and 6 deletions
  1. 8 2
      js/Helios-KeyBindings.deploy.js
  2. 9 3
      js/Helios-KeyBindings.js
  3. 3 1
      st/Helios-KeyBindings.st

+ 8 - 2
js/Helios-KeyBindings.deploy.js

@@ -1050,10 +1050,16 @@ smalltalk.method({
 selector: "selectBinding:",
 fn: function (aBinding){
 var self=this;
-return smalltalk.withContext(function($ctx1) { 
self["@selectedBinding"]=aBinding;
+return smalltalk.withContext(function($ctx1) { 
var $1,$2;
+$1=_st(aBinding).__eq(self["@selectedBinding"]);
+if(smalltalk.assert($1)){
+$2=self;
+return $2;
+};
+self["@selectedBinding"]=aBinding;
 _st(_st(self)._helper())._refresh();
 return self}, function($ctx1) {$ctx1.fill(self,"selectBinding:",{aBinding:aBinding},smalltalk.HLKeyBinder)})},
-messageSends: ["refresh", "helper"]}),
+messageSends: ["ifTrue:", "=", "refresh", "helper"]}),
 smalltalk.HLKeyBinder);
 
 smalltalk.addMethod(

+ 9 - 3
js/Helios-KeyBindings.js

@@ -1401,12 +1401,18 @@ selector: "selectBinding:",
 category: 'actions',
 fn: function (aBinding){
 var self=this;
-return smalltalk.withContext(function($ctx1) { 
self["@selectedBinding"]=aBinding;
+return smalltalk.withContext(function($ctx1) { 
var $1,$2;
+$1=_st(aBinding).__eq(self["@selectedBinding"]);
+if(smalltalk.assert($1)){
+$2=self;
+return $2;
+};
+self["@selectedBinding"]=aBinding;
 _st(_st(self)._helper())._refresh();
 return self}, function($ctx1) {$ctx1.fill(self,"selectBinding:",{aBinding:aBinding},smalltalk.HLKeyBinder)})},
 args: ["aBinding"],
-source: "selectBinding: aBinding\x09\x0a\x09selectedBinding := aBinding.\x0a\x09self helper refresh",
-messageSends: ["refresh", "helper"],
+source: "selectBinding: aBinding\x0a\x09aBinding = selectedBinding ifTrue: [ ^ self ].\x0a\x09\x0a\x09selectedBinding := aBinding.\x0a\x09self helper refresh",
+messageSends: ["ifTrue:", "=", "refresh", "helper"],
 referencedClasses: []
 }),
 smalltalk.HLKeyBinder);

+ 3 - 1
st/Helios-KeyBindings.st

@@ -379,7 +379,9 @@ flushBindings
 	bindings := nil
 !
 
-selectBinding: aBinding	
+selectBinding: aBinding
+	aBinding = selectedBinding ifTrue: [ ^ self ].
+	
 	selectedBinding := aBinding.
 	self helper refresh
 ! !