tum-esi / wade

WoT API Development Environment built on top of thingweb.node-wot
https://www.ei.tum.de/en/esi/home/
MIT License
26 stars 6 forks source link

[UI] Dynamic tabs wrapper for views #70

Open miguelrk opened 4 years ago

miguelrk commented 4 years ago

Problem Switching between TDs/SDs/Folders is somewhat cumbersome for the users, as he must save before switch, or all edits (e.g. in editor) will be lost.

Solution A dynamically tabbed interface similar to that of code editors like vscode can be implemented, such that a new tab is created when the user clicks (or double clicks) an item in the left tree-view, a new tab is created. Users can then perform edits, switch tabs, return and changes will be there (although not saved) until manually saved (see bellow).

wade-tabs-dynamic

A keyboard shortcut to save current view edits with Cmd/Ctrl + S could be done as follows:

// 83 corresponds to the "S" character in the ASCII Table
@keydown.ctrl.83="save()"
@keydown.meta.83="save()" // On Macintosh keyboards, meta is the command key (⌘).
eileenoo commented 4 years ago

Problem Switching between TDs/SDs/Folders is somewhat cumbersome for the users, as he must save before switch, or all edits (e.g. in editor) will be lost.

Solution A dynamically tabbed interface similar to that of code editors like vscode can be implemented, such that a new tab is created when the user clicks (or double clicks) an item in the left tree-view, a new tab is created. Users can then perform edits, switch tabs, return and changes will be there (although not saved) until manually saved (see bellow).

wade-tabs-dynamic

A keyboard shortcut to save current view edits with Cmd/Ctrl + S could be done as follows:

// 83 corresponds to the "S" character in the ASCII Table
@keydown.ctrl.83="save()"
@keydown.meta.83="save()" // On Macintosh keyboards, meta is the command key (⌘).

Cool idea! Sounds like a lot of work though 😄 Adding some kind of keyboard commands could be a good first step!