diff --git a/apps/readest-app/src/app/reader/components/annotator/AnnotationRangeEditor.tsx b/apps/readest-app/src/app/reader/components/annotator/AnnotationRangeEditor.tsx index 5f519eb9..958dfdd6 100644 --- a/apps/readest-app/src/app/reader/components/annotator/AnnotationRangeEditor.tsx +++ b/apps/readest-app/src/app/reader/components/annotator/AnnotationRangeEditor.tsx @@ -3,23 +3,28 @@ import React, { useCallback, useEffect, useRef, useState } from 'react'; import { BookNote, HighlightColor } from '@/types/book'; import { Point, TextSelection } from '@/utils/sel'; +import { useEnv } from '@/context/EnvContext'; import { useThemeStore } from '@/store/themeStore'; +import { useReaderStore } from '@/store/readerStore'; import { useSettingsStore } from '@/store/settingsStore'; import { useResponsiveSize } from '@/hooks/useResponsiveSize'; import { useAnnotationEditor } from '../../hooks/useAnnotationEditor'; import { getHighlightColorHex } from '../../utils/annotatorUtil'; +import MagnifierLoupe from './MagnifierLoupe'; interface HandleProps { + hidden?: boolean; position: Point; isVertical: boolean; type: 'start' | 'end'; color: string; - onDragStart: () => void; + onDragStart: (pointerType: string) => void; onDrag: (point: Point) => void; onDragEnd: () => void; } const Handle: React.FC = ({ + hidden, position, isVertical, type, @@ -38,7 +43,7 @@ const Handle: React.FC = ({ e.preventDefault(); e.stopPropagation(); isDragging.current = true; - onDragStart(); + onDragStart(e.pointerType); (e.target as HTMLElement).setPointerCapture(e.pointerId); }, [onDragStart], @@ -68,7 +73,10 @@ const Handle: React.FC = ({ return (