Motivation & Problem
In WorkspacePanel._homeObjectMorph, transitions between Home (Server stats / SQL) and an Object (Table / View / Routine) combine two separate slide animations:
QueryaSwitchingBody applies horizontal slide (Offset(0.015, 0)).
- The nested child is wrapped in
QueryaFadeSlide, which applies vertical slide (Offset(0, 0.02)).
When morphing between Home and an Object, the content translates diagonally on both axes simultaneously with separate curve evaluation, causing a noticeable visual wobble rather than a clean, fluid motion.
Additionally, transition styles across the workspace lack uniformity:
Server ↔ SQL tabs use pure opacity crossfade (QueryaCrossFadeStack, 200ms).
Table A ↔ Table B uses vertical fade-slide (QueryaFadeSlide, 200ms).
Home ↔ Object uses compound dual-axis slide.
- Mongo / Redis Explorer ↔ Stats uses no animation at all (hard cut).
Proposed Scope & Fluid Motion
- Harmonize
_homeObjectMorph:
- Eliminate conflicting multi-axis slides. Use a single directional slide (e.g. subtle vertical
Offset(0, 0.015) or pure crossfade for level-0 to level-1 hierarchy) across the morph layers.
- Coordinate the entrance of new objects with the exit of the home view so both elements move in harmony along the same vector.
- Unified Motion Hierarchy:
- Tab switches on the same level: pure opacity crossfade (
QueryaCrossFadeStack).
- Hierarchical drill-downs (Server → Table, or Database → Collection): single consistent forward/backward slide with
QueryaMotion.enter / QueryaMotion.exit curves.
- Sibling switches (Table A → Table B): subtle vertical cross-slide without layout shift.
- Accessibility:
- Ensure
QueryaMotionScope is strictly respected: on reduced motion, duration is halved and slide offsets are minimized; on off, transitions are instant.
Acceptance Criteria
Motivation & Problem
In
WorkspacePanel._homeObjectMorph, transitions between Home (Server stats / SQL) and an Object (Table / View / Routine) combine two separate slide animations:QueryaSwitchingBodyapplies horizontal slide (Offset(0.015, 0)).QueryaFadeSlide, which applies vertical slide (Offset(0, 0.02)).When morphing between Home and an Object, the content translates diagonally on both axes simultaneously with separate curve evaluation, causing a noticeable visual wobble rather than a clean, fluid motion.
Additionally, transition styles across the workspace lack uniformity:
Server ↔ SQLtabs use pure opacity crossfade (QueryaCrossFadeStack, 200ms).Table A ↔ Table Buses vertical fade-slide (QueryaFadeSlide, 200ms).Home ↔ Objectuses compound dual-axis slide.Proposed Scope & Fluid Motion
_homeObjectMorph:Offset(0, 0.015)or pure crossfade for level-0 to level-1 hierarchy) across the morph layers.QueryaCrossFadeStack).QueryaMotion.enter/QueryaMotion.exitcurves.QueryaMotionScopeis strictly respected: onreducedmotion, duration is halved and slide offsets are minimized; onoff, transitions are instant.Acceptance Criteria