fix(web): shift+click on GPS asset extends range selection in geolocation utility

This commit is contained in:
timonrieger
2026-06-12 15:10:20 +02:00
parent 714c647937
commit 0cb54f66ee
3 changed files with 13 additions and 7 deletions
@@ -44,7 +44,7 @@
brokenAssetClass?: ClassValue;
dimmed?: boolean;
albumUsers?: UserResponseDto[];
onClick?: (asset: TimelineAsset) => void;
onClick?: (asset: TimelineAsset, event?: MouseEvent) => void;
onPreview?: (asset: TimelineAsset) => void;
onSelect?: (asset: TimelineAsset) => void;
onMouseEvent?: (event: { isMouseOver: boolean; selectedGroupIndex: number }) => void;
@@ -93,12 +93,12 @@
}
};
const callClickHandlers = () => {
const callClickHandlers = (e?: MouseEvent) => {
if (selected) {
onIconClickedHandler();
onIconClickedHandler(e);
return;
}
onClick?.($state.snapshot(asset));
onClick?.($state.snapshot(asset), e);
};
const handleClick = (e: MouseEvent) => {
@@ -109,7 +109,7 @@
e.stopPropagation();
e.preventDefault();
callClickHandlers();
callClickHandlers(e);
};
const onMouseEnter = () => {
@@ -59,6 +59,7 @@
groupTitle: string,
asset: TimelineAsset,
) => void,
event?: MouseEvent,
) => void;
}
@@ -685,9 +686,9 @@
{asset}
{albumUsers}
{groupIndex}
onClick={(asset) => {
onClick={(asset, event) => {
if (typeof onThumbnailClick === 'function') {
onThumbnailClick(asset, timelineManager, timelineDay, _onClick);
onThumbnailClick(asset, timelineManager, timelineDay, _onClick, event);
} else {
_onClick(timelineManager, timelineDay.getAssets(), timelineDay.groupTitle, asset);
}
@@ -118,7 +118,12 @@
groupTitle: string,
asset: TimelineAsset,
) => void,
event?: MouseEvent,
) => {
if (event?.shiftKey) {
onClick(timelineManager, timelineDay.getAssets(), timelineDay.groupTitle, asset);
return;
}
if (hasGps(asset)) {
locationUpdated = true;
setTimeout(() => {