Skip to content
This repository has been archived by the owner on Dec 15, 2022. It is now read-only.

command-palette launch is very slow in v1.25.0-beta #108

Closed
t9md opened this issue Feb 25, 2018 · 3 comments
Closed

command-palette launch is very slow in v1.25.0-beta #108

t9md opened this issue Feb 25, 2018 · 3 comments

Comments

@t9md
Copy link
Contributor

t9md commented Feb 25, 2018

Description

Launching by command-palette:toggle is very slow in Atom-v1.25.0-beta.
Why? render-on-visible #101 feature not working correctly because incorrect {visible} options is passed to elementForItem.

What is happening now on command-palette:toggle is "render initial 10 items" then "immediately render all items" because of incorrect visible state determination in atom-select-list

I created PR atom/atom-select-list#25 to fix this.
No change required on command-palette side.

Steps to Reproduce

launch command-palette:toggle

Expected behavior: [What you expect to happen]

Actual behavior: [What actually happens]

Reproduces how often: [What percentage of the time does it reproduce?]

Versions

Atom v1.24.0 have no issue
Atom v1.25.0 and later have issue

@t9md
Copy link
Contributor Author

t9md commented Feb 25, 2018

If atom/atom-select-list#25 get merged and using that version of select-list will fix this issue.
No change required on command-palette's code.

@t9md
Copy link
Contributor Author

t9md commented Feb 26, 2018

You can notice big DEALY between timing from mini-editor-open to mini-editor-focus(by blue-border).

  • Before fix: big GAP between mini-editor-open to blue-border-focus-indicator. Typing text is not immediately inputed to mini-editor
  • After fix: no GAP, immediate focused-blue-border on open mini-editor. Can start typing immediately

Before fix (current atom-beta v1.25.0-beta2)

slow-palette

After fix (using atom/atom-select-list#25):

not-slow-palette

Detail of what's happenning

Command rendered in 2 steps.
step 1 render 10 command, then show mini-editor(its' OK).
step 2 render rest of all items(over 700 if installed vim-mode-plus), which make command-palette's UX really slow.

Step 2 rendering is just unnecessary rendering since its invisible item. But because of BUG it's happening.

It spend long time for visibilityObserver.change related function call.
Which actually rendering all command(over 700 command in my case since I'm vim-mode-plus user).
This is just bug, fixed it in atom/atom-select-list#25.
command-palette-view_js_ ___github_command-palette

@daviwil
Copy link
Contributor

daviwil commented Feb 27, 2018

Fixed by atom/atom-select-list#25

@daviwil daviwil closed this as completed Feb 27, 2018
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants