aboutsummaryrefslogtreecommitdiff
path: root/src/client/views/collections/collectionFreeForm/CollectionFreeFormLayoutEngines.tsx
diff options
context:
space:
mode:
authorbobzel <zzzman@gmail.com>2022-04-21 15:00:31 -0400
committerbobzel <zzzman@gmail.com>2022-04-21 15:00:31 -0400
commit0664b26916f656e2b898af4edab13c7b6d5a1dcc (patch)
treee7e16da65b1d7d92aaaf1b1f9c3733b2f9d61705 /src/client/views/collections/collectionFreeForm/CollectionFreeFormLayoutEngines.tsx
parenta0b30f735850d4543cf9499ebd497b9548c22e47 (diff)
fixed issues with pile view - dragging, burst size, rendering within grid/non-freeform views, fixed timeView filtering to not keep making redundant filters,
Diffstat (limited to 'src/client/views/collections/collectionFreeForm/CollectionFreeFormLayoutEngines.tsx')
-rw-r--r--src/client/views/collections/collectionFreeForm/CollectionFreeFormLayoutEngines.tsx7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/client/views/collections/collectionFreeForm/CollectionFreeFormLayoutEngines.tsx b/src/client/views/collections/collectionFreeForm/CollectionFreeFormLayoutEngines.tsx
index f9345e33f..598960af7 100644
--- a/src/client/views/collections/collectionFreeForm/CollectionFreeFormLayoutEngines.tsx
+++ b/src/client/views/collections/collectionFreeForm/CollectionFreeFormLayoutEngines.tsx
@@ -111,12 +111,13 @@ export function computerStarburstLayout(
viewDefsToJSX: (views: ViewDefBounds[]) => ViewDefResult[],
engineProps: any
) {
+ const mustFit = pivotDoc[WidthSym]() !== panelDim[0];
const docMap = new Map<string, PoolData>();
- const burstRadius = [NumCast(pivotDoc._starburstRadius, panelDim[0]), NumCast(pivotDoc._starburstRadius, panelDim[1])];
- const docSize = 75; // assume a icon sized at 100
+ const burstRadius = mustFit ? panelDim : [NumCast(pivotDoc._starburstRadius, panelDim[0]), NumCast(pivotDoc._starburstRadius, panelDim[1])];
+ const docSize = mustFit ? panelDim[0] * .33 : 75; // assume a icon sized at 75
const scaleDim = [burstRadius[0] + docSize, burstRadius[1] + docSize];
childPairs.forEach(({ layout, data }, i) => {
- const docSize = layout.layoutKey === "layout_icon" ? 75 : 400; // assume a icon sized at 100
+ const docSize = layout.layoutKey === "layout_icon" ? mustFit ? panelDim[0] * .33 : 75 : 400; // assume a icon sized at 10750
const deg = i / childPairs.length * Math.PI * 2;
docMap.set(layout[Id], {
x: Math.cos(deg) * (burstRadius[0] / 3) - docSize / 2,