diff --git a/src/features/subclass/AbilitiesModification.tsx b/src/features/subclass/AbilitiesModification.tsx index 9d8d15a..b862870 100644 --- a/src/features/subclass/AbilitiesModification.tsx +++ b/src/features/subclass/AbilitiesModification.tsx @@ -108,6 +108,14 @@ const OptionButton = styled(Button)(({ theme }) => ({ margin: theme.spacing(0.25), })); +const BlurredBackground = styled('div')({ + backgroundColor: 'rgba(255, 255, 255, 0.1)', + backdropFilter: 'blur(4px)', + borderRadius: '4px', + padding: '8px', + marginBottom: '16px', +}); + const SuperModSlot = styled('div')(({ theme }) => ({ width: 250, height: 250, @@ -313,10 +321,24 @@ const AbilitiesModification: React.FC = ({ subclass const handleMouseEnter = (event: React.MouseEvent, slotId: string) => { const rect = event.currentTarget.getBoundingClientRect(); - setSubmenuPosition({ - top: rect.bottom + window.scrollY, - left: rect.left + window.scrollX, - }); + const category = slotId.split('-')[0]; + + if (category === 'FRAGMENTS') { + // Find the first fragment slot's position + const firstFragmentSlot = document.querySelector('[data-slot-id^="FRAGMENTS-"]'); + if (firstFragmentSlot) { + const firstRect = firstFragmentSlot.getBoundingClientRect(); + setSubmenuPosition({ + top: firstRect.bottom + window.scrollY, + left: firstRect.left + window.scrollX, + }); + } + } else { + setSubmenuPosition({ + top: rect.bottom + window.scrollY, + left: rect.left + window.scrollX, + }); + } setHoveredSlot(slotId); }; @@ -341,7 +363,11 @@ const AbilitiesModification: React.FC = ({ subclass return ( -
handleMouseEnter(e, slotId)} onMouseLeave={handleMouseLeave}> +
handleMouseEnter(e, slotId)} + onMouseLeave={handleMouseLeave} + > = ({ subclass
); }; - export default AbilitiesModification;