changeset ebd77bfef747 in tryton:4.6
details: https://hg.tryton.org/tryton?cmd=changeset;node=ebd77bfef747
description:
Do not fail when get_visible_range return None
It can happen if there is no node if found by GTK.
issue8694
review277971002
(grafted from c522cb07dc70c77759572b87881b86661bd7101d)
diffstat:
tryton/gui/window/view_form/screen/screen.py | 36 +++++++++++++++------------
1 files changed, 20 insertions(+), 16 deletions(-)
diffs (53 lines):
diff -r 0757581c0ae7 -r ebd77bfef747
tryton/gui/window/view_form/screen/screen.py
--- a/tryton/gui/window/view_form/screen/screen.py Fri Oct 11 11:40:42
2019 +0200
+++ b/tryton/gui/window/view_form/screen/screen.py Thu Oct 24 19:16:12
2019 +0200
@@ -879,14 +879,16 @@
view.set_value()
self.set_cursor(reset_view=False)
if view.view_type == 'tree' and len(self.group):
- start, end = view.treeview.get_visible_range()
- vadjustment = view.treeview.get_vadjustment()
- vadjustment.props.value = min(
- vadjustment.props.value + vadjustment.props.page_increment,
- vadjustment.props.upper)
- model = view.treeview.get_model()
- iter_ = model.get_iter(end)
- self.current_record = model.get_value(iter_, 0)
+ range_ = view.treeview.get_visible_range()
+ if range_:
+ start, end = range_
+ vadjustment = view.treeview.get_vadjustment()
+ vadjustment.props.value = min(
+ vadjustment.props.value + vadjustment.props.page_increment,
+ vadjustment.props.upper)
+ model = view.treeview.get_model()
+ iter_ = model.get_iter(end)
+ self.current_record = model.get_value(iter_, 0)
elif (view.view_type == 'form'
and self.current_record
and self.current_record.group):
@@ -950,14 +952,16 @@
view.set_value()
self.set_cursor(reset_view=False)
if view.view_type == 'tree' and len(self.group):
- start, end = view.treeview.get_visible_range()
- vadjustment = view.treeview.get_vadjustment()
- vadjustment.props.value = min(
- vadjustment.props.value - vadjustment.props.page_increment,
- vadjustment.props.lower)
- model = view.treeview.get_model()
- iter_ = model.get_iter(start)
- self.current_record = model.get_value(iter_, 0)
+ range_ = view.treeview.get_visible_range()
+ if range_:
+ start, end = range_
+ vadjustment = view.treeview.get_vadjustment()
+ vadjustment.props.value = min(
+ vadjustment.props.value - vadjustment.props.page_increment,
+ vadjustment.props.lower)
+ model = view.treeview.get_model()
+ iter_ = model.get_iter(start)
+ self.current_record = model.get_value(iter_, 0)
elif (view.view_type == 'form'
and self.current_record
and self.current_record.group):