diff --git a/frontend/react/src/ui/panels/drawingmenu.tsx b/frontend/react/src/ui/panels/drawingmenu.tsx index 531bd8a8..472e1c03 100644 --- a/frontend/react/src/ui/panels/drawingmenu.tsx +++ b/frontend/react/src/ui/panels/drawingmenu.tsx @@ -69,6 +69,12 @@ export function DrawingMenu(props: { open: boolean; onClose: () => void }) { function renderDrawingsContainerControls(container: DCSDrawingsContainer, containerSearchString: string) { if (container.hasSearchString(containerSearchString)) { + /* The following snippet automatically open containers that contains searched drawings */ + if (!openContainers.includes(container) && containerSearchString != "") { + openContainers.push(container); + setOpenContainers([...openContainers]); + } + return (
@@ -149,8 +155,8 @@ export function DrawingMenu(props: { open: boolean; onClose: () => void }) { hover:scale-125 `} onClick={() => { - const latLng = drawing.getLayer()['getLatLng'] && drawing.getLayer()['getLatLng'](); - const bounds = drawing.getLayer()['getBounds'] && drawing.getLayer()['getBounds'](); + const latLng = drawing.getLayer()["getLatLng"] && drawing.getLayer()["getLatLng"](); + const bounds = drawing.getLayer()["getBounds"] && drawing.getLayer()["getBounds"](); latLng && getApp().getMap().setView(latLng, 14); bounds && getApp().getMap().fitBounds(bounds); }} @@ -306,7 +312,16 @@ export function DrawingMenu(props: { open: boolean; onClose: () => void }) { Mission drawings
- setSearchString(search)} text={searchString || ""}> + { + setSearchString(search); + if (search === "") { + setOpenContainers([]); + } + }} + text={searchString || ""} + >
{mainDrawingsContainer.container && renderDrawingsContainerControls(mainDrawingsContainer.container, searchString)}
@@ -326,7 +341,16 @@ export function DrawingMenu(props: { open: boolean; onClose: () => void }) { Navpoints
- setNavpointSearchString(search)} text={navpointSearchString || ""}> + { + setNavpointSearchString(search); + if (search === "") { + setOpenContainers([]); + } + }} + text={navpointSearchString || ""} + >
{navpointsContainer.container && renderDrawingsContainerControls(navpointsContainer.container, navpointSearchString)}