From 8995fb8e6f511f5f03a91642842163bcd7de048e Mon Sep 17 00:00:00 2001 From: Philip Trauner Date: Sun, 18 Dec 2016 23:22:09 +0100 Subject: [PATCH] Fixed back entries Back entries were crashing the Sublime API when subtitles were disabled. They also didn't work properly with submenues. Fixed now of course :) --- Sublime/fl0w/SublimeMenu.py | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/Sublime/fl0w/SublimeMenu.py b/Sublime/fl0w/SublimeMenu.py index 4cfa710..8ff2c59 100644 --- a/Sublime/fl0w/SublimeMenu.py +++ b/Sublime/fl0w/SublimeMenu.py @@ -60,10 +60,8 @@ class Menu: self.back = back entries = self.menu_entries if back: - entries.insert(0, ["Back", "Back to previous menu"]) - if not self.subtitles: - for entry_index in range(len(entries)): - del entries[entry_index][1] + entries.insert(0, ["Back", + "Back to previous menu"] if self.subtitles else ["Back"]) window.show_quick_panel(entries, self._action, flags=0, selected_index=self.selected_index, on_highlight=self.on_highlight) @@ -74,7 +72,7 @@ class Menu: if entry_id != 0: entry = self.entries[entry_id - 1] else: - self.back.invoke(self.window) + self.back.invoke(self.window, back=self.back.back) return else: entry = self.entries[entry_id] @@ -92,7 +90,10 @@ class Menu: def menu_entries(self): entries = [] for entry_id in self.entries: - entries.append([self.entries[entry_id].name, self.entries[entry_id].description]) + if self.subtitles: + entries.append([self.entries[entry_id].name, self.entries[entry_id].description]) + else: + entries.append([self.entries[entry_id].name]) return entries @@ -134,3 +135,6 @@ class Menu: del self.entries[entry_id] else: raise TypeError("invalid type supplied") + + def clear(self): + self.entries = {}