From 500dff04c8146be443196d4bb8d82f7ba84fee99 Mon Sep 17 00:00:00 2001 From: Damien Elmes Date: Thu, 23 Aug 2012 15:09:10 +0900 Subject: [PATCH] must preserve selected card order when repositioning --- anki/sched.py | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/anki/sched.py b/anki/sched.py index cf3dcd382..a6a0a0957 100644 --- a/anki/sched.py +++ b/anki/sched.py @@ -1222,9 +1222,13 @@ usn=:usn, mod=:mod, factor=:fact where id=:id and odid=0""", def sortCards(self, cids, start=1, step=1, shuffle=False, shift=False): scids = ids2str(cids) now = intTime() - nids = self.col.db.list( - ("select distinct nid from cards where type = 0 and id in %s " - "order by nid") % scids) + nids = [] + nidsSet = set() + for id in cids: + nid = self.col.db.scalar("select nid from cards where id = ?", id) + if nid not in nidsSet: + nids.append(nid) + nidsSet.add(nid) if not nids: # no new cards return