diff --git a/aqt/deckbrowser.py b/aqt/deckbrowser.py
index c8871a8f6..45482f848 100644
--- a/aqt/deckbrowser.py
+++ b/aqt/deckbrowser.py
@@ -48,16 +48,19 @@ class DeckBrowser(object):
# HTML generation
##########################################################################
+ _dragIndicatorBorderWidth = "1px"
+
_css = """
tr { font-size: 12px; }
a.deck { color: #000; text-decoration: none; }
a.deck:hover { text-decoration: underline; }
-tr.deck td { border-bottom: thick solid transparent; }
+tr.deck td { border-bottom: %(width)s solid transparent; }
+tr.top-level-drag-row td { border-bottom: %(width)s solid transparent; }
td.opts { white-space: nowrap; }
-tr.drag-hover td { border-bottom: 1px solid #aaa; }
-.extra { font-size: 90%; }
+tr.drag-hover td { border-bottom: %(width)s solid #aaa; }
+.extra { font-size: 90%%; }
body { margin: 1em; -webkit-user-select: none; }
-"""
+""" % dict(width=_dragIndicatorBorderWidth)
_body = """
@@ -76,13 +79,14 @@ body { margin: 1em; -webkit-user-select: none; }
helper: function (event) {
return $(this).clone(false);
},
+ delay: 200,
opacity: 0.7
});
$("tr.deck").droppable({
drop: handleDropEvent,
hoverClass: 'drag-hover',
});
- $("tr.bottom-row").droppable({
+ $("tr.top-level-drag-row").droppable({
drop: handleDropEvent,
hoverClass: 'drag-hover',
});
@@ -99,11 +103,8 @@ body { margin: 1em; -webkit-user-select: none; }
def _renderPage(self):
css = self.mw.sharedCSS + self._css
- tree = self._renderDeckTree(self.mw.col.sched.deckDueTree()) \
- + self._bogusBottomRowForDraggingDeckToTopLevel()
- self.web.stdHtml(self._body%dict(
- title=_("Decks"),
- tree=tree), css=css)
+ tree = self._renderDeckTree(self.mw.col.sched.deckDueTree())
+ self.web.stdHtml(self._body%dict(tree=tree), css=css)
self._drawButtons()
def _renderDeckTree(self, nodes, depth=0):
@@ -114,10 +115,13 @@ body { margin: 1em; -webkit-user-select: none; }
| %s | %s |
%s |
""" % (
_("Deck"), _("Due"), _("New"))
+ buf += self._topLevelDragRow()
else:
buf = ""
for node in nodes:
buf += self._deckRow(node, depth)
+ if depth == 0:
+ buf += self._topLevelDragRow()
return buf
def _deckRow(self, node, depth):
@@ -143,8 +147,8 @@ body { margin: 1em; -webkit-user-select: none; }
buf += self._renderDeckTree(children, depth+1)
return buf
- def _bogusBottomRowForDraggingDeckToTopLevel(self):
- return "| |
"
+ def _topLevelDragRow(self):
+ return "| |
"
def _dueImg(self, due, new):
if due: