Commit Graph

1276 Commits

Author SHA1 Message Date
Nathan Sobo
1886b2a48e Merge branch 'master' of github.com:github/atom into global-find
Conflicts:
	spec/app/buffer-spec.coffee
	spec/extensions/command-panel-spec.coffee
	spec/extensions/tree-view-spec.coffee
	src/app/buffer.coffee
	src/extensions/command-panel/command-panel.coffee
	src/extensions/command-panel/keymap.coffee
2012-07-25 13:38:12 -06:00
Nathan Sobo
7270758a9e Focus the active editor after executing a previewed operation 2012-07-25 13:26:57 -06:00
Nathan Sobo
454557b502 Merge branch 'master' into global-find
Conflicts:
	spec/extensions/command-panel-spec.coffee
	src/app/buffer.coffee
	src/extensions/command-panel/command-panel.coffee
	src/extensions/command-panel/keymap.coffee
2012-07-24 17:59:49 -06:00
Corey Johnson
e491fe7bb7 Clean up after tests 2012-07-24 10:52:42 -07:00
Corey Johnson & Nathan Sobo
239fd2f9e6 buffer triggers a 'path-change' event when a file is moved or removed 2012-07-24 10:34:30 -07:00
Nathan Sobo
66f80c2dd8 Backfill coverage for handling of breaks in Project.scan subprocess output
If the stdout callback is fired with partial data, and it ends right after a path, we need to ensure we don't handle it as if there's an extra newline.
2012-07-24 10:07:07 -06:00
Nathan Sobo
c493272be1 Fix click behavior when the event target is a child of the li instead of the li 2012-07-23 20:12:06 -06:00
Nathan Sobo
da7e1b0509 Meta-w on the preview list closes the command panel, not the entire window 2012-07-23 19:32:46 -06:00
Nathan Sobo
a2522f9b19 Clicking on previewed operations selects their buffer range in active editor 2012-07-23 19:25:29 -06:00
Nathan Sobo
5659f9bab1 Destroy preview list's previous operations when populating new ones 2012-07-23 19:05:37 -06:00
Nathan Sobo
c3c4e07a3f Pressing 'enter' on a global search operation selects it in the active editor 2012-07-23 18:16:37 -06:00
Corey Johnson & Nathan Sobo
9658cf61ff Buffer.getPath() returns null when the buffer's file is deleted on disk 2012-07-23 16:35:24 -07:00
Corey Johnson & Nathan Sobo
8d82f3125f When a file is deleted, associated Files trigger the 'remove' event 2012-07-23 16:35:24 -07:00
Corey Johnson & Nathan Sobo
7962c8ff34 When a file is moved (via the fs) associated File objects update their path and trigger a 'move' event 2012-07-23 16:35:24 -07:00
Nathan Sobo
8f0c8633f8 Move-up / move-down on command panel change the selected operation 2012-07-23 15:01:03 -06:00
Nathan Sobo
c1c055319c Remove redundant describe block
This is now tested via pressing enter on the mini-editor
2012-07-23 13:17:42 -06:00
Nathan Sobo
9d938d84ad Test the 'command-panel:focus-preview' event directly
This is more tidy, breaking out all the cases into a describe hierarchy. The previous test was kinda tacked on in an odd spot.
2012-07-23 12:59:06 -06:00
Nathan Sobo
318ddd8148 Ctrl-2 & ctrl-0 mediate visibility focus of command-panel and the preview list
If the command panel is toggled with ctrl-2, then the preview list will show and become focused. If it's toggled with ctrl-0, the preview list won't be shown. But if it's already showing, focus will just switch to the editor, leaving it visible. It's kind of hard to explain but feels intuitive to me to use.
2012-07-23 12:19:54 -06:00
Nathan Sobo
a0e3ce5f1c Merge branch 'master' into global-find
Conflicts:
	spec/extensions/command-panel-spec.coffee
2012-07-23 11:33:26 -06:00
Nathan Sobo
ab47df1987 Make command-panel sticky like tree view is (fit into the "tool panel" scheme)
Esc on the command panel just moves focus back to the editor. Ctrl-0 will move focus back to the panel if it is open but not focused.
2012-07-23 11:29:52 -06:00
Nathan Sobo
1f5416f5dd Merge branch 'master' into global-find
Conflicts:
	spec/extensions/command-panel-spec.coffee
2012-07-20 19:09:28 -06:00
Nathan Sobo
091b47a5d3 Merge branch 'global-find' of github.com:github/atom into global-find 2012-07-20 19:07:46 -06:00
Nathan Sobo
dbfc9d20f7 Fix broken specs due to keybindings change 2012-07-20 19:07:00 -06:00
Nathan Sobo
89e3f729f5 Un-F 💩 2012-07-20 19:06:48 -06:00
Nathan Sobo
c05fa7dc6f Merge branch 'master' into global-find
Conflicts:
	src/app/buffer.coffee
2012-07-20 19:01:38 -06:00
Nathan Sobo
fe9a82b5b8 Merge branch 'master' of github.com:github/atom 2012-07-20 17:56:47 -06:00
Nathan Sobo
e8a892ee3e Start implementing "tool-panel" keymap scheme
Tool panels will be mapped to ctrl-# bindings. If the panel is focused, the # binding closes it. Otherwise the # binding shows it (if needed) and focuses it. The esc key unfocuses the panel, but does not necessarily close it. Meta-w always closes the panel.

This is the scheme. Right now we only have 2 panels:

Command Panel: Ctrl-0, esc still hides it
Tree View: Ctrl-1, esc just unfocuses it
2012-07-20 17:56:36 -06:00
Corey Johnson & Nathan Sobo
cc292b604d Select preview item when preview list is shown 2012-07-20 14:19:19 -07:00
Nathan Sobo
d16328c533 Meta-shift-f opens the command panel pre-populated with Xx/ to find in project 2012-07-20 13:57:33 -06:00
Nathan Sobo
73654a5e3f Improve command panel meta-f spec 2012-07-20 13:56:55 -06:00
Nathan Sobo
411215f6c8 Fix bug where cursor occasionally precedes '/' after pressing meta-f
Now we always move cursor to end when setting the command panel's mini-editor text.
2012-07-20 10:44:49 -06:00
Nathan Sobo
239cba25e4 Use the silver searcher to implement global search
Parsing uses a simple state machine in `Project.scan`.
2012-07-19 17:28:46 -06:00
Nathan Sobo
f37330a218 Fix spec to now that we don't build PreviewItems 2012-07-19 17:27:51 -06:00
Corey Johnson & Nathan Sobo
f0417e7287 Ensure that Project.scan handles evil file fixtures correctly 2012-07-19 11:15:08 -06:00
Corey Johnson & Nathan Sobo
7a85e07cf1 Project.scan handles paths with newlines 2012-07-19 10:27:42 -06:00
Nathan Sobo
31c3cb14f0 💄 2012-07-19 09:17:52 -06:00
Nathan Sobo
f5e46e57fc Use bundled ack instead of grep
Our ack is slightly modified to use `'\0'` characters instead of `':'` in the --nogroup listing. This makes it easier to handle both `':'` characters and newlines in filenames, but we aren't really doing that yet.
2012-07-19 09:17:44 -06:00
Corey Johnson & Nathan Sobo
4b1403724b Ensure that evil filenames do not hose Project.scan 2012-07-18 17:53:53 -06:00
Corey Johnson & Nathan Sobo
12a576ff95 Command panel can be detached after preview without throwing an exception 2012-07-18 15:19:55 -06:00
Corey Johnson & Nathan Sobo
b959d5aa37 Buffers are memoized on project by path 2012-07-18 12:56:09 -07:00
Corey Johnson & Nathan Sobo
af62c081a1 Remove unneeded code 2012-07-18 11:54:23 -07:00
Corey Johnson & Nathan Sobo
d36873f702 Rename Project.open to Project.buildEditSessionForPath 2012-07-18 11:20:13 -07:00
Corey Johnson
52d60df272 Stylize command panel preview 2012-07-18 09:22:32 -07:00
Corey Johnson
bd9cbde54c More specific tests for command panel previews 2012-07-17 20:12:21 -07:00
Corey Johnson & Nathan Sobo
faea4aedcc Show preview list when X x operation completes 2012-07-17 18:39:29 -06:00
Nathan Sobo
dcb8fd71e0 Convert a command panel spec to integration-style to prepare for command preview 2012-07-17 17:03:19 -06:00
Nathan Sobo
0bc9973d9f Don't set the ':' prompt font in command panel because it looks bad afterward 2012-07-17 16:54:29 -06:00
Nathan Sobo
d8189a6fc4 "X x/regex/" command returns operations
Also, passing an EditSession is optional when calling CommandInterpreter.eval. X commands don't require it, but other commands will throw exceptions if it's missing.
2012-07-17 16:32:20 -06:00
Nathan Sobo
4b147c04e5 RootView.proto.open returns the opened edit session 2012-07-17 14:44:04 -06:00
Corey Johnson & Nathan Sobo
126bdc1138 💄 2012-07-17 14:26:20 -06:00