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)}