Duet3D / DuetWebControl

A completely new web interface for the Duet electronics
GNU General Public License v3.0
408 stars 230 forks source link

Show Critical Info on All Pages when on Mobile #469

Open Cobular opened 1 year ago

Cobular commented 1 year ago

Is your feature request related to a problem? Please describe.

I'm always frustrated by the fact that I cannot see basic and critical stats like temperature on mobile when not on the main page. Mainly comes up when waiting for it to come up to temp and I need to keep looking at that number to know when it's fine, even if I want to do other things while waiting.

Describe the solution you propose.

It would be great to have some kind of flowing information window, possibly on the bottom of the screen, that persistently shows the most important information, even when on other pages. For me, this would be all temperatures (just as numerals, no graph), print progress, and overall machine status. Customizability would be nice but that probably opens a while can of worms on a few axes, while a simple implementation of the above probably won't be tooo complicated, as long as hoisting existing components doesn't become a props nightmare.

Describe alternatives you've considered

Right now, I can't figure out a way to get this kind of persisted floating information!

Provide any additional context or information.

IMG_20230513_164217_580

I see 3 main options (2 pictured)

  1. (Pictured) floating pull (square example) - semitransparent background, shows stats
  2. (Pictured) place very basic stats in menu bar. Less room, but it can never really occlude anything esp if it's only rendered when there's room.
  3. (Not pictured) something like the tablet horizontal view with the split, having some controls down on the bottom half of the screen

I'm more than happy to produce a PR for one of these, but let's see what everyone thinks first!

chrishamm commented 1 year ago

Previous DWC versions had a button at the top to toggle the visibility of the info panels (now the Status page) and I may add that back at some point. However, this isn't a high priority at this point.

I agree better customization options would solve this as well, but I don't believe DWC is a good basis for user-defined UI changes any more (although it's pretty straight-forward to modify in a dev environment). The current layout of DWC is made to accomodate lots of different configuration scenarios in the first place, so embedded temperature labels are no real option.

I may develop a successor of DWC which primarily focuses on customisability, but I can't say yet if and when I will start working on that.