Skip to content

Commit 2284c09

Browse files
[4.0] close collapse when opening a dropdown (joomla#43891)
* make sure you click on the button, not any of the children * close collapse when click to open a dropdown * fix lint:js issues * Update build/media_source/templates/administrator/atum/js/template.es6.js Co-authored-by: Brian Teeman <[email protected]> --------- Co-authored-by: Brian Teeman <[email protected]>
1 parent 46c3bc0 commit 2284c09

File tree

3 files changed

+25
-0
lines changed

3 files changed

+25
-0
lines changed

build/media_source/templates/administrator/atum/js/template.es6.js

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -242,3 +242,20 @@ window.addEventListener('joomla:menu-toggle', (event) => {
242242
changeLogo(event.detail);
243243
}
244244
});
245+
246+
/**
247+
* Close any open data-bs-toggle="collapse" when opening a data-bs-toggle="dropdown"
248+
*
249+
* @since 4.4
250+
*/
251+
document.querySelectorAll('[data-bs-toggle="dropdown"]').forEach((button) => {
252+
button.addEventListener('click', () => {
253+
document.querySelectorAll('[data-bs-toggle="collapse"]').forEach((cb) => {
254+
const target = document.querySelector(cb.getAttribute('data-bs-target'));
255+
const collapseMenu = bootstrap.Collapse.getInstance(target) || new bootstrap.Collapse(target, {
256+
toggle: false,
257+
});
258+
collapseMenu.hide();
259+
});
260+
});
261+
});

build/media_source/templates/site/cassiopeia/scss/blocks/_header.scss

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -204,6 +204,10 @@
204204
.fas {
205205
font-size: 1.5rem;
206206
}
207+
208+
> * {
209+
pointer-events: none;
210+
}
207211
}
208212

209213
.container-search {

build/media_source/templates/site/cassiopeia/scss/blocks/_toolbar.scss

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -119,6 +119,10 @@
119119
&.btn {
120120
padding-inline-end: 0;
121121
}
122+
123+
> * {
124+
pointer-events: none;
125+
}
122126
}
123127

124128
.btn-group:not(:last-child) > .dropdown-toggle-split {

0 commit comments

Comments
 (0)