summaryrefslogtreecommitdiff
path: root/apps/web/src
diff options
context:
space:
mode:
authorMaze Winther <mazewinther@gmail.com>2026-03-02 16:30:50 +0100
committerMaze Winther <mazewinther@gmail.com>2026-03-02 16:30:50 +0100
commitb0165da764971b8e7f37c9657d0aa81f9bc2dcc9 (patch)
treed108accbaadf93cb0a2a41e0b89e50891b92986d /apps/web/src
parent228e2e4342bc170dc1e0d1ad805229e18d5bd957 (diff)
downloadopencut-b0165da764971b8e7f37c9657d0aa81f9bc2dcc9.tar.gz
fix: selecting multiple effects didn't work
Diffstat (limited to 'apps/web/src')
-rw-r--r--apps/web/src/hooks/timeline/element/use-keyframe-drag.ts29
1 files changed, 15 insertions, 14 deletions
diff --git a/apps/web/src/hooks/timeline/element/use-keyframe-drag.ts b/apps/web/src/hooks/timeline/element/use-keyframe-drag.ts
index 92dfb9a9..2dd7cb3e 100644
--- a/apps/web/src/hooks/timeline/element/use-keyframe-drag.ts
+++ b/apps/web/src/hooks/timeline/element/use-keyframe-drag.ts
@@ -201,7 +201,8 @@ export function useKeyframeDrag({
isKeyframeSelected({ keyframe }),
);
- if (!anySelected) {
+ const isModifierKey = event.shiftKey || event.metaKey || event.ctrlKey;
+ if (!anySelected && !isModifierKey) {
setKeyframeSelection({ keyframes });
}
@@ -233,21 +234,21 @@ export function useKeyframeDrag({
Math.abs(event.clientX - mouseDownXRef.current) > DRAG_THRESHOLD_PX;
mouseDownXRef.current = null;
- if (wasDrag) return;
+ if (wasDrag) return;
- if (event.shiftKey) {
- selectKeyframeRange({
- orderedKeyframes,
- targetKeyframes: keyframes,
- isAdditive: event.metaKey || event.ctrlKey,
- });
- return;
- }
-
- toggleKeyframeSelection({
- keyframes,
- isMultiKey: event.metaKey || event.ctrlKey,
+ if (event.shiftKey) {
+ selectKeyframeRange({
+ orderedKeyframes,
+ targetKeyframes: keyframes,
+ isAdditive: event.metaKey || event.ctrlKey,
});
+ return;
+ }
+
+ toggleKeyframeSelection({
+ keyframes,
+ isMultiKey: event.metaKey || event.ctrlKey,
+ });
},
[toggleKeyframeSelection, selectKeyframeRange],
);