diff --git a/tryton/common/cellrendererfloat.py b/tryton/common/cellrendererfloat.py index 4cea18838c..3b0a0b1bfd 100644 --- a/tryton/common/cellrendererfloat.py +++ b/tryton/common/cellrendererfloat.py @@ -34,14 +34,13 @@ class CellRendererFloat(CellRendererInteger): try: start_pos, end_pos = widget.get_selection_bounds() except ValueError: - start_pos = widget.props.cursor_position + start_pos = widget.get_position() end_pos = None if self._can_insert_text(widget, text, start_pos, end_pos): buffer_ = widget.get_buffer() buffer_.delete_text(start_pos, end_pos - start_pos) buffer_.insert_text(start_pos, text, len(text)) - widget.set_position( - widget.props.cursor_position + len(text)) + widget.set_position(widget.get_position() + len(text)) return True def _can_insert_text(self, entry, new_text, start_pos, end_pos=None): diff --git a/tryton/common/cellrendererinteger.py b/tryton/common/cellrendererinteger.py index 1dc45d85e9..c60d0316c3 100644 --- a/tryton/common/cellrendererinteger.py +++ b/tryton/common/cellrendererinteger.py @@ -16,7 +16,6 @@ class CellRendererInteger(CellRendererText): def _can_insert_text(self, entry, new_text, position): value = entry.get_text() - position = entry.get_position() new_value = value[:position] + new_text + value[position:] if new_value != '-': try: @@ -26,6 +25,7 @@ class CellRendererInteger(CellRendererText): return True def sig_insert_text(self, entry, new_text, new_text_length, position): + position = entry.get_position() if not self._can_insert_text(entry, new_text, position): entry.stop_emission_by_name('insert-text')