summary refs log tree commit diff stats
path: root/ranger
diff options
context:
space:
mode:
authorhut <hut@lavabit.com>2010-03-28 01:59:17 +0100
committerhut <hut@lavabit.com>2010-03-28 01:59:17 +0100
commit636f69d346e31ee59702c814574c1379aa9cb8e6 (patch)
tree4ee5a2f415d87cc964ef908f5d01a2ea592cd790 /ranger
parentd3c262a924eebdab926b9569ecdb225b3be1e4a9 (diff)
downloadranger-636f69d346e31ee59702c814574c1379aa9cb8e6.tar.gz
closed issue #70: mouse click handler for the titlebar
Diffstat (limited to 'ranger')
-rw-r--r--ranger/gui/widgets/titlebar.py20
1 files changed, 20 insertions, 0 deletions
diff --git a/ranger/gui/widgets/titlebar.py b/ranger/gui/widgets/titlebar.py
index e1be8e97..18d363dc 100644
--- a/ranger/gui/widgets/titlebar.py
+++ b/ranger/gui/widgets/titlebar.py
@@ -43,6 +43,26 @@ class TitleBar(Widget):
 			self.color('in_titlebar', 'throbber')
 			self.win.addnstr(self.y, self.wid - 2, self.throbber, 1)
 
+	def click(self, event):
+		"""Handle a MouseEvent"""
+		if not event.pressed(1) or not self.result:
+			return False
+
+		pos = 0
+		for i, part in enumerate(self.result):
+			pos += len(part.string)
+			if event.x < pos:
+				if i < 2:
+					self.fm.enter_dir("~")
+				elif i == 2:
+					self.fm.enter_dir("/")
+				else:
+					try:
+						self.fm.env.enter_dir(self.env.pathway[(i-3)/2])
+					except:
+						pass
+				return False
+
 	def _calc_bar(self):
 		bar = Bar('in_titlebar')
 		self._get_left_part(bar)
fa00db1fab3a811b60bc9d8de0355e4'>3e1349d2 ^
c5ffb6e1 ^

a654e4ec ^





c5ffb6e1 ^

a654e4ec ^
c5ffb6e1 ^

4690ce81 ^
d009e158 ^
f5465e12 ^



c5ffb6e1 ^

4690ce81 ^
f5465e12 ^



c5ffb6e1 ^



a654e4ec ^
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51