Commit Graph

224 Commits

Author SHA1 Message Date
Antonio Scandurra
eb80a393a8 Merge branch 'master' into as-double-reflow-measurements 2015-09-21 11:17:05 +02:00
Antonio Scandurra
13f82280a0 💚 Fix presenter specs 2015-09-21 11:05:35 +02:00
Antonio Scandurra
4318de43c9 wip 2015-09-20 21:02:25 +02:00
Antonio Scandurra
af41b71cd8 Redesign LinesYardstick 2015-09-20 12:10:09 +02:00
Nathan Sobo
2fdd40bd05 Remove SpacePen from lines-component 2015-09-18 20:48:49 -06:00
Antonio Scandurra
91bb8f518d Merge branch 'master' into as-continuous-reflow 2015-09-17 16:58:37 +02:00
Antonio Scandurra
f86c9b2331 Let TextEditorComponent manage DOMElementPool 2015-09-15 10:58:24 +02:00
Antonio Scandurra
c8c69a99b9 Release free nodes after destroying TextEditor 2015-09-15 10:36:47 +02:00
Antonio Scandurra
f0bc6ca23a 🎨 Some renaming 2015-09-14 20:27:25 +02:00
Antonio Scandurra
ece15b2a24 Recycle tile nodes (and descendants) 2015-09-14 14:48:30 +02:00
Antonio Scandurra
9eed6c7834 Add "Continuous Reflow" mode 2015-09-07 13:25:13 +02:00
Antonio Scandurra
b5c0f5ac0b Change lines container height based on boundingClientRect 2015-08-26 16:21:51 +02:00
Antonio Scandurra
9a81d2ec62 🐛 Create new stacking context for tiles
To create a new stacking context we need to isolate the container div. This
fixes a visual glitch on the wrap-guide whenever there are more than 5 tiles.
2015-07-28 16:00:46 +02:00
Antonio Scandurra
4e412755bf Put tiles into a separate div
So that a new stacking context is created and tiles won’t overlap other
elements, such as cursors or the wrap-guide.
2015-07-27 20:29:02 +02:00
Antonio Scandurra
a7ff49ebaa 🎨 2015-06-13 17:36:20 +02:00
Antonio Scandurra
e893b5105b Remove presenter as a dependency where possible
Although we have a couple of components which still access it, we
agreed it would have been just better to avoid relying on
`TextEditorPresenter` where possible and use it purposefully in other
places (e.g. `LinesComponent` which needs it to store text
measurements).

/cc: @jssln
2015-06-13 14:18:36 +02:00
Antonio Scandurra
b6049857ed 🎨 2015-06-12 19:00:15 +02:00
Antonio Scandurra
374aaac7b5 Rename to LinesTileComponent 2015-06-12 18:32:40 +02:00
Antonio Scandurra
119f297280 Merge branch 'master' into as-tiled-gutter
Conflicts:
	src/lines-component.coffee
	src/text-editor-presenter.coffee
2015-06-09 11:22:25 +02:00
Antonio Scandurra
cec6959e08 Extend highlights to the full editor width 2015-06-08 18:58:04 +02:00
Antonio Scandurra
da05e1e234 wip 2015-06-05 16:05:30 +02:00
Antonio Scandurra
8abdc67e7e Revert "Use clientHeight for line-numbers and lines containers"
This reverts commit f2bab35f57c05d5a0bb21e9fb02117f802ff278b. It didn't actually
improve performance, nor memory usage, therefore I decided to avoid changing it
for the time being.
2015-06-04 15:19:42 +02:00
Antonio Scandurra
57fd553c69 Use clientHeight for line-numbers and lines containers 2015-06-04 15:18:10 +02:00
Antonio Scandurra
44991f1fb3 Make LineNumberGutterComponent a TiledComponent 2015-06-04 15:17:39 +02:00
Antonio Scandurra
7769c464da Extract TiledComponent 2015-06-04 15:17:38 +02:00
Antonio Scandurra
c9a159aab3 🔥 Remove unused requires 2015-05-21 11:16:28 +02:00
Antonio Scandurra
1a5e2fe5dd 🎨 2015-05-21 10:48:04 +02:00
Antonio Scandurra
efeb129cff Rename LinesComponent to TileComponent 2015-05-21 10:47:23 +02:00
Antonio Scandurra
299ee5dbf3 Merge branch 'master' into as-tiled-rendering
# Conflicts:
#	spec/text-editor-presenter-spec.coffee
#	src/lines-component.coffee
#	src/text-editor-presenter.coffee
2015-05-21 10:46:52 +02:00
Antonio Scandurra
f49078d394 wip 2015-05-21 10:40:37 +02:00
Antonio Scandurra
1a18cda000 💚 Fix remaining specs 2015-05-21 10:00:46 +02:00
Nathan Sobo
2beb6c0fe0 Pass TokenIterator reference instead of using global singleton
Adds an extra reference to each tokenized line but is also more sane.

/cc @maxbrunsfeld
2015-05-20 19:29:38 +02:00
Antonio Scandurra
dbc57abeb0 🔥 Remove obsolete node pool 2015-05-18 11:50:13 +02:00
Nathan Sobo
4235c15dd8 🔥 debugger 2015-05-14 21:43:45 +02:00
Antonio Scandurra
5201e4547b 🎨 2015-05-14 19:36:05 +02:00
Antonio Scandurra
723bf5a302 Reimplement lineNodeForScreenRow 2015-05-14 18:30:29 +02:00
Antonio Scandurra
6be88fd645 Scroll every single tile left/right 2015-05-14 11:36:20 +02:00
Nathan Sobo
0ca967d6b0 Switch character measurement to TokenIterator
Instead of using TokenizedLine::tokens shim
2015-05-14 01:10:29 +02:00
Nathan Sobo
121e42deba Use TokenIterator to build line HTML 2015-05-14 00:55:06 +02:00
Nathan Sobo
d7f5588904 Generate line HTML based on tags instead of tokens
This avoids creating a bunch of tokens as temporary objects since they
are no longer stored.
2015-05-13 21:57:53 +02:00
Antonio Scandurra
02838ad193 Recycle tiles 2015-05-06 09:46:47 +02:00
Antonio Scandurra
de53e1dccc Fix char measurement 2015-05-05 18:36:10 +02:00
Antonio Scandurra
3e78fe3019 wip 2015-05-05 16:21:37 +02:00
Jess Lin
79b460a0ca [Gutter] Add ::getDomNode method to all 'components' 2015-04-22 07:28:59 -07:00
Ben Ogle
db35022d0e Remove OverlayManager from the LinesComponent 2015-04-01 17:40:59 -07:00
Kevin Sawicki
590a4b0fd5 Add explicit return after for loop 2015-03-19 11:48:40 -07:00
Antonio Scandurra
0dca5a5fcd Encapsulate state update inside TextEditorPresenter#getState 2015-02-28 09:25:53 +01:00
Nathan Sobo
622caee446 Correctly store which lines we have already measured 2015-02-24 11:36:01 -07:00
Nathan Sobo
fd603a0cbc Move new character measurement to end of full update to avoid reflow 2015-02-19 17:14:55 -07:00
Nathan Sobo
8552acaec2 🐎 Optimize line node updates 2015-02-19 17:14:54 -07:00