diff options
Diffstat (limited to 'state.lua')
| -rw-r--r-- | state.lua | 24 |
1 files changed, 24 insertions, 0 deletions
@@ -49,6 +49,30 @@ function mt:push_menu(t) return menu end +function mt:capture_origin(d) + local m = self.menus[d] + return { + menus = util.copy_table(self.menus), + depth = self.depth, + div_depth = d, + div_cursor = m.cursor, + div_view_top = m.view_top, + div_sort_f = m.sort_f, + } +end + +function mt:restore_origin(t) + self.menus = t.menus + self.depth = t.depth + local m = self.menus[t.div_depth] + m.cursor = t.div_cursor + m.view_top = t.div_view_top + + if m.sort_f ~= t.div_sort_f then + m:set_sort(t.div_sort_f) + end +end + -- returns index if found function mt:favourited(id) for i, v in ipairs(self.favourites) do |
