Commit Graph

16603 Commits

Author SHA1 Message Date
Antonio Scandurra
a5c0223592 Fix race condition between opening new files and restoring window state
This commit fixes a race condition in the
`attemptRestoreProjectStateForPaths` function that could cause a file to
be opened more than once within the same workspace pane.

In particular, when opening some file into an empty window, Atom tries
to recover the state for the project containing the file (if there is
one). However, we were previously not waiting until the
`AtomEnvironment`'s state had been fully deserialized before trying to
load the requested file into the workspace. If the same file also
existed in the serialized representation of the workspace, it could end
up being opened twice.

With this commit we will now wait until the environment has been fully
deserialized before honoring the user's request of loading new files
into an empty window. Also, tests have been restructured to test more
thoroughly this interaction.
2018-01-10 13:22:09 +01:00
Antonio Scandurra
e85b8738d1 Allow destroying AtomEnvironment instances that haven't been initialized 2018-01-10 13:11:25 +01:00
Max Brunsfeld
59f2b21d6c Merge pull request #16524 from atom/mb-fix-tree-sitter-slowness
Fix two tree-sitter performance problems
2018-01-09 21:29:55 -08:00
Max Brunsfeld
4084922cb4 Optimize TreeSitterHighlightIterator.seek 2018-01-09 17:38:10 -08:00
Wliu
c84eeb3ae0 Merge branch 'master' into wl-async-save-dialog 2018-01-09 17:20:57 -05:00
Wliu
cd123456ca Merge pull request #16229 from atom/wl-async-confirm
Make atom.confirm async
2018-01-09 17:19:51 -05:00
Michelle Tilley
fd50e02162 👕 2018-01-09 12:19:33 -08:00
Wliu
18ee2e6f11 Oops 2018-01-09 14:56:09 -05:00
Damien Guard
7afa03345a If protocol handler set top never, unregister it on Windows 2018-01-09 11:38:05 -08:00
Antonio Scandurra
450d6b12fa Don't add fully-contained selections above/below
This is slower than it needs to be and creates behavioral problems when
selections get merged in some cases.

Signed-off-by: Nathan Sobo <nathan@github.com>
2018-01-09 16:47:26 +01:00
Antonio Scandurra
aea7041c4c Merge pull request #16515 from atom/move-highlights-behind-text
Render highlights behind lines
2018-01-09 16:28:02 +01:00
Antonio Scandurra
c48ba79f3c Prevent selection of non-text content in editor
Signed-off-by: Nathan Sobo <nathan@github.com>
2018-01-09 15:16:17 +01:00
Antonio Scandurra
3d21ac0742 Render highlights behind lines
This fixes a bug most likely introduced with #16511 by ensuring that UI
elements (such as selections) never cover up the text.

Signed-off-by: Nathan Sobo <nathan@github.com>
2018-01-09 15:15:54 +01:00
Nathan Sobo
dced608f47 Merge pull request #14931 from UziTech/atom-commands-onDidFinish
atom.commands.onDidFinish
2018-01-09 06:12:45 -07:00
Michelle Tilley
bf4635ca75 Merge pull request #16513 from atom/mkt-update-protocol-handler
Update protocol client installation
2018-01-08 17:37:45 -08:00
Max Brunsfeld
3f710a1398 Merge pull request #12783 from vedharish/editor_delete_line 2018-01-08 15:58:22 -08:00
Michelle Tilley
8bc7e8a28f Update protocol client installation 2018-01-08 15:18:43 -08:00
Nathan Sobo
4926fe466c Move highlights container into lines for theme compatibility 2018-01-08 13:16:46 -07:00
Wliu
5c3d6abb12 Merge branch 'master' into wl-async-confirm 2018-01-07 21:08:32 -05:00
Wliu
b69631a444 Merge branch 'master' into wl-async-save-dialog 2018-01-07 20:55:16 -05:00
Max Brunsfeld
84c9524403 Omit anonymous token types in tree-sitter scope descriptors for now 2018-01-07 13:59:15 -08:00
Max Brunsfeld
3f11fa57ee Make tree-sitter indent methods delegate to textmate ones for now 2018-01-07 13:52:25 -08:00
Max Brunsfeld
fe4d14444f Merge branch 'master' into mb-tree-sitter-parsers 2018-01-05 19:59:52 -08:00
Max Brunsfeld
6f50f32116 Rename pathsToNotifyWhenClosed -> pathsWithWaitSessions 2018-01-05 17:50:11 -08:00
Max Brunsfeld
386b786d93 Let 'atom --wait -a folder' exit due to removing the project folder 2018-01-05 17:50:11 -08:00
Max Brunsfeld
1f4ccf3024 Allow existing windows to be reused when running --wait 2018-01-05 17:50:11 -08:00
Max Brunsfeld
7f76320387 Backfill a test for existing --wait functionality 2018-01-05 17:50:11 -08:00
Max Brunsfeld
b2337fcc45 Merge pull request #16500 from atom/mb-decaf-application-delegate
Decaffeinate ApplicationDelegate
2018-01-05 17:16:13 -08:00
Bryant Ung
911b805065 Merge pull request #16295 from xfontes42/master
Add event handler for window resizing.
2018-01-05 17:01:15 -08:00
Max Brunsfeld
bbc8b54f91 Decaffeinate ApplicationDelegate 2018-01-05 14:59:57 -08:00
Max Brunsfeld
22766b93e7 Merge pull request #16495 from atom/mb-decaf-main-process
Decaffeinate some main process files
2018-01-05 14:25:51 -08:00
Max Brunsfeld
0085bc83e4 Decaffeinate AtomProtocolHandler 2018-01-05 13:20:26 -08:00
Max Brunsfeld
2793498e0b Decaffeinate ApplicationMenu 2018-01-05 13:13:30 -08:00
Tony Brix
03d16c4f5d return promise.all from dispatch 2018-01-05 14:53:59 -06:00
Tony Brix
b02aa369ca rebase atom.commands.onDidFinish 2018-01-05 14:53:59 -06:00
Max Brunsfeld
9d30003e58 Use async/await in before-quit handler 2018-01-05 12:11:10 -08:00
Max Brunsfeld
cf3d272e47 Remove side effect from AtomWindow constructor
Standard was complaining about using 'new' for its side effect
2018-01-05 12:11:10 -08:00
Max Brunsfeld
822900f40e Decaffeinate AtomWindow 2018-01-05 12:11:10 -08:00
Max Brunsfeld
043f183b1a Decaffeinate AtomApplication 2018-01-05 09:05:02 -08:00
Jason Rudolph
022544a0b2 Merge pull request #16492 from atom/jr-fix-modal-tabbing
Allow you to tab through modal text box
2018-01-05 09:51:01 -05:00
Jason Rudolph
9d23d37965 If a TextEditorElement has a tabIndex, use it; otherwise, use -1 2018-01-04 17:55:53 -05:00
Max Brunsfeld
7aac32e915 Merge branch 'master' into mb-tree-sitter-parsers 2018-01-04 12:13:30 -08:00
Max Brunsfeld
7f923fc05f Fix section comments 2018-01-04 12:13:23 -08:00
Max Brunsfeld
75b4a7a984 ⬆️ joanna, put back AtomEnvironment public property docs 2018-01-04 12:12:43 -08:00
Jason Rudolph
408070e913 Set the tabIndex on the input element
This commit reverts a portion of the changes introduced in
9eac520e6a. Prior to that commit, we were
setting the tabIndex to -1 on the atom-text-editor element. This commit
restores that behavior.

Instead of setting a custom tab index directly on the atom-text-editor
element, we instead set the tabIndex on the input element *inside* the
atom-text-editor element.

With these changes in place, you can successfully use the tabIndex to
define the tab order for atom-text-editor elements. 😅
2018-01-04 14:31:11 -05:00
itsmichaelwang
e462d0d298 Fix lint issue 2018-01-04 14:23:12 -05:00
itsmichaelwang
9eac520e6a Allow you to tab through modal text box 2018-01-04 14:23:12 -05:00
Tobias V. Langhoff
d848c15d42 Fix typo in protocol handler installer popup
Correct the typo "defaut" to the correct "default" in the atom:// URI protocol handler popup
2018-01-04 19:36:21 +01:00
Max Brunsfeld
2fa3b65364 Merge branch 'master' into mb-tree-sitter-parsers 2018-01-03 15:20:10 -08:00
Nathan Sobo
5743c41e03 Merge pull request #16282 from atom/io-electron-1.7
Upgrade electron to 1.7.10
2018-01-03 16:19:20 -07:00