From c46cf5b0bf418484869fd53f3454b3bb00b46d91 Mon Sep 17 00:00:00 2001 From: Huang Xin Date: Sun, 16 Feb 2025 01:02:41 +0100 Subject: [PATCH] UX enhancements of grid view in mobile platforms (#379) * ux: context menu on both group and book items, also closes #376 * ui: more compact grid view of bookshelf on mobile platforms --- .../src/app/library/components/BookItem.tsx | 23 +++--- .../src/app/library/components/Bookshelf.tsx | 14 +++- .../app/library/components/BookshelfItem.tsx | 76 +++++++++++++------ .../src/app/library/components/GroupItem.tsx | 12 ++- .../app/library/components/LibraryHeader.tsx | 4 +- apps/readest-app/src/app/library/page.tsx | 2 +- .../src/app/reader/hooks/useIframeEvents.ts | 11 ++- .../src/components/BookDetailModal.tsx | 11 ++- apps/readest-app/src/hooks/useLongPress.ts | 29 +++++-- apps/readest-app/src/services/appService.ts | 7 +- apps/readest-app/src/services/errors.ts | 1 + 11 files changed, 133 insertions(+), 57 deletions(-) create mode 100644 apps/readest-app/src/services/errors.ts diff --git a/apps/readest-app/src/app/library/components/BookItem.tsx b/apps/readest-app/src/app/library/components/BookItem.tsx index d5d6f306..c8eb3185 100644 --- a/apps/readest-app/src/app/library/components/BookItem.tsx +++ b/apps/readest-app/src/app/library/components/BookItem.tsx @@ -17,7 +17,6 @@ interface BookItemProps { handleBookUpload: (book: Book) => void; handleBookDownload: (book: Book) => void; showBookDetailsModal: (book: Book) => void; - bookContextMenuHandler: (book: Book, e: React.MouseEvent) => void; } const BookItem: React.FC = ({ @@ -28,7 +27,6 @@ const BookItem: React.FC = ({ handleBookUpload, handleBookDownload, showBookDetailsModal, - bookContextMenuHandler, }) => { const iconSize15 = useResponsiveSize(15); const { appService } = useEnv(); @@ -44,9 +42,8 @@ const BookItem: React.FC = ({ 'book-item flex h-full flex-col', appService?.hasContextMenu ? 'cursor-pointer' : '', )} - onContextMenu={bookContextMenuHandler.bind(null, book)} > -
+
{selectedBooks.includes(book.hash) && (
@@ -89,10 +86,11 @@ const BookItem: React.FC = ({ ) : (