about summary refs log tree commit diff stats
diff options
context:
space:
mode:
authorhut <hut@lavabit.com>2009-12-23 02:17:05 +0100
committerhut <hut@lavabit.com>2009-12-23 02:17:05 +0100
commitc7a28738e5106d358c09c9ed929e2cb00aa5b87d (patch)
tree772310951f15f900ca29b74ffa70b513b01c3ae2
parent633387ba693e1d73c95acb7857270233f6ef7f37 (diff)
downloadranger-c7a28738e5106d358c09c9ed929e2cb00aa5b87d.tar.gz
added action.move_pointer_by_percentage()
-rw-r--r--ranger/actions.py10
1 files changed, 10 insertions, 0 deletions
diff --git a/ranger/actions.py b/ranger/actions.py
index d51b2119..19e0028d 100644
--- a/ranger/actions.py
+++ b/ranger/actions.py
@@ -118,6 +118,16 @@ class Actions(EnvironmentAware, SettingsAware):
 		self.env.cf = self.env.pwd.move_pointer(
 				relative = int(relative * self.env.termsize[0]))
 
+	def move_pointer_by_percentage(self, relative=0, absolute=None):
+		"""Move the pointer down by <relative>% or to <absolute>%"""
+		try:
+			factor = len(self.env.pwd) / 100.0
+		except:
+			return
+		self.env.cf = self.env.pwd.move_pointer( \
+				relative=int(relative * factor), \
+				absolute=int(absolute * factor) )
+
 	def scroll(self, relative):
 		"""Scroll down by <relative> lines"""
 		if hasattr(self.ui, 'scroll'):