From a3b693e2b6bfe84ca33e35d7e77a13fd678a7c2d Mon Sep 17 00:00:00 2001 From: shamoon <4887959+shamoon@users.noreply.github.com> Date: Mon, 17 Mar 2025 13:03:04 -0700 Subject: [PATCH] Support maxBookmarkGroupColumns too --- docs/configs/settings.md | 12 +++++++++--- src/components/bookmarks/group.jsx | 4 ++++ src/pages/index.jsx | 3 +++ 3 files changed, 16 insertions(+), 3 deletions(-) diff --git a/docs/configs/settings.md b/docs/configs/settings.md index d3882121..9d35ae07 100644 --- a/docs/configs/settings.md +++ b/docs/configs/settings.md @@ -264,13 +264,19 @@ fullWidth: true ### Maximum Group Columns -You can set the maximum number of columns of service groups on larger screen sizes (groups with `style: columns` which is default) by adding: +You can set the maximum number of columns of groups on larger screen sizes (note this is only for groups with the default `style: columns`, not groups with `stle: row`) by adding: ```yaml -maxGroupColumns: 8 # default is 4, max 8 +maxGroupColumns: 8 # default is 4 for services, 6 for bookmarks, max 8 ``` -By default homepage will max out at 4 columns (thus the minimum for this setting is _5_). Of course, if you're setting this to higher numbers, you may want to consider enabling the [fullWidth](#full-width) option as well. +By default homepage will max out at 4 columns for services and 6 for bookmarks, thus the minimum for this setting is _5_. Of course, if you're setting this to higher numbers, you may want to consider enabling the [fullWidth](#full-width) option as well. + +If you want to set the maximum columns for bookmark groups separately, you can do so by adding: + +```yaml +maxBookmarkGroupColumns: 6 # default is 6, max 8 +``` ### Collapsible sections diff --git a/src/components/bookmarks/group.jsx b/src/components/bookmarks/group.jsx index d8eb296d..726f54e8 100644 --- a/src/components/bookmarks/group.jsx +++ b/src/components/bookmarks/group.jsx @@ -12,6 +12,7 @@ export default function BookmarksGroup({ disableCollapse, groupsInitiallyCollapsed, bookmarksStyle, + maxGroupColumns, }) { const panel = useRef(); @@ -25,6 +26,9 @@ export default function BookmarksGroup({ className={classNames( "bookmark-group flex-1 overflow-hidden", layout?.style === "row" ? "basis-full" : "basis-full md:basis-1/4 lg:basis-1/5 xl:basis-1/6", + layout?.style !== "row" && maxGroupColumns && parseInt(maxGroupColumns, 10) > 6 + ? `3xl:basis-1/${maxGroupColumns}` + : "", layout?.header === false ? "px-1" : "p-1 pb-0", )} > diff --git a/src/pages/index.jsx b/src/pages/index.jsx index 96a9377d..78702796 100644 --- a/src/pages/index.jsx +++ b/src/pages/index.jsx @@ -334,6 +334,7 @@ function Home({ initialSettings }) { bookmarks={group} layout={settings.layout?.[group.name]} disableCollapse={settings.disableCollapse} + maxGroupColumns={settings.maxBookmarkGroupColumns ?? settings.maxGroupColumns} groupsInitiallyCollapsed={settings.groupsInitiallyCollapsed} /> ), @@ -362,6 +363,7 @@ function Home({ initialSettings }) { bookmarks={group} layout={settings.layout?.[group.name]} disableCollapse={settings.disableCollapse} + maxGroupColumns={settings.maxBookmarkGroupColumns ?? settings.maxGroupColumns} groupsInitiallyCollapsed={settings.groupsInitiallyCollapsed} bookmarksStyle={settings.bookmarksStyle} /> @@ -378,6 +380,7 @@ function Home({ initialSettings }) { settings.layout, settings.fiveColumns, settings.maxGroupColumns, + settings.maxBookmarkGroupColumns, settings.disableCollapse, settings.useEqualHeights, settings.cardBlur,