Commit Graph

5499 Commits

Author SHA1 Message Date
Kevin Sawicki
b7dddeebfe Guard against no hosted git info
Closes #6693
2015-05-07 13:24:03 -07:00
Max Brunsfeld
75289ee3dd Fix some integration test flakiness 2015-05-06 10:32:56 -07:00
Jessica Lord
1d69d83410 Merge pull request #6582 from atom/jl-short-url-redo
Normalize short urls for repositories in package.json
2015-04-30 15:00:05 -07:00
Max Brunsfeld
570c424eae Merge pull request #6563 from atom/ns-fix-scroll-width-with-folds
Fix scroll width calculation when longest line is folded
2015-04-30 14:26:34 -07:00
Jessica Lord
c228c3fcf7 Add spec and feature to test normalizing repository short urls 2015-04-30 11:23:11 -07:00
Kevin Sawicki
c347b41c55 Merge pull request #6539 from atom/mq-reset-font
Reset font size to window's starting font size
2015-04-30 10:50:43 -07:00
Machiste Quintana
4fb58317ec 🔥 Redundant lines 2015-04-30 13:41:47 -04:00
Lee Dohm
be2e340412 Remove focus 2015-04-29 18:16:49 -07:00
Lee Dohm
eda1b743d7 Fix spec to expect whitespace to be removed 2015-04-29 18:14:16 -07:00
Lee Dohm
22c915a8fd Fix most of the specs 2015-04-29 17:52:38 -07:00
CaptSaltyJack
adb017851b Fixed glaring mistake in test spec 2015-04-29 17:09:32 -07:00
CaptSaltyJack
a8283c3c9b Added delete-to-next/previous-word-boundary
This is better behavior for alt-del/backspace operations, is less
"greedy" and doesn't eat up excess characters.
Also set default key mappings to these, feel free to trash my changes
to keymaps/darwin.cson. Though I do feel this should be default
behavior, personally.
2015-04-29 16:31:07 -07:00
Ben Ogle
68a6af4873 Merge pull request #6572 from atom/bo-measure-gutter
Measure gutter width rather than calculating the width
2015-04-29 16:13:03 -07:00
Ben Ogle
d3ef6c91af Measure gutterWidth, and pass to presenter 2015-04-29 15:47:44 -07:00
Kevin Sawicki
a13c49d679 Merge pull request #6570 from jssln/gutter
[Gutter] Clear custom gutter decorations from previous usages of a custo...
2015-04-29 14:26:28 -07:00
Kevin Sawicki
da0c087675 Add BufferedProcess spec for invoking callbacks 2015-04-29 09:43:41 -07:00
Kevin Sawicki
920def7eb0 Add spec for thrown spawn error 2015-04-29 09:20:21 -07:00
Jess Lin
5e766b6eee [Gutter] Clear custom gutter decorations from previous usages of a custom gutter element 2015-04-29 08:53:04 -07:00
Nathan Sobo
1d238dd927 Fix scroll width calculation when longest line is folded
With the presenter we started clipping screen positions prior to
translating them to pixel positions. This interacts with the current
clipping behavior on folded lines (which should change) where the cursor
is always clipped to 0. So when the longest line was also folded we
were miscalculating the width. 🙈!

The removal of clipping also causes us to calculate the width based on
the trailing whitespace of soft-wrapped lines, which I actually think
is an improvement but it is slightly different.
2015-04-28 23:30:13 -06:00
Machiste Quintana
2bd7cc9a99 Reset font size if editor.fontSize is changed from anywhere 2015-04-28 22:58:35 -04:00
Nathan Sobo
192997c8cf Clear line numbers from previous usages of the gutter element
In adding custom gutter APIs, I suggested to @jssln that we associate
the gutter model objects with DOM nodes in the view registry to make
it easy for package authors to get at the view layer for a particular
gutter. She also applied this treatment to the line numbers gutter,
which makes sense.

However, using the view registry opened up an unexpected wrinkle…

When you detach an editor, we need to tear down all the associated view
logic because at that point, we don’t know whether the element is about
to be reattached or whether it’s going to get garbage collected. In the
case where we reattach, we end up constructing a new TextEditorComponent
for the element. When this happens, the gutter component requests a DOM
node for the gutter from the view registry. Except in this case the
DOM element isn’t empty because it was already used by a different
component for the same element before it was detached. The fix is simply
to always clear out the line numbers to ensure we start in a clean
state.

@jssln: You should apply this same fix to custom gutters or we’ll see
the same issues.
2015-04-28 20:05:25 -06:00
Machiste Quintana
12b59cf610 Only reset font size if font size has been changed 2015-04-28 06:27:03 -04:00
Machiste Quintana
f4b228c908 Reset font size to window's starting font size 2015-04-28 06:27:03 -04:00
Kevin Sawicki
3bd0093eb3 Update scrollbar style spec for new library API 2015-04-23 16:10:06 -07:00
Nathan Sobo
ec3f37dee3 Avoid deprecation warnings in spec 2015-04-22 13:12:09 -06:00
Jess Lin
3949153390 [Gutter] Presenter should return gutter decorations for screen row range, not buffer row range 2015-04-22 07:29:00 -07:00
Jess Lin
cdca9c3ef1 [Gutter] Fix coffeescript style issues 2015-04-22 07:29:00 -07:00
Jess Lin
55c6a11c36 [Gutter] Add comment to explain avoided decoration update in presenter & remove test 2015-04-22 07:29:00 -07:00
Jess Lin
166f040077 [Gutter] Address rename nit in CustomGutterComponent-spec 2015-04-22 07:28:59 -07:00
Jess Lin
85188ced03 [Gutter] Move 'lineNumberGutter' state to nest under 'gutters' in the presenter state 2015-04-22 07:28:59 -07:00
Jess Lin
79b460a0ca [Gutter] Add ::getDomNode method to all 'components' 2015-04-22 07:28:59 -07:00
Jess Lin
28ff5dd3c3 [Gutter] Tests for CustomGutterComponent 2015-04-22 07:28:59 -07:00
Jess Lin
f418376013 [Gutter] Tests for GutterContainerComponent 2015-04-22 07:28:59 -07:00
Jess Lin
8c4d092767 [Gutter] TextEditorPresenter tests for custom gutter decorations 2015-04-22 07:28:59 -07:00
Jess Lin
14e5d38354 [Gutter] TextEditorPresenter: Consolidate common gutter state under @state.gutters 2015-04-22 07:28:58 -07:00
Jess Lin
34856d94f5 [Gutter][DOM Persistence] Keep a gutter in the DOM if it is merely hidden (not destroyed) 2015-04-22 07:28:58 -07:00
Jess Lin
f3d2597bda [Gutter][View Registry] Make the Presenter pass sorted Gutter models instead of sorted derived state 2015-04-22 07:28:58 -07:00
Jess Lin
d734ffe545 [Gutter] Make TextEditorPresenter recognize Decorations for custom gutters 2015-04-22 07:28:58 -07:00
Jess Lin
8d6745d8a9 [Gutter] Replace GutterComponent with GutterContainerComponent in TextEditorComponent 2015-04-22 07:28:57 -07:00
Jess Lin
7582e98f4c [Gutter] TextEditorPresenter: rename @state.gutter -> @state.lineNumberGutter 2015-04-22 07:28:57 -07:00
Jess Lin
ee7625249f [Gutter] Create event subscription methods for gutter changes 2015-04-22 07:28:57 -07:00
Jess Lin
b361e1719c [Gutter] Add decorateMarker method to Gutter model 2015-04-22 07:28:57 -07:00
Jess Lin
58d6712b0e [Gutter] Augment Decoration to discern the line-number gutter from custom gutters 2015-04-22 07:28:57 -07:00
Jess Lin
eb321a64c1 [Gutter] Create a line-numbers Gutter on each TextEditor 2015-04-22 07:28:56 -07:00
Jess Lin
20d3c07bf5 [Gutter] Add add/get Gutter methods to TextEditor 2015-04-22 07:28:56 -07:00
Jess Lin
fccc9ebee4 [Gutter] Rename current references to 'Gutter' -> 'LineNumberGutter' 2015-04-22 07:28:56 -07:00
Jess Lin
a6efa104db [Gutter] Don't allow the 'line-number' gutter to be destroyed 2015-04-22 07:28:56 -07:00
Jess Lin
94a0bf3f90 [Gutter] Create Gutter and GutterContainer w/ API to hide/show 2015-04-22 07:28:56 -07:00
Nathan Sobo
9823f4ce09 Fix legacy event spec for scheduler change 2015-04-21 08:09:07 -06:00
Nathan Sobo
76a919f8b4 Perform document updates in same frame when requested from reads
A common pattern is to put something on the DOM, measure it, then update
the DOM again based on that measurement. This change ensures that any
updates requested as a result of reading from the DOM get scheduled for
the end of the current frame. If you want to read *again* after these
follow-on updates, you will need to wait for the next frame. But at
least this way we ensure instant feedback with minimal thrashing
(1 reflow) when we have no choice but to read the DOM before updating.

/cc @benogle
2015-04-20 22:01:36 -06:00