paranext / paranext-core

Electron client, extension host, and C# library for Paranext
https://paranext.github.io/paranext-core/
MIT License
17 stars 2 forks source link

long delay before Open Scripture Editor dialog appears #1079

Open tombogle opened 2 months ago

tombogle commented 2 months ago

Describe the bug Sometimes after clicking Open Scripture Editor on the menu, there is a very long delay before the dialog appears. I have only ever seen this when I have the Toggle Include My Paratext 9 Projects on, and I'm pretty sure it is related to that, since I have a lot of projects and it takes a long time to load them all. However, there seems to be a timing issue. See details below.

To Reproduce Steps to reproduce the behavior:

  1. If Toggle Include My Paratext 9 Projects is not already on, toggle it on and restart Platform.Bible
  2. Open the main Platform.Bible menu
  3. On the Project menu, click Open Scripture Editor
  4. Sometimes the dialog appears quickly and displays a message that it is loading the projects, but other times it does not. There is no indication that it is doing anything, but if you wait a minute or so, it will eventually appear.

Expected behavior Ideally, I would expect the dialog to appear very quickly and then either display the message about loading projects or (better yet), load them lazily so that the list begins to populate more quickly. (Of course, it would be nice to find a way to load them more quickly, but maybe this is faster when not running through the debugger.) As a last resort, if we can't make the dialog display right away, the pointer should change or there should be some other visual cue that it is working.

tombogle commented 2 months ago

I see this violation in the console, so maybe this is related: useTouchMove.js:154 [Violation] Added non-passive event listener to a scroll-blocking 'wheel' event. Consider marking event handler as 'passive' to make the page more responsive. See https://www.chromestatus.com/feature/5745543795965952 The call stack for this does not appear to include any of our code.