Fix: Isolations-Rahmen war unsichtbar (lag hinter der PlanView-SVG)

box-shadow auf .pane selbst lag HINTER der eigenen Kind-SVG von PlanView
(Nutzer-Report "ich seh es nicht") — jetzt ein eigenes Overlay-Element
(.pane-isolation-frame), NACH PlanView im DOM gerendert, pointer-events:
none, damit Klicks/Griffe im Plan weiterhin durchgehen.
This commit is contained in:
2026-08-22 11:36:32 +02:00
parent 77f1fc4f70
commit ca8e56412f
2 changed files with 18 additions and 6 deletions
+10 -4
View File
@@ -2139,10 +2139,16 @@ body {
/* Gruppen-Isolation (Vectorworks „Gruppe betreten"): halbtransparenter
Orange-Rahmen (Band) am Rand der ganzen Ansicht, solange eine Gruppe
betreten ist — dieselbe visuelle Sprache wie Vectorworks' "Ansichtsbereich"-
Rahmen (Screenshot-Referenz, 2026-08-22). `box-shadow: inset` statt
`outline`, weil es eine feste rgba-Farbe trägt (kein CSS-Var-Farbmix nötig)
und als Band nach INNEN geht, ohne Layout/Grösse der Ansicht zu ändern. */
.pane-isolated {
Rahmen (Screenshot-Referenz, 2026-08-22). EIGENES Overlay-Element, NACH
PlanView im DOM gerendert (nicht `box-shadow` auf `.pane` selbst — das läge
HINTER der eigenen Kind-SVG von PlanView und wäre unsichtbar, s. Nutzer-
Report "ich seh es nicht"). `pointer-events: none`, damit Klicks/Griffe im
Plan weiterhin durchgehen. */
.pane-isolation-frame {
position: absolute;
inset: 0;
z-index: 5;
pointer-events: none;
box-shadow: inset 0 0 0 8px rgba(230, 126, 34, 0.35);
}
+8 -2
View File
@@ -697,7 +697,7 @@ function LevelPlanView({
});
return (
<section className={groupPath.length > 0 ? "pane pane-isolated" : "pane"}>
<section className="pane">
<div className="pane-title">
{isDrawing
? t("content.drawingTitle", { name: level.name })
@@ -760,6 +760,9 @@ function LevelPlanView({
selectedDrawingIds={selectedDrawingIds}
gripHandlers={gripHandlers}
/>
{/* NACH PlanView gerendert (nicht als box-shadow auf .pane), damit der
Isolations-Rahmen über der PlanView-SVG sichtbar bleibt. */}
{groupPath.length > 0 && <div className="pane-isolation-frame" />}
<div className="plan-legend">{caption}</div>
</section>
);
@@ -950,7 +953,7 @@ function SectionPlanView({
}
return (
<section className={groupPath.length > 0 ? "pane pane-isolated" : "pane"}>
<section className="pane">
<div className="pane-title">
{t("content.sectionTitle", { name: level.name, kind: kindLabel })}
</div>
@@ -1010,6 +1013,9 @@ function SectionPlanView({
selectedDrawingIds={selectedDrawingIds}
gripHandlers={gripHandlers}
/>
{/* NACH PlanView gerendert (nicht als box-shadow auf .pane), damit der
Isolations-Rahmen über der PlanView-SVG sichtbar bleibt. */}
{groupPath.length > 0 && <div className="pane-isolation-frame" />}
<div className="plan-legend">{t("section.legend", { kind: kindLabel })}</div>
</section>
);