Closed joncursi closed 7 years ago
What theme are you using? Could you please try with, say "One Dark"? Nuclide officially supports "One Dark", "One Light", "Atom Dark" and "Atom Light". In reality it should work OK with many others, but we can't commit to it.
Same problem for me in v220.
I'm using Atom Dark
Could you please attach an apm list
output and perhaps a screen video demonstrating the behavior?
If it's not a theme, then maybe there's some other package that interferes with the DOM. Nuclide's file-tree items were changed lately to enable support for the file-icons
package. But without being able to repro this, guessing is more or less like shooting in the dark.
BTW, if you have the file-icons
installed, please make sure it's updated to the latest version.
Theme I am using is "One Dark", also tried atom dark/light and same issue but not quite as bad as I could actually open a file if I clicked enough.
Also I note that in atom dark/light, the colour flashes from a lighter black to darker when I single click on a file like a selection colour change for the whole panel.
The gif is of One Dark
Built-in Atom Packages (88) ├── atom-dark-syntax@0.28.0 ├── atom-dark-ui@0.53.0 ├── atom-light-syntax@0.29.0 ├── atom-light-ui@0.46.0 ├── base16-tomorrow-dark-theme@1.5.0 ├── base16-tomorrow-light-theme@1.5.0 ├── one-dark-ui@1.9.2 ├── one-light-ui@1.9.2 ├── one-dark-syntax@1.7.1 ├── one-light-syntax@1.7.1 ├── solarized-dark-syntax@1.1.2 ├── solarized-light-syntax@1.1.2 ├── about@1.7.5 ├── archive-view@0.63.0 ├── autocomplete-atom-api@0.10.0 ├── autocomplete-css@0.15.1 ├── autocomplete-html@0.7.2 ├── autocomplete-plus@2.34.2 ├── autocomplete-snippets@1.11.0 ├── autoflow@0.29.0 ├── autosave@0.24.0 ├── background-tips@0.26.1 ├── bookmarks@0.44.2 ├── bracket-matcher@0.85.3 ├── command-palette@0.40.3 ├── dalek@0.2.0 ├── deprecation-cop@0.56.2 ├── dev-live-reload@0.47.0 ├── encoding-selector@0.23.2 ├── find-and-replace@0.207.3 ├── fuzzy-finder@1.5.0 ├── git-diff@1.3.3 ├── go-to-line@0.32.0 ├── grammar-selector@0.49.3 ├── image-view@0.61.1 ├── incompatible-packages@0.27.2 ├── keybinding-resolver@0.36.3 ├── line-ending-selector@0.6.2 ├── link@0.31.2 ├── markdown-preview@0.159.7 ├── notifications@0.66.2 ├── open-on-github@1.2.1 ├── package-generator@1.1.0 ├── settings-view@0.248.0 ├── snippets@1.1.1 ├── spell-check@0.71.3 ├── status-bar@1.8.5 ├── styleguide@0.49.3 ├── symbols-view@0.115.2 ├── tabs@0.104.2 ├── timecop@0.36.0 ├── tree-view@0.215.1 ├── update-package-dependencies@0.11.0 ├── welcome@0.36.2 ├── whitespace@0.36.2 ├── wrap-guide@0.40.0 ├── language-c@0.57.0 ├── language-clojure@0.22.2 ├── language-coffee-script@0.48.5 ├── language-csharp@0.14.2 ├── language-css@0.42.1 ├── language-gfm@0.88.1 ├── language-git@0.19.0 ├── language-go@0.43.1 ├── language-html@0.47.2 ├── language-hyperlink@0.16.1 ├── language-java@0.27.0 ├── language-javascript@0.126.1 ├── language-json@0.19.0 ├── language-less@0.31.0 ├── language-make@0.22.3 ├── language-mustache@0.13.1 ├── language-objective-c@0.15.1 ├── language-perl@0.37.0 ├── language-php@0.37.5 ├── language-property-list@0.9.1 ├── language-python@0.45.2 ├── language-ruby@0.70.5 ├── language-ruby-on-rails@0.25.2 ├── language-sass@0.58.0 ├── language-shellscript@0.25.0 ├── language-source@0.9.0 ├── language-sql@0.25.4 ├── language-text@0.7.2 ├── language-todo@0.29.1 ├── language-toml@0.18.1 ├── language-xml@0.35.0 └── language-yaml@0.29.0
Community Packages (13) /home/some-user/.atom/packages ├── atom-beautify@0.29.23 ├── atom-easy-jsdoc@4.12.1 ├── atom-typescript@11.0.3 ├── busy-signal@1.4.1 ├── docker@0.7.0 ├── highlight-selected@0.13.1 ├── intentions@1.1.2 ├── language-docker@1.1.7 ├── linter@2.1.4 ├── linter-docker@0.2.0 ├── linter-jshint@3.0.3 ├── linter-ui-default@1.2.3 └── nuclide@0.220.0
I have the same issues.
As I said before, I have the same problem. If it can help, I'm using the One Dark
theme too.
I'm on macOS 10.12.4 (Dont know if it helps), and this is the list of packages I have installed :
$ apm list [node v7.3.0]
Built-in Atom Packages (90)
├── atom-dark-syntax@0.28.0
├── atom-dark-ui@0.53.0
├── atom-light-syntax@0.29.0
├── atom-light-ui@0.46.0
├── base16-tomorrow-dark-theme@1.5.0
├── base16-tomorrow-light-theme@1.5.0
├── one-dark-ui@1.9.2
├── one-light-ui@1.9.2
├── one-dark-syntax@1.7.1
├── one-light-syntax@1.7.1
├── solarized-dark-syntax@1.1.2
├── solarized-light-syntax@1.1.2
├── about@1.7.5
├── archive-view@0.63.0
├── autocomplete-atom-api@0.10.0
├── autocomplete-css@0.15.1
├── autocomplete-html@0.7.2
├── autocomplete-plus@2.34.2
├── autocomplete-snippets@1.11.0
├── autoflow@0.29.0
├── autosave@0.24.0
├── background-tips@0.26.1
├── bookmarks@0.44.2
├── bracket-matcher@0.85.3
├── command-palette@0.40.3
├── dalek@0.2.0
├── deprecation-cop@0.56.2
├── dev-live-reload@0.47.0
├── encoding-selector@0.23.2
├── exception-reporting@0.41.2
├── find-and-replace@0.207.3
├── fuzzy-finder@1.5.0
├── git-diff@1.3.3
├── go-to-line@0.32.0
├── grammar-selector@0.49.3
├── image-view@0.61.1
├── incompatible-packages@0.27.2
├── keybinding-resolver@0.36.3
├── line-ending-selector@0.6.2
├── link@0.31.2
├── markdown-preview@0.159.7
├── metrics@1.2.1
├── notifications@0.66.2
├── open-on-github@1.2.1
├── package-generator@1.1.0
├── settings-view@0.248.0
├── snippets@1.1.1
├── spell-check@0.71.3
├── status-bar@1.8.5
├── styleguide@0.49.3
├── symbols-view@0.115.2
├── tabs@0.104.2
├── timecop@0.36.0
├── tree-view@0.215.1
├── update-package-dependencies@0.11.0
├── welcome@0.36.2
├── whitespace@0.36.2
├── wrap-guide@0.40.0
├── language-c@0.57.0
├── language-clojure@0.22.2
├── language-coffee-script@0.48.5
├── language-csharp@0.14.2
├── language-css@0.42.1
├── language-gfm@0.88.1
├── language-git@0.19.0
├── language-go@0.43.1
├── language-html@0.47.2
├── language-hyperlink@0.16.1
├── language-java@0.27.0
├── language-javascript@0.126.1
├── language-json@0.19.0
├── language-less@0.31.0
├── language-make@0.22.3
├── language-mustache@0.13.1
├── language-objective-c@0.15.1
├── language-perl@0.37.0
├── language-php@0.37.5
├── language-property-list@0.9.1
├── language-python@0.45.2
├── language-ruby@0.70.5
├── language-ruby-on-rails@0.25.2
├── language-sass@0.58.0
├── language-shellscript@0.25.0
├── language-source@0.9.0
├── language-sql@0.25.4
├── language-text@0.7.2
├── language-todo@0.29.1
├── language-toml@0.18.1
├── language-xml@0.35.0
└── language-yaml@0.29.0
Community Packages (27) /Users/yohann/.atom/packages
├── atom-html-preview@0.1.22
├── atom-material-ui@1.3.10
├── busy-signal@1.4.1
├── docblockr@0.9.4
├── file-icons@2.1.4
├── highlight-selected@0.13.1
├── intentions@1.1.2
├── language-docker@1.1.7
├── language-ini@1.19.0
├── language-javascript-jsx@0.3.7
├── language-logstash@0.1.7
├── language-plantuml@0.2.0
├── language-pug@0.0.21
├── linter@2.1.4
├── linter-eslint@8.1.6
├── linter-ui-default@1.2.3
├── minimap@4.27.1
├── minimap-split-diff@0.3.7
├── multi-cursor@2.1.5
├── nuclide@0.220.0
├── open-in-browser@0.5.0
├── plantuml@0.1.2
├── plantuml-viewer@0.7.1
├── source-preview-pug@0.2.0
├── split-diff@1.3.0
├── tablr@1.8.3
└── tool-bar@1.1.0
Same problem wit the following apm list
Built-in Atom Packages (90)
├── atom-dark-syntax@0.28.0
├── atom-dark-ui@0.53.0
├── atom-light-syntax@0.29.0
├── atom-light-ui@0.46.0
├── base16-tomorrow-dark-theme@1.5.0
├── base16-tomorrow-light-theme@1.5.0
├── one-dark-ui@1.9.2
├── one-light-ui@1.9.2
├── one-dark-syntax@1.7.1
├── one-light-syntax@1.7.1
├── solarized-dark-syntax@1.1.2
├── solarized-light-syntax@1.1.2
├── about@1.7.5
├── archive-view@0.63.0
├── autocomplete-atom-api@0.10.0
├── autocomplete-css@0.15.1
├── autocomplete-html@0.7.2
├── autocomplete-plus@2.34.2
├── autocomplete-snippets@1.11.0
├── autoflow@0.29.0
├── autosave@0.24.0
├── background-tips@0.26.1
├── bookmarks@0.44.2
├── bracket-matcher@0.85.3
├── command-palette@0.40.3
├── dalek@0.2.0
├── deprecation-cop@0.56.2
├── dev-live-reload@0.47.0
├── encoding-selector@0.23.2
├── exception-reporting@0.41.2
├── find-and-replace@0.207.3
├── fuzzy-finder@1.5.0
├── git-diff@1.3.3
├── go-to-line@0.32.0
├── grammar-selector@0.49.3
├── image-view@0.61.1
├── incompatible-packages@0.27.2
├── keybinding-resolver@0.36.3
├── line-ending-selector@0.6.2
├── link@0.31.2
├── markdown-preview@0.159.7
├── metrics@1.2.1
├── notifications@0.66.2
├── open-on-github@1.2.1
├── package-generator@1.1.0
├── settings-view@0.248.0
├── snippets@1.1.1
├── spell-check@0.71.3
├── status-bar@1.8.5
├── styleguide@0.49.3
├── symbols-view@0.115.2
├── tabs@0.104.2
├── timecop@0.36.0
├── tree-view@0.215.1
├── update-package-dependencies@0.11.0
├── welcome@0.36.2
├── whitespace@0.36.2
├── wrap-guide@0.40.0
├── language-c@0.57.0
├── language-clojure@0.22.2
├── language-coffee-script@0.48.5
├── language-csharp@0.14.2
├── language-css@0.42.1
├── language-gfm@0.88.1
├── language-git@0.19.0
├── language-go@0.43.1
├── language-html@0.47.2
├── language-hyperlink@0.16.1
├── language-java@0.27.0
├── language-javascript@0.126.1
├── language-json@0.19.0
├── language-less@0.31.0
├── language-make@0.22.3
├── language-mustache@0.13.1
├── language-objective-c@0.15.1
├── language-perl@0.37.0
├── language-php@0.37.5
├── language-property-list@0.9.1
├── language-python@0.45.2
├── language-ruby@0.70.5
├── language-ruby-on-rails@0.25.2
├── language-sass@0.58.0
├── language-shellscript@0.25.0
├── language-source@0.9.0
├── language-sql@0.25.4
├── language-text@0.7.2
├── language-todo@0.29.1
├── language-toml@0.18.1
├── language-xml@0.35.0
└── language-yaml@0.29.0
Community Packages (10) /Users/christophwork/.atom/packages
├── busy-signal@1.4.1
├── intentions@1.1.2
├── js-hyperclick@1.10.1
├── language-groovy@0.6.0
├── linter@2.1.4
├── linter-eslint@8.1.7
├── linter-ui-default@1.2.3
├── nuclide@0.220.0
├── prettier-atom@0.29.0
└── sort-lines@0.14.0
Workaround for anyone interested: apm install nuclide@0.218.0
Thanks for providing the additional details. I've reproed it. The packages you have in common are: ├── busy-signal@1.4.1 ├── intentions@1.1.2 ├── linter@2.1.4 ├── linter-ui-default@1.2.3
I tried installing this, along with linter-eslint
and after I caused an error the behavior would reproduce.
The linter inserts a linter-decoration
element that spans the entire height of the file tree and intercepts the on mouse down events. So even though you're clicking outside of the visual underline, it grabs the mouse event, which causes the file-tree think that the underlined element was clicked and not whatever the mouse was pointing at.
See:
I propose reporting this issue on the linter-ui-default repo
Thanks for the investigation into this @shushz
Linter needs that element to highlight entries in tree view. It does not listen for or stop any kind-of events. Furthermore it works fine in the builtin Tree View, so maybe nuclide should modify it's tree view click event handling?
I'm asking you this because after a quick investigation, I wasn't able to find any other way (without a ton of complexity that is) to decorate the tree view without adding anything to tree view elements.
Edit Here's a css snapshot from builtin tree view
@shushz can you take another look at this, as It did work in 0.218 but broke in 0.219
@jgebhardt could you chime in? UI is not really my domain.
@steelbrain If you don't need to intercept any events, could you add pointer-events: none
to the linter-decoration
element? That seems to fix it.
@matthewwithanm I would add it very happily, In fact I'll push an update very soon doing it.
In the meantime, if you could have a look inside what's changed between Nuclide v0.218 and v0.219's css that made the linter elements appear all over the tree view, that would fix it for any other packages out there adding decorations on TreeView, because their decorations work with Atom's tree view but only break on yours :)
Looking through the commits my guess would be that it's facebook/nuclide@147924b, which seems to have removed one of the nodes.
@jgebhardt @shushz Any background on this change?
After upgrading to v219, my file tree has become totally unusable. When I try to click on one file, a different one is selected. Nothing opens.