228 Commits

Author SHA1 Message Date
Max Brunsfeld
a16b99fa58 Merge pull request #10062 from atom/mb-emit-state-update-on-model-scroll
Emit state update when model's scroll position is changed
2015-12-14 17:38:36 -08:00
Max Brunsfeld
02ab7179ce Emit state update when model's scroll position is changed 2015-12-14 16:56:53 -08:00
Antonio Scandurra
2e7048d8c6 Merge pull request #10028 from atom/ns-remove-presenter-flags
Remove non-essential update guard flags from TextEditorPresenter
2015-12-14 11:43:19 +01:00
Nathan Sobo
3d8058a9a4 Remove failing redundant assertions
The expectNoStateUpdate is sufficient to test the issue in question. Now
that most flags are removed, we can’t count on this part of the state
not being updated when we request a state recompilation.
2015-12-11 14:02:57 -07:00
Nathan Sobo
5cfd3423bf Use internal scroll assignment methods when committing logical positions
This prevents an addition pending assignment and cuts directly to
adjusting the positions.
2015-12-11 13:34:46 -07:00
Nathan Sobo
85c6139579 Don’t force DOM updates in LinesYardstick
Instead, determine the need for a DOM update in the component before
measuring with the lines yardstick, and break `updateSync` into two
explicit pre- and post-measurement phases.
2015-12-10 14:47:05 -07:00
Wliu
d85af0d3f4 💚 again 2015-12-02 21:39:12 -05:00
Wliu
ecd14f3390 💚 let and var are now storage.type.var.js
Refs atom/language-javascript#277
2015-12-02 20:47:27 -05:00
Antonio Scandurra
0218431c62 🐛 Compute content width when the longest row is the first one 2015-11-19 16:38:20 -08:00
Nathan Sobo
b04c26ba30 Discard highlights that end above the visible row range
Fixes #9628
2015-11-18 21:32:05 -08:00
Max Brunsfeld
fefb387d3c Merge branch 'master' into mb-synchronous-scroll-position
Conflicts:
	src/text-editor-presenter.coffee
	src/text-editor.coffee
2015-11-10 16:23:39 -08:00
Nathan Sobo
98c420a408 Wait for nextTick after presenter updates
This gives any nextTick callbacks in the model a chance to complete
before proceeding with tests.
2015-11-09 00:35:34 -07:00
Nathan Sobo
29bb1bb31b Add TextEditor-level marker layers and use them for selections 2015-11-09 00:35:31 -07:00
Max Brunsfeld
cdaac9dfcc wip 2015-11-09 00:35:18 -07:00
Max Brunsfeld
b58752da38 Keep model's logical scroll position up to date
* Remove scrollRow and scrollColumn properties from the presenter
* Assign presenter's scrollTop and scrollLeft based on model's first visible
  screen row and column, once the presenter has the required measurements.
2015-11-06 11:16:56 -08:00
Max Brunsfeld
4d40e28c6b Remove presenter constructor parameters that aren't used in production 2015-11-06 09:56:58 -08:00
Antonio Scandurra
b03aa4bf40 Merge branch 'master' into as-cjk-soft-wrap
# Conflicts:
#	spec/display-buffer-spec.coffee
2015-10-16 10:23:44 +02:00
Antonio Scandurra
20b0523833 💚 2015-10-15 16:41:27 +02:00
Max Brunsfeld
32780e2823 Merge branch 'master' into ns-alternative-test-env
Conflicts:
	package.json
2015-10-14 14:12:42 -07:00
Antonio Scandurra
582fa571b8 📝 Better spec description 2015-10-14 16:20:42 +02:00
Antonio Scandurra
6b01811d20 Avoid stack overflow when scrolling with non-integer values
We were mistakenly using the rounded scroll top to guard against such cases.
This fixes it by using `@realScrollTop` instead.
2015-10-14 16:10:12 +02:00
Nathan Sobo
4c51d29868 Merge remote-tracking branch 'origin/master' into ns-alternative-test-env 2015-10-07 16:10:29 -05:00
Antonio Scandurra
112ee01bd9 Don't use atom globals in TextEditorElement
...except when the element is instantiated via HTML
2015-10-07 15:25:01 -05:00
Nathan Sobo
51abab930d Parameterize config on editor instead of using global atom.config 2015-10-07 15:24:58 -05:00
Antonio Scandurra
0bee6a0cc1 Avoid invalidating state when clearing screen rows to measure 2015-10-05 16:10:58 +02:00
Antonio Scandurra
2ffa7da59e 🐎 Remove rows to measure in the next frame 2015-10-02 12:38:19 +02:00
Antonio Scandurra
e94ff33d83 🐛 Exclude invalid tiles 2015-10-01 12:58:02 +02:00
Antonio Scandurra
2b6973d4b1 Fix a 🐛 where some invalid lines were being measured 2015-09-30 17:44:43 +02:00
Antonio Scandurra
e43e1ed22e Merge branch 'master' into as-double-reflow-measurements
# Conflicts:
#	src/text-editor-presenter.coffee
2015-09-30 12:40:55 +02:00
Antonio Scandurra
214f42b2e7 🎨 Unify ::updateScroll... and ::commitPendingScroll... 2015-09-30 12:32:07 +02:00
Antonio Scandurra
cc98cab917 Better rows per page calculation 2015-09-30 09:17:43 +02:00
Antonio Scandurra
5dcfea0a82 💚 Fix TextEditorPresenter specs 2015-09-29 16:11:59 +02:00
Antonio Scandurra
b481250757 Always render the longest screen row 2015-09-29 11:41:44 +02:00
Antonio Scandurra
49577313e4 Remove yardstick to start with a clean slate 2015-09-29 10:25:54 +02:00
Antonio Scandurra
e648d880ed Manually set rows per page in the model 2015-09-29 08:24:28 +02:00
Antonio Scandurra
47b6f043e9 Merge branch 'master' into as-double-reflow-measurements
# Conflicts:
#	src/text-editor-presenter.coffee
2015-09-28 11:19:56 +02:00
Antonio Scandurra
0e72593a0c Enforce a 'last scroll wins' model for batched scrolls 2015-09-25 10:43:20 +02:00
Antonio Scandurra
d65b5d1793 Revert "Maintain scroll history"
This reverts commit 2e6bb53303.
2015-09-25 10:31:48 +02:00
Antonio Scandurra
2e6bb53303 Maintain scroll history 2015-09-24 16:25:58 +02:00
Antonio Scandurra
365a586466 Ensure realScroll... is up to date with scroll... 2015-09-24 15:16:40 +02:00
Antonio Scandurra
1f81c633e0 Serialize state using logical coordinates 2015-09-24 09:01:51 +02:00
Antonio Scandurra
0f7d88c77b 💚 Fix remaining failures in TextEditorPresenter 2015-09-23 16:14:15 +02:00
Antonio Scandurra
b198acc995 Fix soft wrapping when editorWidthInChars is used 2015-09-23 15:34:44 +02:00
Antonio Scandurra
fffcfb3405 Save scroll positions in the model to serialize 'em 2015-09-23 15:34:44 +02:00
Antonio Scandurra
60fdd3793f Stop reporting scroll positions to the model 2015-09-23 15:34:44 +02:00
Antonio Scandurra
8463d5c59d Start porting DisplayBuffer specs 2015-09-23 15:34:43 +02:00
Antonio Scandurra
d3b1d309ba Make sure scroll positions are integers 2015-09-23 15:34:41 +02:00
Antonio Scandurra
ddd7aacd9d 💚 Fix TextEditorComponent specs 2015-09-23 15:34:22 +02:00
Antonio Scandurra
68e2d7e7e4 wip 2015-09-22 17:30:51 +02:00
Antonio Scandurra
b5a59017d5 wip 2015-09-22 16:20:15 +02:00