Nathan Sobo
2c5888e25a
Add ::state.content.scrollHeight to TextEditorPresenter
2015-02-03 15:05:19 -07:00
Nathan Sobo
de0b5c4c62
Reorganize specs on TextEditorPresenter to mirror structure of state
2015-02-03 15:05:18 -07:00
Nathan Sobo
59b109654e
Fix spec
2015-02-03 15:05:18 -07:00
Nathan Sobo
e9d6e36b6a
Remove unused code
2015-02-03 15:05:18 -07:00
Nathan Sobo
fe5ee524a8
Show/hide line decorations when TextEditor::mini changes
2015-02-03 15:05:18 -07:00
Nathan Sobo
9a496e62cb
Don’t apply line decorations to mini editors
2015-02-03 15:05:18 -07:00
Nathan Sobo
a513cf260c
Don’t apply line decorations to last line if it ends at column 0
2015-02-03 15:05:17 -07:00
Nathan Sobo
62a1210604
Honor the ‘onlyEmpty’ and ‘onlyNonEmpty’ line decoration options
2015-02-03 15:05:17 -07:00
Nathan Sobo
773482467e
Handle updates to line decorations in TextEditorPresenter
...
This isn’t a super efficient approach, but it is simple and should be
correct. Once we move all state to the presenter we can perform a more
efficient synchronous update when markers change.
2015-02-03 15:05:17 -07:00
Nathan Sobo
5d8f831136
Instantiate presenter with minimal parameters in specs
2015-02-03 15:05:17 -07:00
Nathan Sobo
9c1efb6ba0
Simplify assertions
2015-02-03 15:05:17 -07:00
Nathan Sobo
568b9f6999
Add lineStateForScreenRow helper
...
The access pattern is pretty noisy in the specs
2015-02-03 15:05:16 -07:00
Nathan Sobo
06ef0792ce
Add .decorationClasses to line state on initial render
2015-02-03 15:05:16 -07:00
Nathan Sobo
bf9428aa19
Read scrollWidth from the presenter state when rendering
2015-02-03 15:05:16 -07:00
Nathan Sobo
64ef8add71
Remove unused argument
2015-02-03 15:05:16 -07:00
Nathan Sobo
32a1854b7c
Use TextEditorPresenter::state.content.indentGuidesVisible
2015-02-03 15:05:16 -07:00
Nathan Sobo
590391a0ce
Update .content.indentGuidesVisible when editor’s grammar changes
2015-02-03 15:05:15 -07:00
Nathan Sobo
d0b52538b2
Add content.indentGuidesVisible to TextEditorPresenter::state
2015-02-03 15:05:15 -07:00
Nathan Sobo
22942ae1bd
Remove unused local vars
2015-02-03 15:05:15 -07:00
Nathan Sobo
0a9f7586ae
Add top-level .content object to presenter state
...
It contains the .scrollWidth and then all the lines in a nested .lines
object. The .width has been removed from each line and replaced with
.content.scrollWidth.
2015-02-03 15:05:15 -07:00
Nathan Sobo
3ec4b632ba
Update TextEditorPresenter with scoped character widths in component
...
Signed-off-by: Max Brunsfeld <maxbrunsfeld@gmail.com >
2015-02-03 15:05:15 -07:00
Nathan Sobo
115d764725
Handle scoped character widths in TextEditorPresenter
...
Signed-off-by: Max Brunsfeld <maxbrunsfeld@gmail.com >
2015-02-03 15:05:14 -07:00
Nathan Sobo
20bb14da81
Start using TextEditorPresenter in LinesComponent
...
Removed shouldComponentUpdate because we will always update the
component manually once this is done, but I don’t want to accidentally
prevent the component from updating during the conversion process.
This commit has a failing spec due to the presenter not accounting for
individual character widths.
2015-02-03 15:05:14 -07:00
Nathan Sobo
a3fb8b3aaa
Disable spec until presenter approach stabilizes
2015-02-03 15:05:14 -07:00
Nathan Sobo
9e6aa8f873
Include more fields in line state
2015-02-03 15:05:14 -07:00
Nathan Sobo
e2693da225
Fix endRow calculation
2015-02-03 15:05:14 -07:00
Nathan Sobo
9a070e7f6d
Include endOfLineInvisibles in presenter state
2015-02-03 15:05:14 -07:00
Nathan Sobo
db5059626f
Use getters in TextEditorPresenter internally for consistency
...
::clientHeight is conditionally computed in the getter, so lets use them
everywhere for consistency.
2015-02-03 15:05:13 -07:00
Nathan Sobo
7095ccd32b
Make all lines visible if no external client height is assigned
2015-02-03 15:05:13 -07:00
Nathan Sobo
ac463143dd
Add 1 pixel to scrollWidth to account for cursor if not soft-wrapped
2015-02-03 15:05:13 -07:00
Nathan Sobo
2296d2d378
Account for overdrawMargin of startRow when computing the endRow
2015-02-03 15:05:13 -07:00
Nathan Sobo
143183aa25
🎨
2015-02-03 15:05:13 -07:00
Nathan Sobo
0f4bcac8d4
Add 1 to the last row to ensure it’s visible
2015-02-03 15:05:12 -07:00
Nathan Sobo
b09b54800f
Include line text in presenter state
2015-02-03 15:05:12 -07:00
Nathan Sobo
2120c3c298
Instantiate presenter in TextEditorComponent and update measurements
2015-02-03 15:05:12 -07:00
Nathan Sobo
f4d8ef8315
Add width to lines state based on the computed scrollWidth
...
This is based on the ::baseCharacterWidth property for now. To be fully
correct, we need to base the scrollWidth on the actual width of
individual characters.
2015-02-03 15:05:12 -07:00
Nathan Sobo
a1c2e1bb66
Update TextEditorPresenter when the editor’s content changes
2015-02-03 15:05:12 -07:00
Nathan Sobo
5a2bbc945b
Handle changing ::lineHeight in TextEditorPresenter
2015-02-03 15:05:12 -07:00
Nathan Sobo
9c2ed478cd
Handle changing ::clientHeight in TextEditorPresenter
2015-02-03 15:05:11 -07:00
Nathan Sobo
880e1ce1f0
Handle changing ::scrollTop in TextEditorPresenter
2015-02-03 15:05:11 -07:00
Nathan Sobo
f0920bf63b
Start on TextEditorPresenter with lines state
2015-02-03 15:05:11 -07:00
Kevin Sawicki
37a85bcdd0
⬆️ language-css@0.27
2015-02-03 13:50:45 -08:00
Kevin Sawicki
47bd093d68
🐎 Load 6to5 version directly from package.json
...
This prevents the entire library from being required just to check the
cache so when 6to5 is being used and all files are cached it should shave
~250ms off startup.
2015-02-03 13:36:26 -08:00
Kevin Sawicki
a788a7e9b7
⬆️ language-xml@0.28
2015-02-03 10:53:29 -08:00
Kevin Sawicki
9101da11ce
⬆️ update-package-dependencies@0.8
2015-02-03 10:41:26 -08:00
Max Brunsfeld
f7159181ac
📝 Tweak docs for new service APIs
2015-02-03 10:21:23 -08:00
Kevin Sawicki
1784a7f726
⬆️ Upgrade one themes
2015-02-03 10:20:23 -08:00
Kevin Sawicki
a28a8447a7
⬆️ language-json@0.12
2015-02-03 10:18:25 -08:00
Kevin Sawicki
197e74f18d
Prepare 0.178
2015-02-03 09:43:05 -08:00
Kevin Sawicki
5cae6f20c4
Merge pull request #5368 from atom/ld-jasmine-ref-fix
...
Fix link to wrong version of Jasmine
v0.177.0
2015-02-03 09:06:11 -08:00