fancy-select
Advanced tools
Comparing version 0.2.0 to 0.2.1
13
index.js
@@ -24,14 +24,2 @@ var mercury = require('mercury') | ||
events.close(function (close) { | ||
if (close) { | ||
willClose = setTimeout(function () { | ||
events.dropdown(false) | ||
}, 110) | ||
} else { | ||
clearTimeout(willClose) | ||
events.dropdown(true) | ||
willClose = null | ||
} | ||
}) | ||
events.backspace(function () { | ||
@@ -50,3 +38,2 @@ if (!state.query()) { | ||
events.select(function (opt) { | ||
events.close(false) | ||
var val = value() | ||
@@ -53,0 +40,0 @@ val.push(opt) |
{ | ||
"name": "fancy-select", | ||
"description": "fancy select", | ||
"version": "0.2.0", | ||
"version": "0.2.1", | ||
"repository": { | ||
@@ -6,0 +6,0 @@ "url": "nrw/fancy-select" |
@@ -28,2 +28,3 @@ var RCSS = require('rcss') | ||
option: RCSS.registerClass({ | ||
outline: 0, | ||
borderBottom: '1px solid #eee', | ||
@@ -30,0 +31,0 @@ padding: '0.4em 0.8em', |
16
view.js
@@ -51,5 +51,13 @@ var mercury = require('mercury') | ||
case 'blur': | ||
state.events.close(true) | ||
// console.log(e.currentTarget) | ||
// e.preventDefault() | ||
var relatedTarget = e.relatedTarget, element = state.element; | ||
console.log('related', relatedTarget ? relatedTarget.tagName : '') | ||
// TODO: this will likely stop working until | ||
// https://github.com/Raynos/dom-delegator/pull/4 is fixed | ||
if ( | ||
!relatedTarget || | ||
!e.currentTarget.parentNode.parentNode.contains(relatedTarget) | ||
) { | ||
state.events.dropdown(false) | ||
} | ||
break | ||
@@ -99,5 +107,5 @@ case 'focus': | ||
className: [styles.option.className, focusClass].join(' '), | ||
tabIndex: 1000, | ||
'ev-click': function (e) { | ||
state.events.select(opt) | ||
// console.log(e.currentTarget.parentNode) | ||
e.currentTarget.parentNode.parentNode | ||
@@ -104,0 +112,0 @@ .children[0].children[1].focus() |
8942
269