mirror of
https://github.com/pipipi-pikachu/PPTist.git
synced 2025-04-15 02:20:00 +08:00
feat: 插入元素拖动范围不足时,按默认尺寸创建
This commit is contained in:
parent
d61efe0c4b
commit
a3158d96f3
11
src/App.vue
11
src/App.vue
@ -19,14 +19,9 @@ export default defineComponent({
|
||||
setup() {
|
||||
const store = useStore()
|
||||
const screening = computed(() => store.state.screening)
|
||||
window.onbeforeunload = function(e: Event) {
|
||||
e = e || window.event
|
||||
// 兼容IE8和Firefox 4之前的版本
|
||||
if (e) {
|
||||
e.returnValue = false
|
||||
}
|
||||
// Chrome, Safari, Firefox 4+, Opera 12+ , IE 9+
|
||||
return false
|
||||
|
||||
if (process.env.NODE_ENV === 'production') {
|
||||
window.onbeforeunload = () => false
|
||||
}
|
||||
|
||||
onMounted(() => {
|
||||
|
@ -38,8 +38,8 @@ export default defineComponent({
|
||||
const ctrlOrShiftKeyActive = computed<boolean>(() => store.getters.ctrlOrShiftKeyActive)
|
||||
const creatingElement = computed(() => store.state.creatingElement)
|
||||
|
||||
const start = ref<[number, number] | null>(null)
|
||||
const end = ref<[number, number] | null>(null)
|
||||
const start = ref<[number, number]>()
|
||||
const end = ref<[number, number]>()
|
||||
|
||||
const selectionRef = ref<HTMLElement>()
|
||||
const offset = reactive({
|
||||
@ -110,13 +110,25 @@ export default defineComponent({
|
||||
|
||||
const minSize = 30
|
||||
|
||||
if (Math.abs(endPageX - startPageX) >= minSize || Math.abs(endPageY - startPageY) >= minSize) {
|
||||
if (Math.abs(endPageX - startPageX) >= minSize && Math.abs(endPageY - startPageY) >= minSize) {
|
||||
emit('created', {
|
||||
start: start.value,
|
||||
end: end.value,
|
||||
})
|
||||
}
|
||||
else store.commit(MutationTypes.SET_CREATING_ELEMENT, null)
|
||||
else {
|
||||
const defaultSize = 100
|
||||
const minX = Math.min(endPageX, startPageX)
|
||||
const minY = Math.min(endPageY, startPageY)
|
||||
const maxX = Math.max(endPageX, startPageX)
|
||||
const maxY = Math.max(endPageY, startPageY)
|
||||
const offsetX = maxX - minX >= minSize ? maxX - minX : defaultSize
|
||||
const offsetY = maxY - minY >= minSize ? maxY - minY : defaultSize
|
||||
emit('created', {
|
||||
start: [minX, minY],
|
||||
end: [minX + offsetX, minY + offsetY],
|
||||
})
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user