Commit Graph

28417 Commits

Author SHA1 Message Date
Antonio Scandurra
00a69ead1d Merge branch 'master' into ns-use-display-layers 2016-04-07 10:58:10 +02:00
Antonio Scandurra
c08a5c3f54 ⬆️ spell-check 2016-04-07 10:57:51 +02:00
Antonio Scandurra
3bff9515f7 ⬆️ find-and-replace 2016-04-07 10:30:01 +02:00
Daniel Hengeveld
b5f0f846a9 ⬆️ exception-reporting@0.38.0 2016-04-07 10:06:13 +02:00
Lee Dohm
ffe33cb379 ⬆️ language-perl@0.34.0 2016-04-06 18:31:13 -07:00
Wliu
a084882cb1 📝 Minor cleanup for the new .tar.gz archive
[ci skip]
2016-04-06 19:23:26 -04:00
Nathan Sobo
917f20d1c4 ⬆️ tree-view 2016-04-06 16:05:43 -06:00
Ian Olsen
04787400dd Merge pull request #9554 from didrocks/linux-tar
Add a linux archive to distribute atom
2016-04-06 13:29:32 -07:00
Antonio Scandurra
e236b8c3be Avoid storing properties in selection markers
Previously we were storing a {type: ‘selection’} property, probably
leftover from the “pre-marker-layer” world. We were also storing
`Selection`’s `goalScreenRange` on the marker, which is now just an 
instance variable.
2016-04-06 20:00:08 +02:00
Antonio Scandurra
c2396396a5 📝 Update documentation for mark*Position 2016-04-06 19:20:05 +02:00
Antonio Scandurra
4f28f9f3f8 🔥 Remove defensive assertion
We're not throwing this exception anywhere else, so we might as well delete it 
from here.

/cc: @nathansobo
2016-04-06 15:48:44 +02:00
Antonio Scandurra
ffd3b1829d Provide deprecation warnings for clipScreenPosition parameters
Based on a cursory search, there’s only one package using that API. Even though 
we could submit a PR, we’re introducing deprecations to ensure we're not missing 
any other package.
2016-04-06 15:42:53 +02:00
Antonio Scandurra
25b71b804d Un-document passing clip options to setCursorBufferPosition
…the marker’s screen position will be clipped automatically when
translating coordinates.
2016-04-06 14:44:26 +02:00
Antonio Scandurra
3ec1027d5c Remove clipDirection parameter in a call to cursor.setBufferPosition
We aren’t clipping in that code path, so we might as well avoid to pass
the parameter.
2016-04-06 14:38:53 +02:00
Antonio Scandurra
00f03fd614 📝 Document {clipDirection: 'closest'} 2016-04-06 14:21:06 +02:00
Antonio Scandurra
66b9383c4e Use clipDirection instead of the clip option 2016-04-06 14:20:27 +02:00
Lee Dohm
50c1bd34ca ⬆️ tabs@0.92.1 2016-04-05 19:00:34 -07:00
Nathan Sobo
af28fa0752 When copying, create selections marker layer on the *new* display layer
Previously, we were copying the selections marker layer into the current
editor’s display layer. This would work fine until the spatial mapping
drifted in the copied editor, and would then have counterintuitive
results.
2016-04-05 18:47:11 -06:00
Nathan Sobo
b922262871 Avoid internal deprecation warning on getHeight 2016-04-05 17:18:24 -06:00
Nathan Sobo
85ab86df10 Merge branch 'master' into ns-use-display-layers 2016-04-05 16:40:41 -06:00
Nathan Sobo
26ddee4a05 ⬆️ autocomplete-plus 2016-04-05 16:40:15 -06:00
Nathan Sobo
b3ea0a6494 ⬆️ bookmarks 2016-04-05 16:40:06 -06:00
Nathan Sobo
a790ae2158 Avoid deprecation warnings for methods that are now on TextEditor 2016-04-05 12:12:14 -06:00
Nathan Sobo
117a3fb1b5 Provide deprecated TextEditor.prototype.displayBuffer shim
Even though it was a private field, we used it in some of our packages
and it is widespread enough to warrant some effort to smooth the
transition.

Also, we added a couple methods that were formerly implemented on
DisplayBuffer to TextEditor itself because they were used in packages.
2016-04-05 12:11:55 -06:00
Antonio Scandurra
ebd9e71b0b Make serialization format backwards/forwards compatible
Also, introduce a serialization version so we can drop the compatibility
fallbacks in the future.
2016-04-05 11:27:15 -06:00
Antonio Scandurra
bef7539e34 Refactor DisplayBuffer to DecorationManager
This commit moves all the remaining concerns not related to decorations
out of `DisplayBuffer` and into `TextEditor`. This means the
`DisplayBuffer` is now free to be renamed to `DecorationManager`.
2016-04-05 18:43:08 +02:00
Nathan Sobo
2dea35e6fb Merge pull request #11369 from hellendag/text-input
🐎 Avoid setting hidden input value on textInput
2016-04-05 09:34:55 -06:00
Didier Roche
d50da12bca Add Linux archive installation and build instructions 2016-04-05 16:34:57 +02:00
Didier Roche
6a17b2dee8 Add the newly created archive to the publish-build task
This archive is created on an Ubuntu 64 bits machine, publish it if present
in the assets. The version contains the channel name, so don't append
channel name to it.
2016-04-05 16:34:52 +02:00
Didier Roche
4a51841159 Add the mktar task to linux CI 2016-04-05 16:33:51 +02:00
Didier Roche
47d374a09a 🐧 Add "mktar" gulp task to create an Linux binary archive
This archive in tar.gz format contains the whole Atom binary and resources
to enable multiple channels and versions to be installed on the same
distribution.
2016-04-05 16:33:47 +02:00
Antonio Scandurra
0cf0d6f587 🔥 Remove unused code
Now that `DisplayLayer` was fully implemented, we can start deleting those 
codepaths in `DisplayBuffer` that are now covered by this new abstraction.
2016-04-05 15:38:52 +02:00
Antonio Scandurra
712b1f1f88 Fix LanguageMode specs
Also, avoid creating folds twice for the same position when calling
`foldAll`.
2016-04-05 14:19:59 +02:00
Antonio Scandurra
544b75c7b0 🔥 💚 Fix TokenizedBuffer specs 2016-04-05 12:19:45 +02:00
Antonio Scandurra
80b956e996 💚 Fix TextDecorationLayer API specs in TokenizedBuffer 2016-04-05 11:39:06 +02:00
Antonio Scandurra
e6cfb8d587 Use a zero-width nbsp as our fold character 2016-04-05 11:34:14 +02:00
Antonio Scandurra
a083a754a5 💚 Fix TextEditorPresenter specs 2016-04-05 11:12:51 +02:00
Antonio Scandurra
108513f994 Fix LinesYardstick specs to use the new tagCode-based scope structure
Also, remove specs testing RTL behavior. They don’t work as of today,
and I think we need a better approach to handle them, that doesn’t
solely rely on the DOM, but actually takes into account that e.g. (0, 0)
is the rightmost character on a right-to-left string.
2016-04-05 10:47:25 +02:00
Nathan Sobo
fd3789223c ⬆️ status-bar 2016-04-04 19:53:41 -06:00
Nathan Sobo
402a335eef Fix accented character menu spec 2016-04-04 19:50:39 -06:00
Nathan Sobo
9833e54ec3 Fix typo 2016-04-04 19:22:44 -06:00
Nathan Sobo
f638bcbb6d Don’t assume the accented character menu on every IME event 2016-04-04 18:56:08 -06:00
Wliu
9eff3a952b ⬆️ language-ruby@0.68.5 2016-04-04 20:18:59 -04:00
Nathan Sobo
244f117d95 Handle empty client rects in LinesYardstick
getBoundingClientRect returns garbage values if the range has zero
width, which it does in the case of a fold placeholder or any other
zero-width character.

Sometimes getClientRects() returns an empty list, so we fall back to the
bounding rect in these cases.
2016-04-04 18:08:34 -06:00
Nathan Sobo
a99ee14ac0 Make accented character menu detection work with left/right arrow keys 2016-04-04 17:47:36 -06:00
Isaac Salier-Hellendag
2a7344091d Avoid setting hidden input value on textInput
Atom currently sets the `value` of the input on every `textInput` event, in an effort to appropriately handle changes made via the OSX diacritic menu (for accents, umlauts, etc).

The drawback of this is approach is that updating the value of the input will trigger layout and a subsequent layer tree update.

To resolve this, here is my proposal:

  - Track a flag for `keypress` events. When the diacritic menu is used, there are two `textInput` events, with no `keypress` in between. Therefore, when no `keypress` has occurred just prior to a `textInput`, the editor model can select the previous character to be replaced by the new accented character.
  - Track a flag for `compositionstart` events. When a user is in IME mode, the diacritic menu cannot be used, so the editor can skip the backward selection.

Test Plan:

Tested in a plaintext file.

  - Type Latin characters, verify proper character insertion.
  - Press and hold <kbd>a</kbd>. Diacritic menu appears. Select an option using the keyboard or mouse. Verify that the `a` is replaced by an accented `a`, with no extra characters.
  - Type test strings in Katakana, 2-Set Korean, Telex (Vietnamese), Simplified Pinyin. Verify that characters are inserted correctly while composing, and after committing strings.
2016-04-04 13:33:43 -07:00
Damien Guard
5c8669a4e8 Merge pull request #11246 from damieng/dg-windows-build-improve
Improve the Windows build process
2016-04-04 15:23:21 -04:00
Nathan Sobo
bbef4c67c3 Get the TextEditorComponent specs green 2016-04-04 11:21:41 -06:00
Antonio Scandurra
fd960e9a37 Merge branch 'master' into ns-use-display-layers 2016-04-04 15:25:50 +02:00
Michelle Tilley
8575b38c7b Pending pane items shouldn't be made permanent before being replaced
Previously, when a Pane would replace a pending item with
another pending item, it would emit
`onItemDidTerminatePendingState` for that item, which was
not true because the item was actually being destroyed.
2016-04-02 17:48:24 -07:00