summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIan Ward <ian@excess.org>2012-11-02 21:13:36 -0400
committerIan Ward <ian@excess.org>2012-11-02 21:13:36 -0400
commit5c552cb457bd2107fbd14d1aa4e0f4c30aabc064 (patch)
tree99e06b6cd732405b675517ebfa5e4934bfb6e4a8
parentf76c62d17bed5761d1d79810145286799e63297f (diff)
downloadurwid-5c552cb457bd2107fbd14d1aa4e0f4c30aabc064.tar.gz
fix: Overlay.get_cursor_coords has never worked
--HG-- branch : stable-1.1
-rwxr-xr-xurwid/container.py2
-rwxr-xr-xurwid/tests.py5
2 files changed, 6 insertions, 1 deletions
diff --git a/urwid/container.py b/urwid/container.py
index 583f793..8f58fec 100755
--- a/urwid/container.py
+++ b/urwid/container.py
@@ -681,7 +681,7 @@ class Overlay(Widget, WidgetContainerMixin, WidgetContainerListContentsMixin):
def get_cursor_coords(self, size):
"""Return cursor coords from top_w, if any."""
- if not hasattr(self.body, 'get_cursor_coords'):
+ if not hasattr(self.top_w, 'get_cursor_coords'):
return None
(maxcol, maxrow) = size
left, right, top, bottom = self.calculate_padding_filler(size,
diff --git a/urwid/tests.py b/urwid/tests.py
index 352a842..80accd9 100755
--- a/urwid/tests.py
+++ b/urwid/tests.py
@@ -2240,6 +2240,11 @@ class OverlayTest(unittest.TestCase):
'right', None, 'relative', 100, None, 4, 5,
'bottom', None, 'relative', 100, None, 2, 3))
+ def test_get_cursor_coords(self):
+ self.assertEquals(urwid.Overlay(urwid.Filler(urwid.Edit()),
+ urwid.SolidFill(u'B'),
+ 'right', 1, 'bottom', 1).get_cursor_coords((2,2)), (1,1))
+
class GridFlowTest(unittest.TestCase):
def test_cell_width(self):