Commit graph

4 commits

Author SHA1 Message Date
57b36798b9 add plugin settings, per-tile refresh, settings menu, touch-friendly UI
- Plugin settings infrastructure in PluginManager with config/plugin_settings.cfg
  storage, manifest [settings] sections, CRUD API, plugin_setting_changed signal
- Per-tile refresh intervals: 100ms base tick, per-tile update_interval_ms
  metadata, dynamic tween durations clamped to refresh window
- Settings menu (PopupPanel) with General/Plugins/About tabs, plugin
  activation toggles, per-plugin settings cog buttons
- Plugin settings popup (PopupPanel) with dynamic UI from setting definitions
  (SpinBox/CheckBox/LineEdit), auto-save on change
- Modal behavior: exclusive = true on settings windows
- Touch-friendly sizing: enlarged close buttons, cog buttons, controls, spacing
- Red corner close button redesign with rounded corners, hover/pressed states
- Split system_monitor into local_system_monitor (CPU, Memory) and test plugins
- Plugin activation/deactivation with layout preservation
2026-05-21 12:47:25 -04:00
ebf97a6fc8 redesign tile action menu with toolbar and submenus
- replace old PopupMenu (flat preset list) with PopupPanel-based menu
- add 3-icon toolbar: ⚙ Settings, ℹ Info, ✕ Remove (+) + Add
- red ✕ on tiles removes the tile; green + on empty space opens add-tile submenu
- 'Themes ▸' button opens a submenu with all ShaderPresets
- add-tile submenu populates from PluginManager.get_all_tile_defs()
- all toolbar buttons are 48×48 flat buttons with 24px font for touch
- orphan PopupPanel children cleaned up during grid rebuild
2026-05-21 09:19:29 -04:00
6aba0e23d0 fix: multi-cell tile drag snaps by module position, not mouse
_end_drag now calculates the target grid cell from the module's visual
top-left position (mouse_pos - grab_offset) instead of the raw mouse
position. This prevents multi-cell tiles from jumping an extra cell when
grabbed near an edge.
2026-05-21 09:09:43 -04:00
db0c6780df cleanup: remove unneeded .gitkeep files after layout auto-creation 2026-05-21 09:03:38 -04:00