diff --git a/frontend/src/components/MobileTitleBar.tsx b/frontend/src/components/MobileTitleBar.tsx index 8883328..d15ffb3 100644 --- a/frontend/src/components/MobileTitleBar.tsx +++ b/frontend/src/components/MobileTitleBar.tsx @@ -1,4 +1,6 @@ import { useEffect, useLayoutEffect, useRef, useState } from 'react'; +import { useNavigate } from 'react-router-dom'; +import { useAuth } from '../contexts/AuthContext'; type MobileTitleBarProps = { title: string; @@ -13,6 +15,8 @@ const MobileTitleBar = ({ onMenuClick, variant = 'page' }: MobileTitleBarProps) => { + const { user } = useAuth(); + const navigate = useNavigate(); const containerRef = useRef(null); const menuButtonRef = useRef(null); const mainContentRef = useRef(null); @@ -155,6 +159,10 @@ const MobileTitleBar = ({ const titleSectionClass = variant === 'admin' ? 'admin-title-section' : 'page-title-section'; const titleTextClass = variant === 'admin' ? 'admin-title-text' : 'page-title-text'; + const handleUserClick = () => { + navigate('/settings'); + }; + return (
@@ -169,6 +177,13 @@ const MobileTitleBar = ({
{title}
+
); diff --git a/frontend/src/styles/Layout.css b/frontend/src/styles/Layout.css index 528ae0f..39c167a 100644 --- a/frontend/src/styles/Layout.css +++ b/frontend/src/styles/Layout.css @@ -360,6 +360,31 @@ label, font-size: var(--icon-lg); } +/* Mobile user button (right side of mobile title bar) */ +.mobile-user-btn { + display: none; + align-items: center; + justify-content: center; + width: 32px; + height: 32px; + background: rgba(var(--color-accent-rgb), 0.2); + border: none; + border-radius: 50%; + color: var(--color-text-primary); + cursor: pointer; + transition: all 0.2s ease; + flex-shrink: 0; +} + +.mobile-user-btn:hover { + background: rgba(var(--color-accent-rgb), 0.35); +} + +.mobile-user-btn .user-initial { + font-size: 0.875rem; + font-weight: 700; +} + /* ========== ACTION BUTTONS IN SLIDER ========== */ @@ -544,6 +569,20 @@ label, background-color: transparent; } + /* Show mobile user button on right side */ + .mobile-user-btn { + display: flex; + grid-column: 3; + justify-self: end; + margin-right: 6px; + } + + .mobile-title-slider .mobile-user-btn { + width: 32px; + height: 32px; + min-width: 32px; + } + .page-tabs-container, .admin-tabs-container { padding: 0.75rem;