From 57a81feec8d35d31c02ad213f22a9785248daf23 Mon Sep 17 00:00:00 2001 From: linoe97 Date: Thu, 16 Jun 2022 02:25:41 +0200 Subject: [PATCH] fixed tooltip behavior + minor --- frontend/src/components/AddNewRegex.tsx | 4 +-- frontend/src/components/Header/index.tsx | 23 ++++++++++---- frontend/src/components/RegexView/index.tsx | 9 ++++-- frontend/src/components/ServiceRow/index.tsx | 14 ++++++--- frontend/src/pages/HomePage.tsx | 10 ++++-- frontend/src/pages/ServiceDetails.tsx | 32 ++++++++++++++------ 6 files changed, 65 insertions(+), 27 deletions(-) diff --git a/frontend/src/components/AddNewRegex.tsx b/frontend/src/components/AddNewRegex.tsx index 784582f..b91942b 100755 --- a/frontend/src/components/AddNewRegex.tsx +++ b/frontend/src/components/AddNewRegex.tsx @@ -89,8 +89,8 @@ function AddNewRegex({ opened, onClose, service }:{ opened:boolean, onClose:()=> {...form.getInputProps('regex')} /> - + (null) const [changePasswordModal, setChangePasswordModal] = useState(false); + const [tooltipAddOpened, setTooltipAddOpened] = useState(false); + const [tooltipHomeOpened, setTooltipHomeOpened] = useState(false); const submitRequest = async (values:ChangePassword) => { setLoadingBtn(true) @@ -110,20 +112,29 @@ function Header() {
{ location.pathname !== "/"? - + navigator("/")}> + onClick={()=>navigator("/")} + aria-describedby="tooltip-home-id" + onFocus={() => setTooltipHomeOpened(false)} onBlur={() => setTooltipHomeOpened(false)} + onMouseEnter={() => setTooltipHomeOpened(true)} onMouseLeave={() => setTooltipHomeOpened(false)}> :null} { srv_id? - - setOpen(true)} size="xl" radius="md" variant="filled"> + + setOpen(true)} size="xl" radius="md" variant="filled" + aria-describedby="tooltip-add-id" + onFocus={() => setTooltipAddOpened(false)} onBlur={() => setTooltipAddOpened(false)} + onMouseEnter={() => setTooltipAddOpened(true)} onMouseLeave={() => setTooltipAddOpened(false)}> - : - setOpen(true)} size="xl" radius="md" variant="filled"> + : + setOpen(true)} size="xl" radius="md" variant="filled" + aria-describedby="tooltip-add-id" + onFocus={() => setTooltipAddOpened(false)} onBlur={() => setTooltipAddOpened(false)} + onMouseEnter={() => setTooltipAddOpened(true)} onMouseLeave={() => setTooltipAddOpened(false)}> } diff --git a/frontend/src/components/RegexView/index.tsx b/frontend/src/components/RegexView/index.tsx index 000157a..5be2f2f 100755 --- a/frontend/src/components/RegexView/index.tsx +++ b/frontend/src/components/RegexView/index.tsx @@ -23,6 +23,7 @@ function RegexView({ regexInfo }:{ regexInfo:RegexFilter }) { } const [deleteModal, setDeleteModal] = useState(false); + const [tooltipOpened, setTooltipOpened] = useState(false); const deleteRegex = () => { deleteregex(regexInfo.id).then(res => { @@ -44,8 +45,12 @@ function RegexView({ regexInfo }:{ regexInfo:RegexFilter }) { {regex_expr} - - setDeleteModal(true)} size="xl" radius="md" variant="filled"> + + setDeleteModal(true)} size="xl" radius="md" variant="filled" + aria-describedby="tooltip-id" + onFocus={() => setTooltipOpened(false)} onBlur={() => setTooltipOpened(false)} + onMouseEnter={() => setTooltipOpened(true)} onMouseLeave={() => setTooltipOpened(false)} + > diff --git a/frontend/src/components/ServiceRow/index.tsx b/frontend/src/components/ServiceRow/index.tsx index 02c388c..e88e68c 100755 --- a/frontend/src/components/ServiceRow/index.tsx +++ b/frontend/src/components/ServiceRow/index.tsx @@ -20,6 +20,7 @@ function ServiceRow({ service, onClick, additional_buttons }:{ service:Service, const [stopModal, setStopModal] = useState(false); const [buttonLoading, setButtonLoading] = useState(false) + const [tooltipStopOpened, setTooltipStopOpened] = useState(false); const stopService = async () => { setButtonLoading(true) @@ -112,14 +113,17 @@ function ServiceRow({ service, onClick, additional_buttons }:{ service:Service, {additional_buttons} {["pause","wait"].includes(service.status)? - + setStopModal(true)} size="xl" radius="md" variant="filled" - disabled={service.status === "stop"}> + disabled={service.status === "stop"} + aria-describedby="tooltip-stop-id" + onFocus={() => setTooltipStopOpened(false)} onBlur={() => setTooltipStopOpened(false)} + onMouseEnter={() => setTooltipStopOpened(true)} onMouseLeave={() => setTooltipStopOpened(false)}> : - + @@ -129,7 +133,7 @@ function ServiceRow({ service, onClick, additional_buttons }:{ service:Service, } - + @@ -149,7 +153,7 @@ function ServiceRow({ service, onClick, additional_buttons }:{ service:Service, {setStopModal(false);}} action={stopService} opened={stopModal} diff --git a/frontend/src/pages/HomePage.tsx b/frontend/src/pages/HomePage.tsx index a893da6..f7950c5 100755 --- a/frontend/src/pages/HomePage.tsx +++ b/frontend/src/pages/HomePage.tsx @@ -15,6 +15,7 @@ function HomePage() { const [loader, setLoader] = useState(true); const navigator = useNavigate() const [open, setOpen] = useState(false); + const [tooltipAddServOpened, setTooltipAddServOpened] = useState(false); const updateInfo = async () => { await servicelist().then(res => { @@ -35,10 +36,13 @@ function HomePage() { {services.length > 0?services.map( srv => { navigator("/"+srv.id) }} />):<> No services found! Add one clicking the "+" buttons - +
- - setOpen(true)} size="xl" radius="md" variant="filled"> + + setOpen(true)} size="xl" radius="md" variant="filled" + aria-describedby="tooltip-addSrv-id" + onFocus={() => setTooltipAddServOpened(false)} onBlur={() => setTooltipAddServOpened(false)} + onMouseEnter={() => setTooltipAddServOpened(true)} onMouseLeave={() => setTooltipAddServOpened(false)}>
} diff --git a/frontend/src/pages/ServiceDetails.tsx b/frontend/src/pages/ServiceDetails.tsx index bfcbb9d..23bef0a 100755 --- a/frontend/src/pages/ServiceDetails.tsx +++ b/frontend/src/pages/ServiceDetails.tsx @@ -56,6 +56,9 @@ function ServiceDetails() { const [deleteModal, setDeleteModal] = useState(false) const [changePortModal, setChangePortModal] = useState(false) + const [tooltipDeleteOpened, setTooltipDeleteOpened] = useState(false); + const [tooltipChangeOpened, setTooltipChangeOpened] = useState(false); + const [tooltipAddRegexOpened, setTooltipAddRegexOpened] = useState(false); const deleteService = () => { deleteservice(serviceInfo.id).then(res => { @@ -85,12 +88,20 @@ function ServiceDetails() { return
- - setDeleteModal(true)} size="xl" radius="md" variant="filled"> + + setDeleteModal(true)} size="xl" radius="md" variant="filled" + aria-describedby="tooltip-delete-id" + onFocus={() => setTooltipDeleteOpened(false)} onBlur={() => setTooltipDeleteOpened(false)} + onMouseEnter={() => setTooltipDeleteOpened(true)} onMouseLeave={() => setTooltipDeleteOpened(false)} + > - - setChangePortModal(true)} size="xl" radius="md" variant="filled"> + + setChangePortModal(true)} size="xl" radius="md" variant="filled" + aria-describedby="tooltip-change-id" + onFocus={() => setTooltipChangeOpened(false)} onBlur={() => setTooltipChangeOpened(false)} + onMouseEnter={() => setTooltipChangeOpened(true)} onMouseLeave={() => setTooltipChangeOpened(false)} + > }> @@ -98,10 +109,13 @@ function ServiceDetails() { {regexesList.length === 0?<> No regex found for this service! Add one by clicking the "+" buttons - +
- - setOpen(true)} size="xl" radius="md" variant="filled"> + + setOpen(true)} size="xl" radius="md" variant="filled" + aria-describedby="tooltip-AddRegex-id" + onFocus={() => setTooltipAddRegexOpened(false)} onBlur={() => setTooltipAddRegexOpened(false)} + onMouseEnter={() => setTooltipAddRegexOpened(true)} onMouseLeave={() => setTooltipAddRegexOpened(false)}>
: @@ -114,14 +128,14 @@ function ServiceDetails() { setDeleteModal(false) } action={deleteService} opened={deleteModal} /> setChangePortModal(false)} action={changePort} opened={changePortModal}