-
Notifications
You must be signed in to change notification settings - Fork 325
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
New UI for Backend Control #491
Comments
I think for now we should just show what node you are connected to as a text label below the on off switch. On hover, a "change" link could fade in, and clicking it takes you to a page that explains what it means to change it, offer up the defaults along with their constraints and allow users to add more. If people start making use of this feature, then we could offer a "quick switch" drop down, but I don't think we need it yet. It's a useful feature but we do need enough space to explain the consequences of changing it, so I'd forgo the drop down at this point. |
@olizilla I like the idea, hovewer something to note is that we already display info about currently used API and Gateway in the bottom "status" section.
|
Feature: ON / OFF Toggle This PR delivers an initial part of #491: - Moves status fields back to the space-header, resulting in two clear sections instead of three vague ones - Replaces node type toggle with a global On/Off switch that enables/disables gateway redirect and all active API integrations. - Perfect for users who don't want to run js-ipfs all the time to save battery, want to disable redirect or temporarily block access to API `window.ipfs` - Things that don't require access to API will still work in OFF state: linkify, copy IPFS Path, custom protocol handlers (they just redirect to public gw) - Moves switch for changing between _External_ (js-ipfs-api) and _Embedded_ (js-ipfs) to _Preferences_ screen - Hides unused options when embedded node is active (_Preferences_ screen) - Changes fonts and icons to ones from ipfs-css
Activate / Suspend ToggleFirst step was to move "node type toggle" to Preferences and introduce a global "on/off" toggle that activates/suspends all IPFS integrations. Details can be found in PR #500. It just got merged and released to Beta in v2.3.1.9890 🚀 So far the UI moves into more calm, less cluttered direction: NextMy initial thoughts on how to introduce "backed selector" into this minimal UI:
|
After playing with options, I've come up to realization that consistent UI requires us to inline gateway selector as well. Mockup: Mechanics of both selectors would be similar to Material Design: exposed dropdown menu: Thoughts? |
That could work, but the extension already looks like a drop down menu, and a drop-down in a drop-down isn't ideal. I'd start with a full page for it and figure our all the info we need to get across and the UI for adding new backends, and give the user access to it as a menu option. We can figure out the "quick change" selector once that is place. |
Started gathering related feature requests in milestone/14. Gist of feature request from #591:
|
I noticed the setting I'm not sure what's the best way to improve it but it's a weird setting because it flips itself by toggling the public gateway from the main dropdown, and also automatically depending on local daemon' s availability. Perhaps |
|
Closing in favor of #689. |
Tasks
Background
Click to expand historical notes on why this change was proposed
Right now we have a simple toggle between Embedded node (browserified js-ipfs) and External node (usually go-ipfs at IP and port defined in Preferences, accessed over HTTP API):
Limitations
window.ipfs
object during web development requires going over multiple checkboxes in Preferences or disabling the entire extension via Addon Manager (was the case when troubleshooting CORS bugs).window.ipfs
) is enabled, and when "vanilla public" (no API) gateway is used. This makes troubleshooting of various issues harder than necessary.Proposed UI Changes
Let's replace two-state toggle with global ON/OFF toggle + a drop-down list that enables selection from multiple available backends:
Browser Action Popup
window.ipfs
(if enabled in preferences)window.ipfs
Simplified Backend List on Preferences Screen
Preferences screen should have an UI for adding/removing "IPFS Backends" that appear in the dropdown list rendered in
browser_action
.(why both need to be defined? Gateway port can be fetched from API port, but it is not 100% safe as people are known to put it behind reverse-proxy such as nginx, and we want to use one list for Gateway-only backends)
cc @olizilla @akrych
Thoughts?
The text was updated successfully, but these errors were encountered: