# HG changeset patch # User Radek Brich # Date 1409727444 -7200 # Node ID 11dac45bfba423627684dda2ce91b7179a43444a # Parent 1822c37b268867d8e500e62f86139b62444cdc79 Fix cursor. diff -r 1822c37b2688 -r 11dac45bfba4 tuikit/core/container.py --- a/tuikit/core/container.py Wed Sep 03 08:57:06 2014 +0200 +++ b/tuikit/core/container.py Wed Sep 03 08:57:24 2014 +0200 @@ -1,5 +1,5 @@ from tuikit.core.widget import Widget -from tuikit.core.coords import Point +from tuikit.core.coords import Point, Rect from tuikit.layouts.fixed import FixedLayout @@ -57,11 +57,13 @@ """ if self.focus_child: cursor = self.focus_child.cursor - if cursor is not None: - return cursor.moved(*self.focus_child.pos) + if not cursor: + return None + cursor = cursor.moved(*self.focus_child.pos) else: - if self._cursor in Rect._make((0, 0), self._size): - return self._cursor + cursor = self._cursor.immutable() + if cursor in Rect._make((0, 0), self._size): + return cursor ## input events ## diff -r 1822c37b2688 -r 11dac45bfba4 tuikit/core/coords.py --- a/tuikit/core/coords.py Wed Sep 03 08:57:06 2014 +0200 +++ b/tuikit/core/coords.py Wed Sep 03 08:57:24 2014 +0200 @@ -107,6 +107,9 @@ def y(self): return self._y + def moved(self, relx, rely): + return ImmutablePoint(self.x + relx, self.y + rely) + def __getitem__(self, key): return (self.x, self.y)[key] diff -r 1822c37b2688 -r 11dac45bfba4 tuikit/core/window.py --- a/tuikit/core/window.py Wed Sep 03 08:57:06 2014 +0200 +++ b/tuikit/core/window.py Wed Sep 03 08:57:24 2014 +0200 @@ -58,6 +58,7 @@ self.timer = timer def resize(self, w, h): + Container.resize(self, w, h) self.children[0].resize(w, h) def handle_event(self, event_name, *args): diff -r 1822c37b2688 -r 11dac45bfba4 tuikit/widgets/textbox.py --- a/tuikit/widgets/textbox.py Wed Sep 03 08:57:06 2014 +0200 +++ b/tuikit/widgets/textbox.py Wed Sep 03 08:57:24 2014 +0200 @@ -22,6 +22,7 @@ # This variable rememberes horizontal position of cursor # for the case when cursor moves to shorter line. self.cursor_column = 0 + self._cursor.update(0, 0) # selection - line and column of selection start self.sel_line = 0 self.sel_column = 0