Force restart/reload or reload/rebind from plugin


#1

I've had mixed success with doing a window.reload(true) to force a reload of local cache of the web interface to account for UI changes from plugins and was wondering if there were any internal commands to spawn the reload overlay, which seems to be extremely consistent when it comes to forcing a cache refresh.

In one case (Tab Order) I also need to be able to restart the OctoPrint service first to re-read the appearance > components > order > tab settings it updates to config.yaml.

Any suggestions on initiating the restart,reload, or possibly a way to reload settings and rebind the UI?


#2

You only have to reload the page (ignoring the cache) if your resources have changed, e.g. your javascript viewmodel. If you want to move dom nodes (I guess this is what the tab order plugin does) you could use jquery's detach() method. This also keeps the data binding.


#3

The TabOrder plugin actually just puts a front-end to the

appearance:
  components:
    order:
      tab:

global settings in config.yaml. Once a change is made the UI has to be reloaded in order for the settings to be applied and the tabs to re-order as configured.