Skip to content

Commit c1c08ca

Browse files
fix: Keep parent drawers alive (#7595)
Fixes #7593 Co-authored-by: Nico Hoffmann <[email protected]>
1 parent 21218a3 commit c1c08ca

File tree

3 files changed

+15
-1
lines changed

3 files changed

+15
-1
lines changed

panel/src/components/Drawers/Drawer.vue

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22
<portal v-if="visible" to="drawer">
33
<form
44
:class="$vnode.data.staticClass"
5+
:aria-current="current"
56
class="k-drawer"
67
method="dialog"
78
@submit.prevent="$emit('submit')"
@@ -88,4 +89,9 @@ export default {
8889
box-shadow: var(--drawer-shadow);
8990
container-type: inline-size;
9091
}
92+
93+
.k-drawer:not([aria-current="true"]) {
94+
display: none;
95+
pointer-events: none;
96+
}
9197
</style>

panel/src/components/Drawers/FiberDrawer.vue

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,8 @@
66
:key="drawer.id"
77
v-bind="isCurrent(drawer.id) ? $panel.drawer.props : drawer.props"
88
:breadcrumb="$panel.drawer.breadcrumb"
9-
:visible="isCurrent(drawer.id) === true"
9+
:current="isCurrent(drawer.id) === true"
10+
:visible="true"
1011
v-on="isCurrent(drawer.id) ? $panel.drawer.listeners() : drawer.on"
1112
/>
1213
</div>

panel/src/mixins/drawer.js

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,13 @@ import { props as Header } from "@/components/Drawers/Elements/Header.vue";
1010
export default {
1111
mixins: [Header],
1212
props: {
13+
/**
14+
* @internal
15+
*/
16+
current: {
17+
default: true,
18+
type: Boolean
19+
},
1320
/**
1421
* The default icon for the drawer header
1522
*/

0 commit comments

Comments
 (0)