Ziink / atom-nav-panel

Navigation Panel for Atom Editor
MIT License
16 stars 17 forks source link

Uncaught TypeError: Invalid Point: ((38, 0), 0) #26

Open rabidgadfly opened 8 years ago

rabidgadfly commented 8 years ago

[Enter steps to reproduce below:]

  1. Upgraded Atom to 1.9.1
  2. Attempted to click any function in navpanel

Atom Version: 1.9.1 System: Mac OS X 10.11.6 Thrown From: nav-panel package, v0.0.11

Stack Trace

Uncaught TypeError: Invalid Point: ((38, 0), 0)

At /Applications/Atom.app/Contents/Resources/app.asar/node_modules/text-buffer/lib/point.js:63

TypeError: Invalid Point: ((38, 0), 0)
    at Function.module.exports.Point.assertValid (/Applications/Atom.app/Contents/Resources/app.asar/node_modules/text-buffer/lib/point.js:63:15)
    at TextBuffer.module.exports.TextBuffer.clipPosition (/Applications/Atom.app/Contents/Resources/app.asar/node_modules/text-buffer/lib/text-buffer.js:1080:13)
    at TextBuffer.module.exports.TextBuffer.clipRange (/Applications/Atom.app/Contents/Resources/app.asar/node_modules/text-buffer/lib/text-buffer.js:1068:20)
    at DisplayLayer.module.exports.DisplayLayer.destroyFoldsIntersectingBufferRange (/Applications/Atom.app/Contents/Resources/app.asar/node_modules/text-buffer/lib/display-layer.js:326:33)
    at TextEditor.module.exports.TextEditor.unfoldBufferRow (/Applications/Atom.app/Contents/Resources/app.asar/src/text-editor.js:2908:32)
    at NavView.module.exports.NavView.gotoMarker (/Users/ggervais/.atom/packages/nav-panel/lib/nav-view.coffee:270:12)
    at HTMLLIElement.<anonymous> (/Users/ggervais/.atom/packages/nav-panel/lib/nav-view.coffee:48:12)
    at HTMLDivElement.jQuery.event.dispatch (/Applications/Atom.app/Contents/Resources/app.asar/node_modules/jquery/dist/jquery.js:4435:9)
    at HTMLDivElement.elemData.handle (/Applications/Atom.app/Contents/Resources/app.asar/node_modules/jquery/dist/jquery.js:4121:28)

Commands

     -0:23.5.0 find-and-replace:show (atom-text-editor.editor.is-focused)
     -0:21.4.0 editor:consolidate-selections (atom-text-editor.editor.mini.is-focused)
     -0:21.4.0 core:cancel (atom-text-editor.editor.mini.is-focused)

Config

{
  "core": {
    "disabledPackages": [
      "php-hyperclick"
    ]
  }
}

Installed Packages

# User
atom-autocomplete-php, v0.18.9 (active)
hyperclick, v0.0.37 (active)
hyperclick-php, v0.2.1 (active)
js-hyperclick, v1.4.2 (active)
nav-panel, v0.0.11 (active)
php-class-tree, v1.0.0 (inactive)
php-hyperclick, v1.0.0 (inactive)
wordpress-api, v1.2.2 (active)
atom-dark-syntax, v0.27.0 (inactive)
atom-dark-ui, v0.51.0 (inactive)
atom-light-syntax, v0.28.0 (inactive)
atom-light-ui, v0.43.0 (inactive)
base16-tomorrow-dark-theme, v1.1.0 (inactive)
base16-tomorrow-light-theme, v1.1.1 (inactive)
one-dark-ui, v1.3.2 (active)
one-light-ui, v1.3.2 (inactive)
one-dark-syntax, v1.2.0 (active)
one-light-syntax, v1.2.0 (inactive)
solarized-dark-syntax, v1.0.2 (inactive)
solarized-light-syntax, v1.0.2 (inactive)
about, v1.5.2 (active)
archive-view, v0.61.1 (active)
autocomplete-atom-api, v0.10.0 (active)
autocomplete-css, v0.11.1 (active)
autocomplete-html, v0.7.2 (active)
autocomplete-plus, v2.31.0 (active)
autocomplete-snippets, v1.11.0 (active)
autoflow, v0.27.0 (inactive)
autosave, v0.23.1 (active)
background-tips, v0.26.0 (active)
bookmarks, v0.41.0 (active)
bracket-matcher, v0.82.1 (active)
command-palette, v0.38.0 (inactive)
deprecation-cop, v0.54.1 (active)
dev-live-reload, v0.47.0 (active)
encoding-selector, v0.22.0 (active)
exception-reporting, v0.38.1 (active)
fuzzy-finder, v1.3.0 (active)
git-diff, v1.1.0 (active)
find-and-replace, v0.198.0 (active)
go-to-line, v0.31.0 (inactive)
grammar-selector, v0.48.1 (active)
image-view, v0.58.0 (active)
incompatible-packages, v0.26.1 (active)
keybinding-resolver, v0.35.0 (active)
line-ending-selector, v0.5.0 (active)
link, v0.31.1 (inactive)
markdown-preview, v0.158.0 (active)
metrics, v0.53.1 (active)
notifications, v0.64.1 (active)
open-on-github, v1.2.0 (inactive)
package-generator, v1.0.0 (inactive)
settings-view, v0.238.0 (active)
snippets, v1.0.2 (active)
spell-check, v0.67.1 (active)
status-bar, v1.4.0 (active)
styleguide, v0.46.0 (active)
symbols-view, v0.113.0 (inactive)
tabs, v0.98.0 (active)
timecop, v0.33.1 (active)
tree-view, v0.208.0 (active)
update-package-dependencies, v0.10.0 (active)
welcome, v0.34.0 (active)
whitespace, v0.32.2 (active)
wrap-guide, v0.38.1 (active)
language-c, v0.52.1 (active)
language-clojure, v0.21.0 (active)
language-coffee-script, v0.47.0 (active)
language-csharp, v0.12.1 (active)
language-css, v0.36.2 (active)
language-gfm, v0.86.0 (active)
language-git, v0.13.0 (active)
language-go, v0.42.0 (active)
language-html, v0.44.1 (active)
language-hyperlink, v0.16.0 (active)
language-java, v0.22.0 (active)
language-javascript, v0.119.0 (active)
language-json, v0.18.0 (active)
language-less, v0.29.3 (active)
language-make, v0.22.2 (active)
language-mustache, v0.13.0 (active)
language-objective-c, v0.15.1 (active)
language-perl, v0.35.0 (active)
language-php, v0.37.0 (active)
language-property-list, v0.8.0 (active)
language-python, v0.45.0 (active)
language-ruby, v0.68.5 (active)
language-ruby-on-rails, v0.25.0 (active)
language-sass, v0.52.0 (active)
language-shellscript, v0.22.3 (active)
language-source, v0.9.0 (active)
language-sql, v0.21.1 (active)
language-text, v0.7.1 (active)
language-todo, v0.28.0 (active)
language-toml, v0.18.0 (active)
language-xml, v0.34.8 (active)
language-yaml, v0.26.0 (active)

# Dev
No dev packages
ecorona commented 8 years ago

Same here: Atom 1.9.0, 1.9.1 and 1.9.2 Linux Mint

codeitco commented 8 years ago

Has this package been working fine when clicking, up until recently? I don't see any commits from the author since Dec 2015.

ballinette commented 8 years ago

Same issue for me. Atom 1.9.4 on Ubuntu 14.04

(it did correctly work on Atom 1.8 before I upgraded to 1.9.4 today)

ballinette commented 8 years ago

Fixed on my desktop by commenting the line that threw the error (in ~/.atom/packages/nav-panel/lib/nav-view.coffee): https://github.com/Ziink/atom-nav-panel/blob/master/lib/nav-view.coffee#L270

  gotoMarker: (markerId)->
    editor = atom.workspace.getActiveTextEditor()
    marker = editor.getMarker(markerId)
    return unless marker
    row = marker.getStartBufferPosition()
    #editor.unfoldBufferRow(row)
    editor.setCursorBufferPosition(row)
    editor.scrollToCursorPosition()

Disclaimer: I really do not know what is the goal of this statement, so maybe this hotfix would make some regression elsewhere...

armin77 commented 8 years ago

I think this means if you have a function within a folded one the outer is being unfolded.

sorry...but I don't really know how to create a proper pull-request!? after making the following changes it seems to work for me....also see the reference i found for this

diff --git a/lib/nav-view.coffee b/lib/nav-view.coffee
index b6b341d..fad63a0 100644
--- a/lib/nav-view.coffee
+++ b/lib/nav-view.coffee
@@ -267,7 +267,10 @@ class NavView extends ResizableWidthView
     marker = editor.getMarker(markerId)
     return unless marker
     row = marker.getStartBufferPosition()
-    editor.unfoldBufferRow(row)
+ # See https://discuss.atom.io/t/how-to-toggle-current-fold-in-editor-view/11094/5
+    brow = editor.bufferPositionForScreenPosition(editor.getCursorScreenPosition()).row
+    if editor.isFoldedAtBufferRow(brow)
+      editor.unfoldBufferRow(brow)
     editor.setCursorBufferPosition(row)
     editor.scrollToCursorPosition()
Fixluja commented 8 years ago

Looks like you got it fixed! Works in Atom 1.9.7 on Mac OS X 10.11.6. Thanks ballinette and armin77.

slegros-lri commented 8 years ago

It fixed the problem for me too.

Atom 1.10.2

jpluimers commented 8 years ago

I installed https://atom.io/packages/nav-panel-plus which is maintained at https://github.com/0tho/atom-nav-panel-plus and doesn't have this issue.