summaryrefslogtreecommitdiff
path: root/static/js/src
diff options
context:
space:
mode:
authorJules Laplace <jules@okfoc.us>2012-07-18 01:59:15 -0400
committerJules Laplace <jules@okfoc.us>2012-07-18 01:59:15 -0400
commit3650a561fc739f89458f9b95c3b51c763b479890 (patch)
tree19be344999189706e52074415a3d5a868e3fb1b0 /static/js/src
parentb80a7020d9336f2b13c36baa766867874bc4c324 (diff)
drag UX
Diffstat (limited to 'static/js/src')
-rw-r--r--static/js/src/drag.js4
-rw-r--r--static/js/src/palette-manual.js10
2 files changed, 12 insertions, 2 deletions
diff --git a/static/js/src/drag.js b/static/js/src/drag.js
index e519670..8ac9a9d 100644
--- a/static/js/src/drag.js
+++ b/static/js/src/drag.js
@@ -78,12 +78,14 @@ $(function(){
// dragging images into the manual fave palette
var palette = document.getElementById("manual-palette");
var paletteButton = document.getElementById("manual-palette-button");
+ var paletteTimeout = null;
var paletteCallbacks = {
'enter': function() {
+ if (paletteTimeout) clearTimeout(paletteTimeout);
manPaletteShow();
},
'leave': function() {
- manPaletteHide();
+ paletteTimeout = setTimeout(manPaletteHideUnlessChecked, 500);
},
'drop': function (url) {
addManualFav(url);
diff --git a/static/js/src/palette-manual.js b/static/js/src/palette-manual.js
index 730ff1f..c9231a1 100644
--- a/static/js/src/palette-manual.js
+++ b/static/js/src/palette-manual.js
@@ -11,14 +11,22 @@ $(function(){
});
});
+var manPaletteClicked = false;
function manPaletteToggle() {
if ($("#manual-palette").css("display") == "none") {
- manPaletteShow();
+ manPaletteClicked = true;
+ manPaletteShow();
} else {
+ manPaletteClicked = false;
manPaletteHide();
}
};
+function manPaletteHideUnlessChecked (){
+ if (manPaletteClicked) return;
+ manPaletteHide();
+}
+
function manPaletteHide() {
$("#manual-palette").css("display", "none");
$("#manual-palette-thumbs").html("");