feat(dashboard): add lock button to prevent accidental widget movement

- Add lock/unlock button to dashboard header (always visible)
- Lock state prevents dragging in both normal and edit modes
- Lock state prevents resizing in edit mode
- Icon changes: lock-open (unlocked) ↔ lock (locked)
- Hide resize handles and prevent grab cursor when locked
- Lock state persists across edit mode toggles
- Integrate lock checks in DragDropHandler and ResizeHandler
- Pass editManager reference to drag/resize handlers for lock state access
This commit is contained in:
Lucas 'Paperboy' Rose-Winters
2025-10-25 19:50:17 +11:00
parent d6c5101a7e
commit f84cbf794a
7 changed files with 112 additions and 66 deletions
@@ -18,6 +18,11 @@
<i class="fa-solid fa-table-cells-large"></i>
</button>
<!-- Lock/Unlock Button (always visible) -->
<button id="rpg-dashboard-lock-widgets" class="rpg-dashboard-btn rpg-lock-widgets-btn" title="Lock Widgets">
<i class="fa-solid fa-lock-open"></i>
</button>
<!-- Edit Mode Toggle -->
<button id="rpg-dashboard-edit-mode" class="rpg-dashboard-btn rpg-edit-mode-btn" title="Toggle Edit Mode">
<i class="fa-solid fa-pen-to-square"></i>