1
0
mirror of https://github.com/haiwen/seahub.git synced 2025-09-15 23:00:57 +00:00

show date tag in all mode (#7443)

Co-authored-by: zhouwenxuan <aries@Mac.local>
This commit is contained in:
Aries
2025-02-07 17:09:37 +08:00
committed by GitHub
parent 10770501a4
commit db1ea4f07d
2 changed files with 7 additions and 15 deletions

View File

@@ -144,7 +144,7 @@ const Content = ({
className="metadata-gallery-date-group"
style={{ height, paddingTop }}
>
{mode !== GALLERY_DATE_MODE.ALL && childrenStartIndex === 0 && (
{childrenStartIndex === 0 && (
<div
className={classNames('metadata-gallery-date-tag', { 'hover': isDateTagClickable })}
style={{ height: paddingTop }}

View File

@@ -76,7 +76,7 @@ const Main = ({ isLoadingMore, metadata, onDelete, onLoadMore, duplicateRecord,
let name = '';
if (mode === GALLERY_DATE_MODE.YEAR) name = image.year;
if (mode === GALLERY_DATE_MODE.MONTH) name = image.month;
if (mode === GALLERY_DATE_MODE.DAY) name = image.date;
if (mode === GALLERY_DATE_MODE.DAY || mode === GALLERY_DATE_MODE.ALL) name = image.date;
let _group = _init.find(g => g.name === name);
if (_group) {
_group.children.push(image);
@@ -90,7 +90,7 @@ const Main = ({ isLoadingMore, metadata, onDelete, onLoadMore, duplicateRecord,
}, []);
let _groups = [];
const paddingTop = mode === GALLERY_DATE_MODE.ALL ? 0 : DATE_TAG_HEIGHT;
const paddingTop = DATE_TAG_HEIGHT;
init.forEach((_init, index) => {
const { children, ...__init } = _init;
let top = 0;
@@ -362,7 +362,7 @@ const Main = ({ isLoadingMore, metadata, onDelete, onLoadMore, duplicateRecord,
}
return previousValue;
}, 0) + rowIndex;
const topOffset = rowOffset * perImageOffset + groupIndex * (mode === GALLERY_DATE_MODE.ALL ? 0 : DATE_TAG_HEIGHT);
const topOffset = rowOffset * perImageOffset + groupIndex * DATE_TAG_HEIGHT;
scrollContainer.current.scrollTop = scrollContainer.current.scrollTop + topOffset;
lastState.current = { ...lastState.current, imageSize, mode };
}
@@ -378,20 +378,12 @@ const Main = ({ isLoadingMore, metadata, onDelete, onLoadMore, duplicateRecord,
if (!imageSize || imageSize?.large < 0) return;
const { targetGroupFirstImageId: imageId } = lastState.current;
if (imageId) {
if (mode === GALLERY_DATE_MODE.ALL) {
const targetImage = images.find(img => img.id === imageId);
if (targetImage) {
scrollContainer.current.scrollTop = targetImage.rowIndex * rowHeight - 60;
}
} else {
const targetGroup = groups.find(group => group.children.some(row => row.children.some(img => img.id === imageId)));
if (targetGroup) {
scrollContainer.current.scrollTop = targetGroup.top;
}
const targetGroup = groups.find(group => group.children.some(row => row.children.some(img => img.id === imageId)));
if (targetGroup) {
scrollContainer.current.scrollTop = targetGroup.top;
}
lastState.current = { ...lastState.current, targetGroupFirstImageId: null, mode };
}
// eslint-disable-next-line react-hooks/exhaustive-deps
}, [imageSize, groups, mode]);
return (