From e93f4abcab6ea853db190ad1512fe35fd78e8b7f Mon Sep 17 00:00:00 2001 From: Damien Elmes Date: Wed, 14 Jun 2017 11:43:47 +1000 Subject: [PATCH] fix deck expanded state being reset the setExpanded() call was triggering the callback, turning off expanded state https://anki.tenderapp.com/discussions/ankidesktop/23841-bug-when-editing-card-fields-decks-automatically-collapse --- aqt/browser.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/aqt/browser.py b/aqt/browser.py index 98a09ff52..b97812b6e 100644 --- a/aqt/browser.py +++ b/aqt/browser.py @@ -758,8 +758,9 @@ by clicking on one on the left.""")) ###################################################################### class CallbackItem(QTreeWidgetItem): - def __init__(self, root, name, onclick, oncollapse=None): + def __init__(self, root, name, onclick, oncollapse=None, expanded=False): QTreeWidgetItem.__init__(self, root, [name]) + self.setExpanded(expanded) self.onclick = onclick self.oncollapse = oncollapse @@ -866,11 +867,10 @@ by clicking on one on the left.""")) item = self.CallbackItem( root, g[0], lambda g=g: self.setFilter("deck", head+g[0]), - lambda g=g: self.mw.col.decks.collapseBrowser(g[1])) + lambda g=g: self.mw.col.decks.collapseBrowser(g[1]), + not self.mw.col.decks.get(g[1]).get('browserCollapsed', False)) item.setIcon(0, QIcon(":/icons/deck16.png")) newhead = head + g[0]+"::" - collapsed = self.mw.col.decks.get(g[1]).get('browserCollapsed', False) - item.setExpanded(not collapsed) fillGroups(item, g[5], newhead) fillGroups(root, grps)