summary refs log tree commit diff stats
path: root/ranger/gui/ui.py
diff options
context:
space:
mode:
Diffstat (limited to 'ranger/gui/ui.py')
-rw-r--r--ranger/gui/ui.py15
1 files changed, 10 insertions, 5 deletions
diff --git a/ranger/gui/ui.py b/ranger/gui/ui.py
index 8134231e..07c2de6f 100644
--- a/ranger/gui/ui.py
+++ b/ranger/gui/ui.py
@@ -105,6 +105,10 @@ class UI(DisplayableContainer):
 
 	def handle_key(self, key):
 		"""Handles key input"""
+
+		if hasattr(self, 'hint'):
+			self.hint()
+
 		self.env.key_append(key)
 
 		if DisplayableContainer.press(self, key):
@@ -121,11 +125,12 @@ class UI(DisplayableContainer):
 			self.env.key_clear()
 			return
 
-		if cmd == self.commandlist.dummy_object:
-			return
-
-		cmd.execute(self.fm, self.env.keybuffer.number)
-		self.env.key_clear()
+		if hasattr(cmd, 'text'):
+			if hasattr(self, 'hint'):
+				self.hint(cmd.text)
+		elif hasattr(cmd, 'execute'):
+				cmd.execute(self.fm, self.env.keybuffer.number)
+				self.env.key_clear()
 
 	def get_next_key(self):
 		"""Waits for key input and returns the pressed key"""