Commit Graph

22 Commits

Author SHA1 Message Date
Nathan Sobo
88e246b622 Hide the cursor when the selection is not empty 2012-10-29 15:51:32 -06:00
Corey Johnson & Nathan Sobo
2c763a4d48 💄 2012-10-01 15:44:56 -07:00
Nathan Sobo
c3e748a17c WIP: Use rake to start compiling resources (like require.coffee) 2012-08-26 16:29:46 -05:00
Nathan Sobo
c2c8724ad0 Initial commit 2012-08-10 13:32:19 -06:00
Nathan Sobo
4e74f1bf2e Fix issues with selections when switching between edit sessions
SelectionViews now update their appearance immediately when constructed. We can't assume they're empty. CursorView doesn't do a blanket `off()` call to its model when it's removed anymore, which was screwing up selection updates when switching back. Only attach selections / cursors when the editor is attached, and extract everything we do into a `renderWhenAttached` method.
2012-06-11 22:01:27 -06:00
Nathan Sobo
cffadcf4a8 Remove CompositeCursor and Selection. Move their remaining methods into Editor 2012-06-11 10:11:33 -06:00
Nathan Sobo
8c52fedd0d Remove last of the extraneous CursorView methods 2012-06-10 21:53:54 -06:00
Nathan Sobo
e0aa49cb53 More CompositeCursor 💄. Preparing to axe it 2012-06-10 21:43:24 -06:00
Nathan Sobo
80cd63227a Remove methods from CompositeCursor + more 💄 2012-06-08 19:08:44 -06:00
Nathan Sobo
b0d1dd217b Cursor *model* clears selection when cursor moves, not the view. 2012-06-08 18:49:18 -06:00
Nathan Sobo
31bd38dfcc Move merging of intersecting selections into EditSession and the Selection model 2012-06-08 13:26:54 -06:00
Nathan Sobo
f3144fe0d8 Base the screen range of the selection view on the selection model 2012-06-08 11:22:12 -06:00
Nathan Sobo
5a37a39b9b Tie creation of SelectionViews to adding Selection models to the EditSession 2012-06-07 18:20:00 -06:00
Nathan Sobo
608c4f48bf Remove more logic from cursor view 2012-06-07 16:58:45 -06:00
Nathan Sobo
f406786a3a Editor subscribes to EditSession for screen line changes. Remove more movement logic from cursor view. 2012-06-07 16:31:40 -06:00
Nathan Sobo
624cf3cbd3 EditSession informs cursor models of buffer changes (instead of Editor informing cursor views) 2012-06-07 15:41:35 -06:00
Nathan Sobo
d872d12e04 Transfer word movement methods into cursor model 2012-06-07 15:33:01 -06:00
Nathan Sobo
21ae28657c Move moveTo(Beginning/FirstCharacter/End)OfLine methods to cursor model
Also, implement move to end of line by adding a clip option to setBufferPosition and passing [row, Infinity]
2012-06-07 11:28:40 -06:00
Nathan Sobo
fccc88acaf Move moveLeft/Right/ToTop/ToBottom methods into cursor model 2012-06-07 10:57:21 -06:00
Nathan Sobo
ddf29e89ec Slave CursorView's screen position to its cursor model. Move moveUp and moveDown methods into cursor model. 2012-06-07 10:47:30 -06:00
Nathan Sobo
7387c553c3 Start introducing Cursor model in EditSession
The old cursor view still does most of the work, but to add a new cursor view we now must add a cursor model to the edit session at the correct position. The editor watches the 'add-cursor' event on edit session and add a corresponding CursorView to the CompositeCursor whenever a model is added. Next step: have the cursor view observe the cursor model and shadow its changes in position.
2012-06-06 21:52:19 -06:00
Nathan Sobo
e167afd794 Rename Cursor to CursorView in preparation for a Cursor model in EditSession 2012-06-06 18:01:08 -06:00