Skip to content

Add ORB HUD submenu, restore modal scrolling, and improve mobile slider UX#11

Open
jeromepotter wants to merge 3 commits intomainfrom
codex/enhance-undo-functionality-and-ui-layout-n9dv8q
Open

Add ORB HUD submenu, restore modal scrolling, and improve mobile slider UX#11
jeromepotter wants to merge 3 commits intomainfrom
codex/enhance-undo-functionality-and-ui-layout-n9dv8q

Conversation

@jeromepotter
Copy link
Copy Markdown
Owner

Motivation

  • Restore lost modal scrolling and fix mobile slider touch/focus regressions while adding a compact ORB HUD workflow to avoid forcing users into the modal for common orb settings.
  • Improve slider visuals and keep slider labels/fills synchronized across UI so mobile dragging and value displays behave consistently.
  • Reduce unwanted white space on small screens by adjusting orbit sizing and ensure side panels auto-adapt for mobile.
  • Add small, frequent UX quality-of-life controls (transpose ±1 nudges, undo/redo plumbing) to streamline editing flows.

Description

  • Introduced an inline ORB HUD dropdown using a details.side-panel at #orbs-panel and wired inline controls #o-trigger-inline and #o-collision-inline to sync with the modal via syncOrbInlineControls() and event handlers.
  • Restored modal scrolling and click-away dismissal by adding #modal-overlay, switching .modal to position: fixed, adding max-height: 80vh and -webkit-overflow-scrolling: touch, and positioning the global panel near #settings-button when opened (openGlobal).
  • Reworked range inputs into a slider-pill component and added helper functions formatSliderValue(), updateSliderValue(), updateSliderFill(), and refreshSliderDisplays() to keep displayed labels and pill fill synchronized; range inputs were updated to use data-value-target/data-format and call updateSliderValue() on input.
  • Mobile/touch fixes: set -webkit-tap-highlight-color: transparent, hid native thumbs visually, added focus handling to avoid the rectangle ghost on tap, improved event handling for gate-speed-range (change/pointerup/touchend/blur) and other slider inputs to reduce noisy interactions.
  • Layout and UX tweaks: added .btn-small, .btn-fixed, .control-buttons-row, restructured HUD into .hud-group, adjusted STATE.orbitRadius for small viewports, added updateSidePanelsForViewport() to auto-open/close side details on desktop/mobile, and added transpose nudge buttons wired to adjustGlobalTranspose().
  • State/undo improvements: added redoStack and undo/redo plumbing (pushUndoState(), undoLastMove(), redoLastMove(), updateUndoRedoButtons()), persisted more fields in snapshots, and refreshed UI state when applying snapshots.

Testing

  • Launched a static server with python -m http.server 8000 successfully to serve the updated index.html file.
  • Attempted to run a Playwright script to capture desktop and mobile screenshots, but the browser process crashed in the environment (Playwright failed to launch and the screenshot step did not complete), so automated screenshot validation failed.
  • No unit tests or other automated test suites were executed.

Codex Task

@netlify
Copy link
Copy Markdown

netlify bot commented Jan 16, 2026

Deploy Preview for les-cercles ready!

Name Link
🔨 Latest commit 9e70520
🔍 Latest deploy log https://app.netlify.com/projects/les-cercles/deploys/6969976f1bacce0008d7babf
😎 Deploy Preview https://deploy-preview-11--les-cercles.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant