Corey Johnson
960bd1ea70
Show "buffer in conflict" alert after edit session is visible
2012-07-26 13:32:26 -07:00
Corey Johnson
0384f025dd
Add Buffer.isInConflict()
2012-07-26 11:00:16 -07:00
Corey Johnson
42299c6a71
When the active edit session is modified, and its file is then modified by the file system, it displays an alert.
2012-07-26 10:59:58 -07:00
Nathan Sobo
7dc9b2dbf5
Fix bug where short folded lines don't always span the scroll view
2012-07-25 15:32:15 -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
c3fe9aa0b3
Implement refcounting scheme on Buffer
2012-07-17 14:24:33 -06:00
Nathan Sobo
512c1bfdb9
Merge branch 'master' into global-find
2012-07-16 14:56:24 -06:00
Corey Johnson
95c3ea1b74
Rename insert tab event to indent
2012-07-16 10:34:02 -07:00
Corey Johnson
629525383e
Adjusting the width of rendered lines happens automatically with CSS
2012-07-16 09:17:43 -07:00
Corey Johnson
3e3bc99161
Merge branch 'master' into global-find
...
Conflicts:
spec/app/editor-spec.coffee
2012-07-16 09:16:07 -07:00
Corey Johnson
e089b74867
Editor.renderedLines' css width is set to 100% when editor.maxScreenLineLength() is less than Editor.scrollView's width
2012-07-16 09:14:33 -07:00
Corey Johnson & Nathan Sobo
c7b7135388
Temporary fix: When editor is resized, adjust width of rendered lines.
...
We do this to ensure that the lines aren't longer than the scroll view if they don't have to be. We really should use min-width instead because it's automatic. Also, trigger window resize when we make the editor narrower.
2012-07-13 17:17:18 -06:00
Corey Johnson
23b42faa1d
Added EditSession.copy()
...
Also, EditSession only needs a project to be deserialized
2012-07-13 09:35:19 -07:00
Corey Johnson
9dfa7d9439
When splitting an editor only the active edit session is copied to the new editor.
2012-07-13 09:24:14 -07:00
Corey Johnson & Nathan Sobo
d44c648d4b
Editor.renderedLines' width is set to the maximum of either Editor.scrollView's width or the maximum rendered line width
2012-07-13 09:05:38 -07:00
Nathan Sobo
6d7a6f9a92
💄 Replace editor.getBuffer().getPath() w/ editor.getPath()
2012-07-04 12:40:17 -06:00
Nathan Sobo
c90c2e80d6
Replace @buffer reference on Editor with @getBuffer method
2012-07-04 12:34:44 -06:00
Nathan Sobo
fb6aa46531
Editor subscribes to buffer-path-change events on edit sessions, not buffers directly
2012-07-04 12:05:09 -06:00
Nathan Sobo
bdfdf08ea0
Adjust Editor.scrollTop when removing a line reduces the scroll height
...
This eliminates rendering artifacts and jerky scrolling at the bottom of the screen
2012-07-03 11:12:54 -06:00
Nathan Sobo
3ee7c0dc0f
"Scroll" gutter by relatively positioning its line numbers
...
This matches how we scroll lines, and eliminates opportunities for the gutter to get out of sync with the lines. If that happened, it would probably be a bug, but this at least eliminates one source of confusion when debugging.
2012-07-03 11:09:34 -06:00
Nathan Sobo
a38042f89f
Rename Editor.removeActiveEditSession -> destroyActiveEditSession
2012-07-02 19:44:24 -06:00
Nathan Sobo
8fbbd77a23
Commands terminating in a substitution restore their initial selection
2012-07-02 19:35:14 -06:00
Corey Johnson
801a91ec9b
Specs cleanup buffers
2012-06-29 15:38:12 -07:00
Corey Johnson
c3d7d3566f
Buffer listens for changes to file and triggers 'contents-change' event
2012-06-29 15:09:31 -07:00
Corey Johnson
e295d19d51
Editor.prototype.removeActiveEditSession calls destroy on the removed edit session
2012-06-29 15:09:01 -07:00
Nathan Sobo
22515e7ba0
RootView.open takes an 'allowActiveEditorChange' option
...
When the 'allowActiveEditorChange' option is true, RootView will try to activate an existing edit session for the given path on *any* editor, and switch focus there. This will be used by the fuzzy-finder for the meta-b option, which should open the chosen buffer on the editor that contains it, even if it isn't currently active.
2012-06-29 09:48:16 -06:00
Nathan Sobo
423b312e9c
Meta-b opens the fuzzy finder with paths to the current editor's buffers
2012-06-28 12:57:52 -06:00
Nathan Sobo
5b11762989
Fix bug where edit sessions were not properly restored on refresh
2012-06-27 07:53:32 -06:00
Nathan Sobo
65991c686a
Snippets can contain placeholder text (but can't nest yet)
...
Snippet placeholders are managed by adding an "anchor range" to the edit session. An anchor range basically tracks two anchors for the start and the end of the range.
2012-06-26 17:29:32 -06:00
Corey Johnson & Nathan Sobo
af9aec7cbc
SoftWrap state is stored in EditSessions, but it is set and toggled via Editor.
2012-06-20 09:28:23 -07:00
Corey Johnson & Nathan Sobo
d1c1f3cfce
Move autoIndent, tabText, softTabs and softWrap to project
2012-06-20 09:28:23 -07:00
Corey Johnson & Nathan Sobo
4e78b29e81
Replace Editor.setBuffer with Editor.edit
2012-06-20 09:28:23 -07:00
Corey Johnson & Nathan Sobo
1280370fd1
Editor constructor requires an editSession (unless it is a mini buffer)
2012-06-20 09:28:23 -07:00
Corey Johnson & Nathan Sobo
5efc853c36
Replace Editor.activeEditSessionIndex with activeEditSessionIndex method
2012-06-20 09:28:22 -07:00
Corey Johnson & Nathan Sobo
aa10ae383b
Remove suppressBufferCreation from Editor initialize
2012-06-20 09:28:22 -07:00
Corey Johnson & Nathan Sobo
4659fd7dc3
Project.open returns an editSession instead of a buffer.
...
First step in removing the coupling of Editor and Buffer. Editor should get all information about the active buffer from the activeEditSession.
2012-06-20 09:28:22 -07:00
Corey Johnson & Nathan Sobo
db833a4782
Don't apply all editor bindings to mini editors
2012-06-15 17:49:21 -07:00
Corey Johnson & Nathan Sobo
db69ee5627
Calculate gutter dimensions when editor's dimensions are calculated
2012-06-15 17:30:10 -07:00
Nathan Sobo
1c29fc1417
Ctrl-w selects word under cursor
2012-06-15 16:17:45 -06:00
Corey Johnson & Nathan Sobo
9ada2daebd
If command panel selects text within a fold, the fold is destroyed
2012-06-14 14:00:35 -07:00
Nathan Sobo
b59e73edcd
Rename Renderer -> DisplayBuffer
...
The idea is that the DisplayBuffer serves a similar role to the Buffer, except that it's holding content in an arrangement that's optimized for display.
2012-06-13 21:02:30 -06:00
Nathan Sobo
5135f3e066
Editor no longer references Renderer directly
2012-06-13 20:37:30 -06:00
Nathan Sobo
81d2e88c8a
Nix unused methods
2012-06-13 20:17:57 -06:00
Nathan Sobo
ede9309a80
💄
2012-06-13 20:09:33 -06:00
Nathan Sobo
c09c672843
Rename screenLineForRow -> lineForScreenRow
2012-06-13 14:40:23 -06:00
Nathan Sobo
f8e776ea15
📣 💄 for editor.coffee
2012-06-13 14:16:51 -06:00
Nathan Sobo
39c3be9213
Editor 💄
2012-06-13 12:17:48 -06:00
Nathan Sobo
f000686f07
Method name 💄
2012-06-13 11:49:01 -06:00
Nathan Sobo
1a1d3b3cf9
EditSession no longer requires a reference to its Editor
2012-06-13 11:18:47 -06:00
Nathan Sobo
4ccf976501
Pass tabText into EditSession explicitly on construction
2012-06-13 11:13:41 -06:00