fix: update widget sizing for 1080p screens - Scene, Inventory, and Quests tabs

**Scene Tab (presentCharacters):**
- Desktop: 3×2 (wide and short, fits 1080p viewport)
- Mobile: 2×4 (narrow and tall for vertical stacking)

**Inventory Tab:**
- Desktop: 3×7 (full width, spacious) instead of 2×6
- Mobile: 2×5 (full width, compact)

**Quests Tab:**
- Desktop: 3×7 (full width, spacious) instead of 2×5
- Mobile: 2×5 (full width, compact)

All widgets now use full width at their respective column counts and
are properly sized to fit within 1080p screens without scrolling off.
This commit is contained in:
Lucas 'Paperboy' Rose-Winters
2025-11-06 20:50:16 +11:00
parent 53a1eb1469
commit 1fd6720e6b
4 changed files with 15 additions and 15 deletions
+2 -2
View File
@@ -112,14 +112,14 @@ export function generateDefaultDashboard() {
maxEvents: 3 maxEvents: 3
} }
}, },
// Row 5-8: Present Characters (full width, tall for cards) // Row 5-6: Present Characters (full width, fits 1080p screen)
{ {
id: 'widget-presentchars', id: 'widget-presentchars',
type: 'presentCharacters', type: 'presentCharacters',
x: 0, x: 0,
y: 5, y: 5,
w: 3, w: 3,
h: 4, h: 2,
config: { config: {
cardLayout: 'grid', cardLayout: 'grid',
showThoughtBubbles: true showThoughtBubbles: true
@@ -65,18 +65,18 @@ export function registerInventoryWidget(registry, dependencies) {
description: 'Full inventory system with On Person, Stored, and Assets', description: 'Full inventory system with On Person, Stored, and Assets',
category: 'inventory', category: 'inventory',
minSize: { w: 2, h: 4 }, minSize: { w: 2, h: 4 },
// Column-aware sizing: compact on mobile, spacious on desktop // Column-aware sizing: compact on mobile, full width on desktop
defaultSize: (columns) => { defaultSize: (columns) => {
if (columns <= 2) { if (columns <= 2) {
return { w: 2, h: 5 }; // Mobile: 2×5 (full width, compact) return { w: 2, h: 5 }; // Mobile: 2×5 (full width, compact)
} }
return { w: 2, h: 6 }; // Desktop: 2×6 (default) return { w: 3, h: 7 }; // Desktop: 3×7 (full width, spacious for 1080p)
}, },
maxAutoSize: (columns) => { maxAutoSize: (columns) => {
if (columns <= 2) { if (columns <= 2) {
return { w: 2, h: 8 }; // Mobile: 2×8 max (increased for expansion headroom) return { w: 2, h: 8 }; // Mobile: 2×8 max
} }
return { w: 3, h: 8 }; // Desktop: 3×8 max (can expand) return { w: 3, h: 10 }; // Desktop: 3×10 max (can expand)
}, },
requiresSchema: false, requiresSchema: false,
@@ -276,19 +276,19 @@ export function registerPresentCharactersWidget(registry, dependencies) {
description: 'Character cards with avatars, traits, and relationships', description: 'Character cards with avatars, traits, and relationships',
category: 'scene', category: 'scene',
minSize: { w: 2, h: 2 }, minSize: { w: 2, h: 2 },
// Column-aware sizing: taller for better card display // Column-aware sizing: narrow and tall on mobile, wide and short on desktop
defaultSize: (columns) => { defaultSize: (columns) => {
if (columns <= 2) { if (columns <= 2) {
return { w: 2, h: 4 }; // Mobile: 2 cols wide (full), 4 rows tall return { w: 2, h: 4 }; // Mobile: 2 cols wide (full), 4 rows tall
} }
return { w: 2, h: 4 }; // Desktop: 2 cols wide, 4 rows tall return { w: 3, h: 2 }; // Desktop: 3 cols wide (full), 2 rows tall (fits 1080p)
}, },
// Column-aware max size: can expand on very wide screens // Column-aware max size: can expand vertically if needed
maxAutoSize: (columns) => { maxAutoSize: (columns) => {
if (columns <= 2) { if (columns <= 2) {
return { w: 2, h: 5 }; return { w: 2, h: 5 };
} }
return { w: 3, h: 5 }; // Can expand to 3 cols wide on 4-col displays return { w: 3, h: 3 }; // Desktop: can expand to 3 rows if needed
}, },
requiresSchema: false, requiresSchema: false,
@@ -395,18 +395,18 @@ export function registerQuestsWidget(registry, dependencies) {
description: 'Quest tracking with main and optional quests', description: 'Quest tracking with main and optional quests',
category: 'quests', category: 'quests',
minSize: { w: 2, h: 4 }, minSize: { w: 2, h: 4 },
// Column-aware sizing: compact on mobile, spacious on desktop // Column-aware sizing: compact on mobile, full width on desktop
defaultSize: (columns) => { defaultSize: (columns) => {
if (columns <= 2) { if (columns <= 2) {
return { w: 2, h: 4 }; // Mobile: 2×4 (full width, compact) return { w: 2, h: 5 }; // Mobile: 2×5 (full width, compact)
} }
return { w: 2, h: 5 }; // Desktop: 2×5 (default) return { w: 3, h: 7 }; // Desktop: 3×7 (full width, spacious for 1080p)
}, },
maxAutoSize: (columns) => { maxAutoSize: (columns) => {
if (columns <= 2) { if (columns <= 2) {
return { w: 2, h: 7 }; // Mobile: 2×7 max (increased for expansion headroom) return { w: 2, h: 8 }; // Mobile: 2×8 max
} }
return { w: 3, h: 7 }; // Desktop: 3×7 max (can expand) return { w: 3, h: 10 }; // Desktop: 3×10 max (can expand)
}, },
requiresSchema: false, requiresSchema: false,