From 1b06707e6cecfd87533c61b77455b6930b341cd8 Mon Sep 17 00:00:00 2001 From: Matthias Baumgartner Date: Fri, 17 Feb 2023 17:52:06 +0100 Subject: empty browser fix --- tagit/widgets/browser.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/tagit/widgets/browser.py b/tagit/widgets/browser.py index 28f7440..8445706 100644 --- a/tagit/widgets/browser.py +++ b/tagit/widgets/browser.py @@ -171,7 +171,8 @@ class Browser(GridLayout, StorageAwareMixin, ConfigAwareMixin): """ # get groups and their shadow (group's members in items) groups = defaultdict(set) - for obj, grp in reduce(operator.add, items).group(node=True, view=list): + all_items = reduce(operator.add, items, self.root.session.storage.empty(ns.bsfs.File)) + for obj, grp in all_items.group(node=True, view=list): groups[grp].add(obj) # don't fold groups if few members @@ -218,7 +219,7 @@ class Browser(GridLayout, StorageAwareMixin, ConfigAwareMixin): unfolded |= self.folds[itm].shadow else: unfolded |= {itm} - return reduce(operator.add, unfolded) # FIXME: What if items is empty? + return reduce(operator.add, unfolded, self.root.session.storage.empty(ns.bsfs.File)) def neighboring_unselected(self): """Return the item closest to the cursor and not being selected. May return None.""" -- cgit v1.2.3