This commit is contained in:
2025-11-29 01:45:53 +01:00
parent a0b41e428d
commit 796873e7d3
3 changed files with 28 additions and 0 deletions

View File

@@ -52,6 +52,21 @@ XX. **Nome Problema (FIX/IMPLEMENTATO DATA):** - **Problema:** Descrizione breve
**Lavoro completato nell'ultima sessione:**
- **FIX: Rimossa Toolbar Contestuale che causava Layout Shift** - COMPLETATO
- **Problema:** Quando si selezionava un oggetto nel canvas, appariva una toolbar aggiuntiva sotto quella principale che causava uno scroll della pagina
- **Soluzione:** Rimossa completamente la toolbar contestuale - le proprietà degli oggetti vengono gestite solo dal `PropertiesPanel` sulla destra
- **Rimosso da EditorToolbar.tsx:**
- Sezione "Contextual Toolbar Row" (desktop)
- Sezione "Contextual toolbar for text/shape" (tablet)
- Funzioni: `handleTextFormat()`, `handleTextAlign()`, `renderContextualToolbar()`
- Componente `ColorPickerButton`
- Costante `COLOR_PRESETS`
- Props: `selectedElement`, `onUpdateSelectedElement`
- Import non più usati: `TextField`, `ToggleButton`, `ToggleButtonGroup`, icone formattazione
- **File modificati:**
- `EditorToolbar.tsx` - Rimossa toolbar contestuale e codice correlato
- `ReportEditorPage.tsx` - Rimossi props `selectedElement` e `onUpdateSelectedElement` dalla chiamata a EditorToolbar
- **NUOVA FEATURE: Selezione Multipla nel Report Editor** - COMPLETATO
- Implementato sistema di selezione multipla personalizzato (senza usare ActiveSelection di Fabric.js che causava riposizionamento oggetti)
- **Selezione con rettangolo di trascinamento**: trascinando sul canvas vuoto appare rettangolo blu tratteggiato, al rilascio seleziona tutti gli oggetti che intersecano
@@ -1174,6 +1189,19 @@ frontend/src/
- Usati refs (`selectedElementIdsRef`, `onSelectElementRef`, etc.) per evitare stale closures negli event handler registrati una sola volta
- **File:** `EditorCanvas.tsx`, `ReportEditorPage.tsx`
27. **Toolbar Contestuale Layout Shift (FIX 29/11/2025):**
- **Problema:** Quando si selezionava un oggetto nel canvas del report designer, appariva una toolbar contestuale aggiuntiva sotto quella principale, causando uno scroll/layout shift della pagina
- **Causa:** La toolbar contestuale (`renderContextualToolbar()`) veniva renderizzata condizionalmente quando `selectedElement` era presente, aggiungendo una riga extra all'altezza della toolbar
- **Soluzione:** Rimossa completamente la toolbar contestuale - le proprietà degli oggetti selezionati vengono gestite esclusivamente dal `PropertiesPanel` sulla destra (che è sempre visibile)
- **Rimosso:**
- `renderContextualToolbar()` - funzione che rendeva la toolbar
- `handleTextFormat()`, `handleTextAlign()` - handler per formattazione
- `ColorPickerButton` component - color picker inline
- `COLOR_PRESETS` - palette colori
- Props `selectedElement`, `onUpdateSelectedElement` dall'interfaccia
- Import inutilizzati: `TextField`, `ToggleButton`, `ToggleButtonGroup`, icone formattazione
- **File:** `EditorToolbar.tsx`, `ReportEditorPage.tsx`
### Schema Database Report System
Le tabelle sono già nel DbContext (`AppollinareDbContext.cs`):

Binary file not shown.

Binary file not shown.