Commit Graph

892 Commits

Author SHA1 Message Date
Corey Johnson & Nathan Sobo
7ba7ba2c81 Ported absolute and isFile to Objective-c.
This took fileFinder loading from .8 seconds to .35 seconds.
2012-01-03 17:50:43 -08:00
Corey Johnson & Nathan Sobo
982d5a4426 Benchmarking reveals filtering out non-files takes forevs
toString everything        0.199
Filter out non-files       0.703
Everything                 0.961
2012-01-03 17:34:21 -08:00
Nathan Sobo
1420ca9adb Rename Project.list -> Project.getFilePaths, and change its behavior.
getFilePaths only resolves to the project-relative paths of all files in the project, excluding directories.
2012-01-03 17:22:03 -07:00
Nathan Sobo
6dddb1aa26 RootView.toggleFileFinder scans urls asynchronously. 2012-01-03 16:39:09 -07:00
Nathan Sobo
07b40cdbeb RootView opens a project for the directory of the url passed to initialize.
Rename fixtures/file-finder-dir to fixtures/dir, because it's not really file-finder specific.
2012-01-03 16:01:46 -07:00
Corey Johnson & Nathan Sobo
f8b04cd902 RootView is initialized with a url and opens it with its editor 2012-01-03 13:57:10 -08:00
Corey Johnson & Nathan Sobo
2cfea9fa42 Fix broken specs 2012-01-03 14:40:31 -07:00
Corey Johnson & Nathan Sobo
5b3e0e9f83 fs.async.list takes a boolean 'recursive' flag. 2012-01-03 14:23:18 -07:00
Corey Johnson & Nathan Sobo
3822549007 Spec passes for fs.async.list. 2012-01-03 14:03:03 -07:00
Corey Johnson
d076b1a48c Async file finding works with with blocks 2012-01-03 11:11:11 -08:00
Corey Johnson & Nathan Sobo
b3a7e1e097 Add failing fs.async.list spec. 2012-01-03 11:18:08 -07:00
Corey Johnson & Nathan Sobo
e23d3824e8 Add explicit callback-based waitsFor block completion to Jasmine.
In Jasmine, you can now declare formal parameters in the function you pass to waitsFor. It will automatically pass function args for those params. The spec only advances when you call *all* the given functions.
2012-01-03 11:17:56 -07:00
Corey Johnson & Nathan Sobo
e327dcc8e5 Experiment with async callbacks from js 2011-12-30 18:02:11 -06:00
Corey Johnson & Nathan Sobo
fe0c6f9a61 Remove common path prefix from FileFinder matches 2011-12-30 11:50:29 -08:00
Corey Johnson & Nathan Sobo
e6053a2d66 FileFinder only returns up to maxResults 2011-12-30 11:37:11 -08:00
Nathan Sobo
ad024bc1e6 Move window-global key bindings from window object to RootView.
This makes it simpler to discard bindings between specs: just throw away the RootView. It's also more straightforward to call @bindKey on self in the initialization of RootView, rather than binding to document on window.startup.
2011-12-30 13:26:48 -06:00
Nathan Sobo
a1e0039890 Centralize key binding logic in KeyBinder and jQuery.fn.bindKey extension.
This commit removes window.bindKey in favor of binding keys on dom elements. It also refactors pattern parsing in the test helper to use KeyBinder.parseKeyPattern.
2011-12-30 13:19:41 -06:00
Nathan Sobo
5273cb0638 Add $.fn.bindKey, which works on any jquery-wrapped element.
If given a string as an action, it attempts to call a method by that name on the element's view object. If given a function, it calls it directly.
2011-12-30 12:33:55 -06:00
Nathan Sobo
dc38a0e375 Add $.fn.view method, which links any jquery element to its parent view.
When generating a jQuery fragment with the templating framework, I store the fragment in the 'view' data property on all the fragments elements. This allows us to query an element from the DOM and determine what view object it belongs to.
2011-12-30 12:05:11 -06:00
Corey Johnson & Nathan Sobo
e4d73ace25 Bound up / down keys to moveUp / moveDown in fileFinder 2011-12-29 17:38:08 -08:00
Corey Johnson & Nathan Sobo
98458806ea Add moveUp and moveDown to FileFinder 2011-12-29 16:43:22 -08:00
Corey Johnson & Nathan Sobo
0f772c0858 Template framework can bind events on the root of views, in addition to descendant elements. 2011-12-29 16:13:16 -08:00
Corey Johnson & Nathan Sobo
5aee51eb35 FileFinder tests pass 2011-12-29 15:37:08 -08:00
Corey Johnson & Nathan Sobo
197fd6b82a Add the .pairs file for git-pair. 2011-12-29 16:42:44 -06:00
Corey Johnson & Nathan Sobo
b279063550 Fix bug where subviews could clobber outlets on superviews.
Now we wire outlets before the subviews are attached, preventing any outlets on the subview from overwriting outlets on the superview.
2011-12-29 16:29:06 -06:00
Corey Johnson & Nathan Sobo
2eb7d2a215 FileFinder loads files from editor.url's directory 2011-12-29 12:23:04 -08:00
Corey Johnson & Nathan Sobo
ef628f0ad4 Add directory method to fs 2011-12-29 11:43:32 -08:00
Corey Johnson & Nathan Sobo
35e4b0e969 Incorporate Editor into templating framework. 2011-12-29 13:12:13 -06:00
Corey Johnson & Nathan Sobo
0285c3d94d Builder.subview wires an outlet directly, rather than assigning an outlet property. 2011-12-29 13:10:44 -06:00
Corey Johnson & Nathan Sobo
b25fc80c9a Template.subview expects a view instance instead of a template and params hash. 2011-12-29 12:17:52 -06:00
Corey Johnson & Nathan Sobo
8455507566 Use _.uniqueId to generate temporary subview divs. 2011-12-29 11:58:59 -06:00
Corey Johnson & Nathan Sobo
79ead1fefb Add Builder.subview / Template.subview 2011-12-29 11:43:14 -06:00
Corey Johnson & Nathan Sobo
81dbe51851 Editor.buildAceEditor is causing root-view-spec to fail because it expects the DOM to have a #main element. I think we need to implement subviews for this to work, but didn't have time to get that working. 2011-12-28 17:30:34 -08:00
Corey Johnson & Nathan Sobo
e617e129e0 Rename Layout to RootView 2011-12-28 17:14:32 -08:00
Corey Johnson & Nathan Sobo
c6fbad8e9e FileFinder is toggleable 2011-12-28 16:21:38 -08:00
Corey Johnson & Nathan Sobo
d181ce1885 Add css to make FileFinder more usable. 2011-12-28 15:42:18 -08:00
Corey Johnson
b6f583fddb Listen for keyup event instead of keypress to update FileFinder list. 2011-12-28 15:35:40 -08:00
Corey Johnson
cb5268314e Focus FileFinder input field when added to layout. 2011-12-28 15:34:47 -08:00
Corey Johnson
7c2f4ff1be Remove focused spec 2011-12-28 15:17:42 -08:00
Corey Johnson & Nathan Sobo
221c14e195 Append a cache buster to atom.css url in stylesheet link tag. 2011-12-28 17:13:57 -06:00
Corey Johnson & Nathan Sobo
c6d90748f7 Meta-t adds file finder to bottom of layout. 2011-12-28 16:30:08 -06:00
Corey Johnson & Nathan Sobo
cc2b28451c Add Template.toHtml 2011-12-28 16:29:40 -06:00
Corey Johnson & Nathan Sobo
3869193d33 Fix html builder bug: functions are considered objects, causing attributes to get clobbered. 2011-12-28 16:29:30 -06:00
Nathan Sobo
0fe85355f8 Merge branch 'view' 2011-12-28 14:22:12 -06:00
Nathan Sobo
886c435b43 Populate url list of file finder as user types. 2011-12-28 14:21:43 -06:00
Nathan Sobo
51c89acc5b Add FileFinder with a findMatches method that returns ranked urls.
Change stringscore.js to be a function that takes a string, rather than extending the prototype.
2011-12-28 13:53:39 -06:00
Nathan Sobo
28ef202a6a Un-focus and fix Layout template. 2011-12-28 12:47:04 -06:00
Corey Johnson
4d9e1d94aa Remove test that is not used 2011-12-27 17:29:59 -08:00
Corey Johnson
06fd50de96 Bind keyPatterns to menuItems.
I don't like the implementation of this, but it works. Next step is cleaning it up.
2011-12-27 17:28:32 -08:00
Nathan Sobo
a622da2904 💄 2011-12-27 19:14:29 -06:00