diff --git a/lib/RoadizRozierBundle/templates/macros/rz_actions_menu.html.twig b/lib/RoadizRozierBundle/templates/macros/rz_actions_menu.html.twig index de1e121cc..6ce0bf651 100644 --- a/lib/RoadizRozierBundle/templates/macros/rz_actions_menu.html.twig +++ b/lib/RoadizRozierBundle/templates/macros/rz_actions_menu.html.twig @@ -61,7 +61,22 @@ ) }} {% endmacro %} -
+{% set classes = ['rz-actions-menu'] %} +{% if vertical %} + {% set classes = classes|merge(['rz-actions-menu--vertical']) %} +{% endif %} +{% if class is defined and class %} + {% set classes = classes|merge([class]) %} +{% endif %} + +
{% block items %} {% endblock %} +
+ +
diff --git a/lib/Rozier/app/assets/css/components/rz-actions-menu.css b/lib/Rozier/app/assets/css/components/rz-actions-menu.css index 5ea0ada73..791954372 100644 --- a/lib/Rozier/app/assets/css/components/rz-actions-menu.css +++ b/lib/Rozier/app/assets/css/components/rz-actions-menu.css @@ -15,8 +15,56 @@ li { list-style: none; } + + @media (--screen-sm-min) { + position: fixed; + top: initial; + bottom: 0; + left: 50%; + transform: translateX(-50%); + + &[direction="vertical"] { + --rz-actions-menu-direction: column; + + bottom: initial; + top: 50%; + left: initial; + right: 0; + transform: translateY(-50%); + } + } } -.rz-actions-menu--vertical { - --rz-actions-menu-direction: column; +.rz-actions-menu__handle { + position: absolute; + display: flex; + align-items: center; + justify-content: center; + left: 0; + top: var(--radius-sm); + bottom: var(--radius-sm); + transform: translateX(-100%); + background-color: var(--surface-light-tertiary, #F2F2F2); + border-radius: var(--radius-sm) 0 0 var(--radius-sm); + font-size: 12px; + pointer-events: none; + opacity: 0; + cursor: pointer; + transition: opacity 0.2s; + + .rz-actions-menu[direction="vertical"] & { + top: 0; + left: var(--spacing-6xs); + right: var(--spacing-6xs); + bottom: initial; + transform: translateY(-100%); + border-radius: var(--radius-sm) var(--radius-sm) 0 0; + } + + @media (hover: hover) { + .rz-actions-menu:hover & { + opacity: 1; + pointer-events: auto; + } + } } diff --git a/lib/Rozier/app/assets/less/style.less b/lib/Rozier/app/assets/less/style.less index b889ae2f8..25d5a36f7 100644 --- a/lib/Rozier/app/assets/less/style.less +++ b/lib/Rozier/app/assets/less/style.less @@ -44,8 +44,8 @@ /* -------- MENU -------- */ // @import 'navbars/filterbar.less'; -@import 'navbars/translationbar.less'; -@import 'actions_menu/actions_menu.less'; +// @import 'navbars/translationbar.less'; +// @import 'actions_menu/actions_menu.less'; /* -------- FORMS -------- */