Corey Johnson
81fc8d417d
Add Git.isModified(path)
2012-11-02 15:35:21 -07:00
Kevin Sawicki
094b5a3604
💄
2012-11-02 15:33:39 -07:00
Kevin Sawicki
20c69118ff
Decorate ignored files/folders in tree-view
2012-11-02 15:33:38 -07:00
Kevin Sawicki
28db13dbc1
Add specs for status bar branch label
2012-11-02 15:33:37 -07:00
Kevin Sawicki
8e8ab4ff94
Add getPath helper
2012-11-02 15:33:37 -07:00
Kevin Sawicki
1609fd61ec
Set text before showing
2012-11-02 15:33:37 -07:00
Kevin Sawicki
8d623f99fb
Update branch text from subscribeToBuffer
2012-11-02 15:33:37 -07:00
Kevin Sawicki
a3ef53f8e6
Return repository for all paths
2012-11-02 15:33:07 -07:00
Kevin Sawicki
b2b00a7b39
Update branch text on save
2012-11-02 15:33:07 -07:00
Kevin Sawicki
e4fb12a398
Add octicon to branch label
2012-11-02 15:31:11 -07:00
Kevin Sawicki
88cdff9d26
Return full HEAD when unshortened
2012-11-02 15:31:11 -07:00
Kevin Sawicki
d66315dd21
Abbreviate SHA-1s when HEAD is detached
2012-11-02 15:31:10 -07:00
Kevin Sawicki
14302c491d
Show current branch in status bar
2012-11-02 15:31:10 -07:00
Nathan Sobo
3fbf5653c4
Update the status bar asynchronously on cursor move / buffer change
...
This keeps it out of the synchronous path from pressing a key to seeing it inserted on screen.
2012-11-02 15:46:33 -06:00
Nathan Sobo
adbcb9f49e
Only consider BindingSets with a binding for first keystroke of event
...
The keymap was slow because it would find the binding sets with matching selectors for every ancestor of every keydown event. The problem was, it was considering a lot of binding sets that didn't even have a binding for the event in question. Now we index all binding sets on what bindings they contain, and filter them by that first. Rejecting an event that has no bindings is almost instantaneous now.
2012-11-02 14:13:03 -06:00
Nathan Sobo
2c211ba504
Remove ability to associate a binding set with a function
...
This was cool, but it's really hard to optimize the keymap with this feature because we never know if a keystroke will match against a binding set with a function, which will force us to always consider this binding set against every key event.
2012-11-02 13:39:21 -06:00
Nathan Sobo
0c3498d29f
Cleanup/optimize Keymap#keystrokeStringForEvent
2012-11-02 13:25:33 -06:00
Nathan Sobo
045cdda41d
Fix cursor line highlight style
2012-11-02 12:16:03 -06:00
Corey Johnson
83329567b9
Use the file's first line to determine the grammar.
...
Only when it cannot be determined by the file's extension fails. Fixes #75
2012-11-01 17:47:31 -07:00
Corey Johnson
41291021c4
Use entire filePath to determine its grammar
2012-11-01 17:47:31 -07:00
Nathan Sobo
c6075b0fa6
Optimize highlighting of the current line in the gutter
2012-11-01 17:37:50 -06:00
Nathan Sobo
1d838e920c
Cache the maxScreenLineLength
...
Computing this requires a full scan of all screen lines. Here I keep it updated as I add / remove lines. If I remove the line with the max length, I am forced to scan all of them again. But this happens relatively rarely. Usually I only need to scan the lines I'm replacing and inserting.
2012-11-01 17:37:50 -06:00
Corey Johnson
abfe3b93cc
Add css styling to CommandPanel errors
2012-11-01 15:56:24 -07:00
Corey Johnson
9afda88c8c
CommandPanel shows command errors
2012-11-01 15:56:24 -07:00
Corey Johnson
79a7d35798
CommandPanel commands have optional error messages
2012-11-01 15:56:23 -07:00
Corey Johnson
837005176c
animation 💄
2012-11-01 15:56:23 -07:00
Corey Johnson
e56ac29b15
Clean up test for escaped characters in command panel
2012-11-01 15:56:22 -07:00
Corey Johnson
8681898a42
CommandPanel escapes characters with a backslash in front of them
2012-11-01 15:56:22 -07:00
Corey Johnson
eed474435d
💄
2012-11-01 15:56:22 -07:00
Corey Johnson & Nathan Sobo
c88e9f95ac
s and x commands operate on the entire buffer if no address specified.
...
(and there is no selection)
2012-11-01 15:56:22 -07:00
Corey Johnson
7d6539068b
if no address if specified for the first command, the address range become the entire file
2012-11-01 15:56:21 -07:00
Nathan Sobo
66518a3c67
Don't have autocompleter rebuild its word list on every keystroke
2012-11-01 16:04:42 -06:00
Nathan Sobo
ea87c55db5
Don't clear the selection if it's empty
...
This avoids emitting selection change events when they aren't really needed. This extra event was causing the highlighted line to be updated when it didn't need to be.
2012-11-01 14:50:51 -06:00
Nathan Sobo
9cbcc9e7e3
Eliminate another unnecessary call to highlightCursorLine
2012-11-01 14:43:43 -06:00
Nathan Sobo
a0770c41db
Avoid some calls to highlightCursorLine
2012-11-01 14:33:34 -06:00
Nathan Sobo
aa3405cb2b
Cache the memory contents of Buffer for better performance
2012-11-01 14:09:58 -06:00
Nathan Sobo
2efc91aad1
Optimize highlightCursorLine by using cached element references
2012-11-01 13:51:22 -06:00
Nathan Sobo
5249e5e69c
Fix spec failures caused by editor css changes
2012-11-01 12:25:33 -06:00
Nathan Sobo
42d0c53a60
Use min-width on rendered lines to replace js logic w/ CSS
2012-11-01 11:49:50 -06:00
Nathan Sobo
5f9e248aec
Clip the screen position after translating it from a buffer position
...
This is instead of applying redundant clipping logic directly within the translation method.
2012-11-01 07:15:51 -06:00
Nathan Sobo
085adb72ce
Pass translation options through when setting buffer position
2012-11-01 07:15:51 -06:00
Nathan Sobo
00bcb7a1b9
Make position translation understand hard tabs
2012-11-01 07:15:51 -06:00
Nathan Sobo
df1a7e1866
Make gutter rendering specs pass
2012-11-01 07:15:51 -06:00
Nathan Sobo
3d12269315
DisplayBuffer specs passing with greatly simplified LineMap
2012-11-01 07:15:51 -06:00
Nathan Sobo
8ae08dc21d
I don't think we need this line anymore
2012-11-01 07:15:50 -06:00
Corey Johnson
dbf8639375
Rename anchor.ignoreEqual to anchor.ignoreChangesStartingOnAnchor
2012-10-31 14:27:31 -07:00
Corey Johnson
84ea1017f4
Anchor.ignoreEqual works properly
...
The anchor ignores buffer changes when ignoreEqual is true and the oldRange.start == anchor.position
2012-10-31 14:27:21 -07:00
Nathan Sobo
887200de86
Use cached disk contents instead of signature for Buffer.isModified
...
Computing the signature was really slow for large files. Keeping a cached copy of the disk contents and comparing directly costs less in the benchmark. We'll have to turn on the status bar in benchmarks to see if the comparison is too expensive.
2012-10-31 12:36:14 -06:00
Nathan Sobo
980c5d6b11
Add support for native tracing w/ atom.begin/endTracing in console.
...
* Open the dev tools console
* Call `atom.beginTracing()`
* Do stuff
* Call `atom.endTracing()`
* Save the file somewhere
* Open `about:tracing` in chrome and load the file
* Inspect away!
2012-10-31 11:39:58 -06:00
Corey Johnson & Nathan Sobo
b85f3c47eb
Rewrite Seleciton.setScreenRange in terms of setBufferRange
2012-10-30 17:07:15 -07:00