power_lora_dom.js existed because a canvas custom widget could not repaint
itself inside core's WidgetLegacy wrapper, so toggling a lora or nudging a
strength changed the value with no visible feedback. Frontend 1.48.7's
WidgetLegacy.vue now assigns `widget.triggerDraw`, documented in litegraph's
widget types as the compatibility hook for "widgets implementing the draw
method when displayed in non-canvas renderers". That is the missing piece, so
the parallel 528-line DOM implementation is no longer needed.
- mxd_nodes2.js: add redrawWidget()/redrawWidgets(). Optional-call triggerDraw,
so both are no-ops in classic mode and on frontends that lack it.
- MxdBaseWidget.mouse(): repaint after every pointer event. Also fix its
"pointer left the widget" test, which compared node-relative bounds against
row-relative coordinates under Nodes 2.0 and swallowed clicks.
- power_lora_base/loader: repaint on the mutations that happen outside a
pointer handler — slot menu, toggle-all, async lora info, Show Strengths.
- Delete power_lora_dom.js, mxd_power_lora.css, and the MXD.PowerLora.RowStyle
setting. None of them were ever published, so no workflow or setting breaks.
No Python touched; harness still reports 65 nodes identical.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>