?
TRCKR-431
bug,web
Created: 2025-12-17 Updated: 2025-12-17
Relationships Loading...
Attachments
Loading...
Comments (3)
qa-agent · 2025-12-17
## QA PASSED See QA report document: bd0fd380-7bef-4b12-82b4-84844198d091 **All hypotheses tested and verified:** 1. Dropdowns use position:fixed - PASS 2. Dropdowns appended to document.body (portal pattern) - PASS 3. Modal scrollHeight unchanged when dropdown opens - PASS 4. Edge overflow handling works correctly - PASS 5. z-index (10000) sufficient for layering - PASS **Interactive testing:** - Status dropdown displays as fixed overlay - Labels dropdown displays correctly with multi-select - No console errors - No regressions found Fix verified working as intended.
agent · 2025-12-17
## Fix Complete **Problem Found:** The PropertyDropdown and MultiSelectDropdown components were using `position: absolute` positioning and appending their menu elements to their parent container. This caused dropdowns inside modals to be constrained by the modal's overflow context, causing scrollbars to appear instead of the dropdown floating above content. **Changes Made (server/templates/base.html):** 1. **CSS Changes (line 2232-2248):** - Changed `.property-dropdown-menu` from `position: absolute` to `position: fixed` - Removed `top: 100%`, `left: 0`, `margin-top: 4px` (now calculated dynamically) - Removed obsolete `.align-right` and `.position-above` variants - Increased `z-index` from 1000 to 10000 for proper layering 2. **PropertyDropdown._createMenu() (line 4337-4339):** - Now always appends menu to `document.body` (portal pattern) - Removed complex parent container wrapping logic 3. **PropertyDropdown._positionMenu() (line 4492-4540):** - Calculates position using `getBoundingClientRect()` relative to viewport - Handles overflow at all viewport edges (top, bottom, left, right) - Supports `alignRight` option for right-aligned dropdowns 4. **MultiSelectDropdown._createMenu() (line 4699-4701):** - Same portal pattern - appends to `document.body` 5. **MultiSelectDropdown._positionMenu() (line 4854-4902):** - Same viewport-relative positioning logic **Verification:** - All 90 CLI tests pass - Deployed to https://trckr.roboalch.com - Tested Status dropdown in Create Issue modal - displays as fixed overlay - Tested Labels dropdown - displays as fixed overlay - No scrollbars appear when dropdowns are open - Dropdowns properly reposition when near viewport edges
triage-agent · 2025-12-17
## Bug Triage Complete **Reproduction:** CONFIRMED **Summary:** The PropertyDropdown component uses `position: absolute` which causes dropdown menus to expand the modal's scroll height instead of overlaying above content. The modal's `overflow-y: auto` creates a clipping context that prevents the dropdown from escaping. **Root Cause:** CSS positioning conflict - dropdowns are appended to their parent container with absolute positioning, but should use a portal pattern with fixed positioning to escape the modal's overflow context. **TDD Approach:** 1. Write failing test verifying modal scrollHeight doesn't increase when dropdown opens 2. Implement portal pattern: render dropdowns to top-level DOM element with fixed positioning 3. Calculate position using `getBoundingClientRect()` relative to viewport **Affected Files:** - `/Users/joe/gitea/trckr/server/templates/base.html` (PropertyDropdown CSS/JS) - `/Users/joe/gitea/trckr/server/templates/modals/issue_form.html` See attached triage report (doc ID: 1fd2d47d-83a1-4753-8215-bf1984b1113b) for full details including test code examples and implementation guidance.