Ash Wilson
fb0e29cf07
Merge pull request #14853 from atom/aw-filewatcher
...
Filesystem watcher API
2017-08-08 14:04:39 -04:00
Jason Rudolph
3dc2e61990
Add comment explaining motivation for didPaste implemenation
2017-08-07 12:43:13 -04:00
Jason Rudolph
b9ace6a5b6
🎨
2017-08-07 12:31:04 -04:00
Ash Wilson
fc7ecb76d1
:burn: double word
2017-08-07 11:13:03 -04:00
Jason Rudolph
c7bfbc181c
🐛 Fix atom/tabs#461
...
On Linux, when the user performs a middle-button mouse click, Chromium
fires both a mouse-down event *and* a paste event. This commit teaches
the TextEditorComponent to ignore the paste event.
When the user performs a middle-mouse click on a tab, we get close the
tab and attempt to prevent Chromium's default processing for the event.
[1] This prevents Chromium's default processing for the *mouse down*
event, but then Chromium also fires a *paste* event, and that event
pastes the clipboard's current content into the newly-focused text
editor. 🙀
Since Atom already has its own logic for handling pasting, we
shouldn't (🤞 ) need to handle browser paste events. By ignoring the
browser paste events on Linux, we fix atom/tabs#461 .
[1]
ce1d92e0ab/lib/tab-bar-view.coffee (L416-L418)
2017-08-07 10:19:08 -04:00
Ash Wilson
f270402c6b
s/type/action/, s/changed/modified/, s/added/created/
2017-08-07 10:04:00 -04:00
Ash Wilson
f623b03157
Documentation touchups
2017-08-07 10:04:00 -04:00
Ash Wilson
6c608e88bc
Merge remote-tracking branch 'origin/master' into aw-filewatcher
2017-08-05 10:14:32 -04:00
Ash Wilson
ca28f8ac48
Fussing with documentation
2017-08-04 16:30:43 -04:00
Ash Wilson
2310053637
Reword Project.onDidChangeFiles documentation
2017-08-04 14:34:06 -04:00
Ash Wilson
97ffe46247
Consistently use require('temp').track()
2017-08-04 14:08:29 -04:00
Ash Wilson
662e2aaf06
Revisit a bunch of documentation.
2017-08-04 12:55:25 -04:00
Ash Wilson
418fe48bad
Emulate a "filesystem watcher" by subscribing to Atom events
2017-08-03 15:32:40 -04:00
Ash Wilson
83f022b618
Add a fileSystemWatcher config key to use as a feature flag
2017-08-03 15:32:40 -04:00
Nathan Sobo
f8f3252962
Merge pull request #15148 from atom/ns-disable-electron-logging-by-default
...
Don't enable electron logging by default
2017-08-03 13:27:43 -06:00
Nathan Sobo
55748bd2c4
Document enable-electron-logging option
2017-08-02 21:12:02 -06:00
Nathan Sobo
1584189962
Ensure custom decoration elements fill their container
2017-08-02 20:34:18 -06:00
Ash Wilson
931b4e7055
👕 lint lint lint
2017-08-02 12:33:06 -04:00
Ash Wilson
318708bb42
wip
2017-08-02 09:50:57 -04:00
Ash Wilson
320664a359
Remove an export I missed
2017-08-02 09:04:33 -04:00
Ash Wilson
c7a47a9e89
Use module.exports to not break Joanna horribly
2017-08-01 16:40:54 -04:00
Ash Wilson
f005fcdca1
Use directory.getPath() as the object key
2017-08-01 15:55:39 -04:00
Ash Wilson
1285a89a4b
Reset @watchersByPath on atom.project.setPaths
2017-08-01 15:55:28 -04:00
Ash Wilson
ee9ad53d91
🔥 unused variables
2017-08-01 15:55:08 -04:00
Ash Wilson
b3f327b0b3
Implement atom.project.onDidChangeFiles
2017-08-01 15:08:07 -04:00
Ash Wilson
ba11070d16
Translate nsfw events to the events we're advertising
2017-08-01 15:08:07 -04:00
Ash Wilson
afdb2f13a6
Doooooocs
2017-08-01 15:08:07 -04:00
Ash Wilson
6fdeedd4ab
Introduce a helper to re-join split absolute paths regardless of platform
2017-08-01 15:08:07 -04:00
Ash Wilson
4f0b52d2ab
Move the global watcher registry to a lazily initialized manager
2017-08-01 15:08:07 -04:00
Ash Wilson
7aab9925a8
Rename filesystem-manager to path-watcher
2017-08-01 15:08:06 -04:00
Ash Wilson
7aeca7fc8c
🔥 FileSystemManager
2017-08-01 15:08:06 -04:00
Ash Wilson
2d8f812f56
More documentation touchups.
2017-08-01 15:08:06 -04:00
Ash Wilson
2ae70aac08
Document RegistryTree.
2017-08-01 15:08:06 -04:00
Ash Wilson
ba7275dc4f
Dump the tree structure to a string for debugging
2017-08-01 15:08:06 -04:00
Ash Wilson
d4edc6b894
Extra character for some reason?
2017-08-01 15:08:06 -04:00
Ash Wilson
0b17b35244
👕 :burn: whitespace
2017-08-01 15:08:06 -04:00
Ash Wilson
2b79295d0b
(Untested) work to adapt to the registry API changes
2017-08-01 15:08:06 -04:00
Ash Wilson
0c5674a56c
Split subtrees into child watchers on parent watcher removal
2017-08-01 15:08:06 -04:00
Ash Wilson
a5f217fd51
WIP work on rewatching child directories
2017-08-01 15:08:05 -04:00
Ash Wilson
c2810b626c
Propagate errors to subscribers with an onDidError callback
2017-08-01 15:08:05 -04:00
Ash Wilson
f75aa1ae03
Use onWillStop() instead of onDidStop()
...
This will prevent new Watchers from attaching to NativeWatchers that are
in the process of stopping.
2017-08-01 15:08:05 -04:00
Ash Wilson
7ec79a00fc
Set running = false before the asynchronous stop operation
2017-08-01 15:08:05 -04:00
Ash Wilson
80a9126fdb
Start NativeWatchers lazily and stop them opportunistically
2017-08-01 15:08:05 -04:00
Ash Wilson
9c8ed35b26
Provide native watcher creation function to the NativeWatcherRegistry constructor
2017-08-01 15:08:05 -04:00
Ash Wilson
c8882ca92b
Start and stop NativeWatchers automatically using onDidChange subs
2017-08-01 15:08:04 -04:00
Ash Wilson
4194e7f3b5
Remove stopped watcher nodes with the power of RECURSION ✨
2017-08-01 15:08:04 -04:00
Ash Wilson
be681d1324
Use a private utility function to wait for all native watchers to stop
2017-08-01 15:08:04 -04:00
Ash Wilson
12c961c8b9
Maintain a Set of living NativeWatcher instances
2017-08-01 15:08:04 -04:00
Ash Wilson
9f518736e1
Track the current NativeWatcher assigned to a Watcher
2017-08-01 15:08:04 -04:00
Ash Wilson
8d86acf19c
Don't report errors after stop
2017-08-01 15:08:03 -04:00