Switch to the next/previous record instead of page in list view of tryton

This harmonizes the behavior of the next/previous buttons in clients.

Closes #7979
This commit is contained in:
Cédric Krier
2023-02-17 15:20:31 +01:00
parent bf6fb5b760
commit 8c522d3e8e
2 changed files with 5 additions and 28 deletions
+3 -2
View File
@@ -175,9 +175,10 @@ class Main(Gtk.Application):
Gtk.AccelMap.add_entry(
'<tryton>/Form/Delete', Gdk.KEY_D, Gdk.ModifierType.CONTROL_MASK)
Gtk.AccelMap.add_entry(
'<tryton>/Form/Next', Gdk.KEY_Page_Down, 0)
'<tryton>/Form/Next', Gdk.KEY_Down, Gdk.ModifierType.CONTROL_MASK)
Gtk.AccelMap.add_entry(
'<tryton>/Form/Previous', Gdk.KEY_Page_Up, 0)
'<tryton>/Form/Previous',
Gdk.KEY_Up, Gdk.ModifierType.CONTROL_MASK)
Gtk.AccelMap.add_entry(
'<tryton>/Form/Switch View', Gdk.KEY_L,
Gdk.ModifierType.CONTROL_MASK)
@@ -976,19 +976,7 @@ class Screen:
def _get_next_record(self, test=False):
view = self.current_view
if view.view_type == 'tree' and len(self.group):
range_ = view.treeview.get_visible_range()
if range_ and not test:
start, end = range_
vadjustment = view.treeview.get_vadjustment()
vadjustment.set_value(
vadjustment.props.value + vadjustment.props.page_increment)
model = view.treeview.get_model()
iter_ = model.get_iter(end)
return model.get_value(iter_, 0)
else:
return self.group[-1]
elif (view.view_type == 'form'
if (view.view_type in {'tree', 'form'}
and self.current_record
and self.current_record.group):
group = self.current_record.group
@@ -1063,19 +1051,7 @@ class Screen:
def _get_prev_record(self, test=False):
view = self.current_view
if view.view_type == 'tree' and len(self.group):
range_ = view.treeview.get_visible_range()
if range_ and not test:
start, end = range_
vadjustment = view.treeview.get_vadjustment()
vadjustment.set_value(
vadjustment.props.value - vadjustment.props.page_increment)
model = view.treeview.get_model()
iter_ = model.get_iter(start)
return model.get_value(iter_, 0)
else:
return self.group[0]
elif (view.view_type == 'form'
if (view.view_type in {'tree', 'form'}
and self.current_record
and self.current_record.group):
group = self.current_record.group