Skip to content
This repository has been archived by the owner on Apr 1, 2020. It is now read-only.

Fix #269 - Enable asynchronous loading of menu items #764

Merged
merged 35 commits into from Oct 12, 2017

Conversation

bryphe
Copy link
Member

@bryphe bryphe commented Oct 5, 2017

Issue: The current 'QuickOpen' (<Control-P>) experience is not asynchronous. For large directories, it's helpful to have the results streamed and filtered real-time, instead of having to wait for the whole structure to be crawled. There are also some architectural issues (we have two different ways of calling quickOpen.exeCommand, and arguments aren't handled correctly on all platforms).

Fix: This creates an API to host the Menu functionality. The advantage of this is that plugins can easily take advantage of creating a pop-up menu that exhibits the same filtering (or it can even be added to the config.js by calling const menu = oni.menu.create()). In addition, I'm in the process of refactoring and consolidating the code that spawns the finder process to be in a single location, and not called in the reducer.

Long-term, I'd also like to have separate NPM modules for some of this functionality (like oni-menu and oni-quick-open), which is why I started silo'ing out these files into Services/Menu - ideally all the code under there could be factored out to a separate module.

@bryphe bryphe changed the title [WIP] Fix #269 - Enable asynchronous loading of menu items Fix #269 - Enable asynchronous loading of menu items Oct 12, 2017
@bryphe bryphe merged commit 0fe8422 into master Oct 12, 2017
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

1 participant