fix(dashboard): replace all hardcoded emoji icons with Font Awesome

Fix inconsistent tab icon rendering by replacing hardcoded emoji icons
throughout the codebase with Font Awesome equivalents:

- distributeWidgetsByCategory(): Replace emojis in auto-layout tab creation
  - Status tab: 📊 → fa-solid fa-user
  - Scene tab: 🌍 → fa-solid fa-map
  - Social tab: 👥 → fa-solid fa-users
  - Inventory tab: 🎒 → fa-solid fa-bag-shopping

- applyDashboardConfig(): Update fallback icon from 📄 → fa-solid fa-file

These hardcoded emojis bypassed the migration system, causing icons to
disappear after operations like auto-arrange, reset layout, or page refresh.

Resolves inconsistent icon rendering across all dashboard operations.
This commit is contained in:
Lucas 'Paperboy' Rose-Winters
2025-10-27 22:25:03 +11:00
parent 7628bb84c1
commit fb25277db4
2 changed files with 14 additions and 5 deletions
+5 -5
View File
@@ -840,7 +840,7 @@ export class DashboardManager {
this.dashboard.tabs.push({
id: 'tab-status',
name: 'Status',
icon: '📊',
icon: 'fa-solid fa-user',
order: 0,
widgets: groups.user
});
@@ -854,7 +854,7 @@ export class DashboardManager {
this.dashboard.tabs.push({
id: 'tab-scene',
name: 'Scene',
icon: '🌍',
icon: 'fa-solid fa-map',
order: 1,
widgets: groups.scene
});
@@ -868,7 +868,7 @@ export class DashboardManager {
this.dashboard.tabs.push({
id: 'tab-social',
name: 'Social',
icon: '👥',
icon: 'fa-solid fa-users',
order: 2,
widgets: groups.social
});
@@ -882,7 +882,7 @@ export class DashboardManager {
this.dashboard.tabs.push({
id: 'tab-inventory',
name: 'Inventory',
icon: '🎒',
icon: 'fa-solid fa-bag-shopping',
order: 3,
widgets: groups.inventory
});
@@ -1267,7 +1267,7 @@ export class DashboardManager {
this.dashboard.tabs.push({
id: tabConfig.id,
name: tabConfig.name,
icon: tabConfig.icon || '📄',
icon: tabConfig.icon || 'fa-solid fa-file',
order: tabConfig.order || 0,
widgets: tabConfig.widgets || []
});
+9
View File
@@ -1708,6 +1708,15 @@ body:has(.rpg-panel.rpg-position-left) #sheld {
pointer-events: auto;
}
/* Prevent text selection in edit mode (especially important for mobile) */
.edit-mode .rpg-widget-content {
user-select: none;
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
-webkit-touch-callout: none; /* Prevent iOS callout menu */
}
/* Hide resize handles when widgets are locked */
.widgets-locked .resize-handles {
opacity: 0 !important;