PyVizAST Prerelease 0.7.0-rc2
Pre-release
Pre-release
Virtual Cursor System Rewrite
Complete Refactor:
- Unified state management: Single
cursorStateRefobject instead of multiple states - Smooth position interpolation with
CURSOR_SMOOTHandSNAP_SMOOTHfactors - CSS variables for theme support (
--cursor-bg,--cursor-border, etc.) - Cleaner class naming:
cursor-dot,cursor-ring,cursor-progress,cursor-snap
Snap Animation:
- Smooth snap indicator following with separate smooth factor (0.2)
- First snap initializes position immediately to avoid delay
- Snap indicator now correctly follows node center position
Performance Optimizations:
- CSS
transforminstead ofleft/topfor GPU acceleration - Use
node.renderedPosition()for accurate screen coordinates opacitytransitions instead ofdisplayfor smoother animations- CSS
will-changefor optimized rendering
Bug Fixes:
- Fixed CSS animation conflicting with JS position (use margin centering)
- Fixed snap position using
renderedPosition()instead of manual calculation - Fixed snap selecting wrong node (distance squared comparison bug)
- Added validation for
renderedPosition()return values
Files Modified:
frontend/src/components/ASTVisualizer.js- Complete cursor system rewritefrontend/src/components/components.css- CSS variables, simplified animationsfrontend/src/App.js- Removed unused GestureType import