|
@@ -233,6 +233,7 @@
|
|
|
:title="$t('移动到')"
|
|
|
v-if="contextmenu.subMenus.length"
|
|
|
:disabled="contextmenu.component['3d']"
|
|
|
+ :popupProps = "popupProps"
|
|
|
>
|
|
|
<t-menu-item
|
|
|
v-for="subMenu in contextmenu.subMenus"
|
|
@@ -246,6 +247,7 @@
|
|
|
:title="$t('移动到')+`${$t(activedGroup==='方案'?'模板':'方案')}`"
|
|
|
v-if="['方案', '模板'].includes(activedGroup)"
|
|
|
:disabled="contextmenu.component['3d']"
|
|
|
+ :popupProps = "popupProps"
|
|
|
>
|
|
|
<t-menu-item
|
|
|
v-for="subMenu in moveGroups[activedGroup==='方案'?'模板':'方案']"
|
|
@@ -1719,6 +1721,11 @@ const onContextMenu = async (e: MouseEvent, group: any, item: any) => {
|
|
|
}
|
|
|
contextmenu.subMenus.push(elem);
|
|
|
}
|
|
|
+ if(document.body.clientHeight/2<e.clientY){
|
|
|
+ popupProps.value.overlayClassName = 'submenu-popup-overlay'
|
|
|
+ }else{
|
|
|
+ popupProps.value.overlayClassName = ''
|
|
|
+ }
|
|
|
contextmenu.visible = true;
|
|
|
setTimeout(() => {
|
|
|
if (contextmenuDom.value) {
|
|
@@ -2413,6 +2420,10 @@ const changeAssets = (e)=>{
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+const popupProps = ref({
|
|
|
+ overlayClassName:'',
|
|
|
+});
|
|
|
+
|
|
|
onUnmounted(() => {
|
|
|
document.removeEventListener('dragstart', dragstart);
|
|
|
document.removeEventListener('dragend', dragend);
|
|
@@ -2785,3 +2796,11 @@ onUnmounted(() => {
|
|
|
}
|
|
|
}
|
|
|
</style>
|
|
|
+<style lang="postcss">
|
|
|
+.submenu-popup-overlay{
|
|
|
+ .t-menu__popup{
|
|
|
+ bottom: 0 !important;
|
|
|
+ top: auto !important;
|
|
|
+ }
|
|
|
+}
|
|
|
+</style>
|