From 7b15e18c98e91941e755a8a6aae92ba6f1d30354 Mon Sep 17 00:00:00 2001 From: Kevin Sawicki Date: Thu, 7 Jun 2012 18:29:47 -0700 Subject: [PATCH] Support clicking on entries in file finder Add a hover color and register a mousedown listener that opens the selected path. --- src/extensions/file-finder.coffee | 15 +++++++++++---- static/file-finder.css | 4 ++++ 2 files changed, 15 insertions(+), 4 deletions(-) diff --git a/src/extensions/file-finder.coffee b/src/extensions/file-finder.coffee index afce6418b..6edc67eb8 100644 --- a/src/extensions/file-finder.coffee +++ b/src/extensions/file-finder.coffee @@ -1,6 +1,7 @@ {View, $$} = require 'space-pen' stringScore = require 'stringscore' fuzzyFilter = require 'fuzzy-filter' +$ = require 'jquery' Editor = require 'editor' module.exports = @@ -26,6 +27,7 @@ class FileFinder extends View @on 'move-up', => @moveUp() @on 'move-down', => @moveDown() @on 'file-finder:select-file', => @select() + @on 'mousedown', 'li', (e) => @entryClicked(e) @miniEditor.buffer.on 'change', => @populatePathList() if @hasParent() @miniEditor.off 'move-up move-down' @@ -58,12 +60,14 @@ class FileFinder extends View findSelectedLi: -> @pathList.children('li.selected') - select: -> - selectedLi = @findSelectedLi() - return unless selectedLi.length - @rootView.open(selectedLi.text()) + open : (text) -> + return unless text.length + @rootView.open(text) @detach() + select: -> + @open(@findSelectedLi().text()) + moveUp: -> @findSelectedLi() .filter(':not(:first-child)') @@ -80,3 +84,6 @@ class FileFinder extends View findMatches: (query) -> fuzzyFilter(@paths, query, maxResults: @maxResults) + + entryClicked: (e) -> + @open($(e.currentTarget).text()) diff --git a/static/file-finder.css b/static/file-finder.css index 09375594f..598c39211 100644 --- a/static/file-finder.css +++ b/static/file-finder.css @@ -14,6 +14,10 @@ margin-bottom: 5px; } +.file-finder li:hover { + background-color: #555; +} + .file-finder ol:empty { margin-bottom: 0; }