StarbeamOne / home

Basic central repository for issue-tracking and documentation (wiki)
MIT License
2 stars 0 forks source link

Improve Reconnection Experience #69

Closed Mike-E-angelo closed 1 year ago

Mike-E-angelo commented 1 year ago

We have two painful issues w/ the Blazor reconnection experience:

  1. Circuits are disconnected and lead to a lost entry state for artists when they are in the middle of creating products. This is a known issue and is supposed to be fixed for .NET8. However, recent language does not give me the greatest of confidence this will actually be addressed as expected. So, we want to improve this scenario so that on entry screens we auto-save the form entry (stuffed in local storage, no doubt) and reload it when circuit is lost+re-established.
  2. The reconnect experience provides a nice big button when the server cannot be found (rare) but not when the server is found but circuit is lost (very common) 🤦‍♂️ We want to improve this so that the big awesome button is available to the user in every scenario https://stackoverflow.com/questions/58404533/how-can-i-change-the-could-not-reconnect-to-the-server-text-in-blazor
konradbartecki commented 1 year ago

For number 2 you would most likely have to maintain your own fork of Blazor/dotnet and automatically refresh the page for the users when server is found, but circuit is lost (connection rejected). Maintaining a fork is a painful experience, but automatically refreshing a page on rejected connection is not easily doable without that.

See: https://github.com/dotnet/aspnetcore/pull/32122

https://github.com/konradbartecki/aspnetcore/tree/bugfix/32113-blazor-serverside-reconnection

Mike-E-angelo commented 1 year ago

Thank you for the suggestion + feedback @konradbartecki, it is appreciated. FWIW for the 2nd point it is not intended to be involved or to solve a large problem here. We simply want to have a big button that says "reconnect" like it does with failed connections:

image

I am of course super hoping that the Blazor team is able to attend to the circuit issues for .NET8, but from my view it appears that the Blazor United efforts sort of put everything up in the air, with no telling what is going to be attended to now 😞

greenbrook commented 1 year ago

So, here's the current design version.

зображення

Mike-E-angelo commented 1 year ago

Ahhh I forgot to update this thread and let you know that your work might be better spent on other tasks here. It turns out there is a "hack" that will refresh the page and re-establish the connection whenever the message is displayed. I hope to have it implemented in the next day or so. 🤞

https://engstromjimmy.com/post/2020-03-14-ReloadBlazor

Mike-E-angelo commented 1 year ago

At long last looking into this now 🙏

Mike-E-angelo commented 1 year ago

This is complete and deployed. verified on iOS/Mac/Windows: https://github.com/dotnet/aspnetcore/issues/30344#issuecomment-1474780663