diff --git a/src/pages/annotation/CanvasPanel.vue b/src/pages/annotation/CanvasPanel.vue index d9f4b05..5c57694 100644 --- a/src/pages/annotation/CanvasPanel.vue +++ b/src/pages/annotation/CanvasPanel.vue @@ -40,7 +40,8 @@
Action: annotationStore.actionAnnotationList.filter(action => currentFrame.value >= utils.time2index(action.start) @@ -246,7 +250,8 @@ const labelOption = computed(() => configurationStore.objectLabelData.map(label } })) const handleSelectInput = (labelId) => { - annotationList.value[annotationList.value.length - 1].color = configurationStore.objectLabelData.find(label => label.id === labelId).color + annotationList.value[annotationList.value.length - 1].color = configurationStore.objectLabelData.find( + label => label.id === labelId).color } /// autofocus @@ -473,12 +478,14 @@ const handleMousemove = event => { y: mouseY } } + let isActionIndicatorOverlapsStatus = false if (mouseX > annotationStore.video.width / 2 && mouseY > annotationStore.video.height / 2) { statusStyle.value = { ...statusBaseStyle, top: '1px', left: '1px' } + isActionIndicatorOverlapsStatus = true } else { statusStyle.value = { ...statusBaseStyle, @@ -486,6 +493,15 @@ const handleMousemove = event => { right: '1px' } } + if (mouseY > annotationStore.video.height / 2) { + actionIndicatorStyle.value = { + top: isActionIndicatorOverlapsStatus ? '17px' : '0' + } + } else { + actionIndicatorStyle.value = { + bottom: '0' + } + } if (annotationStore.mode === 'object' && preferenceStore.objects) { // creating an object if (createContext) { @@ -946,6 +962,9 @@ const handleMouseupAndMouseout = event => { dragContext = undefined } } + actionIndicatorStyle.value = { + bottom: '0' + } } const handleMouseenter = event => { const [mouseX, mouseY] = getMouseLocation(event) @@ -1149,12 +1168,14 @@ const handleTouchmove = event => { y: mouseY } } + let isActionIndicatorOverlapsStatus = false if (mouseX > annotationStore.video.width / 2 && mouseY > annotationStore.video.height / 2) { statusStyle.value = { ...statusBaseStyle, top: '1px', left: '1px' } + isActionIndicatorOverlapsStatus = true } else { statusStyle.value = { ...statusBaseStyle, @@ -1162,6 +1183,15 @@ const handleTouchmove = event => { right: '1px' } } + if (mouseY > annotationStore.video.height / 2) { + actionIndicatorStyle.value = { + top: isActionIndicatorOverlapsStatus ? '17px' : '0' + } + } else { + actionIndicatorStyle.value = { + bottom: '0' + } + } if (annotationStore.mode === 'object' && preferenceStore.objects) { // creating an object if (createContext) { @@ -1291,6 +1321,9 @@ const handleTouchend = () => { dragContext = undefined } } + actionIndicatorStyle.value = { + bottom: '0' + } } /// zoom