diff --git a/src/app/api/widgets/route.ts b/src/app/api/widgets/route.ts index b220c62..70b7d56 100644 --- a/src/app/api/widgets/route.ts +++ b/src/app/api/widgets/route.ts @@ -33,7 +33,7 @@ const widgetCatalog: Record = { search: { title: "Suche", w: 16, - h: 12 + h: 7 }, calendar: { title: "Kalender", diff --git a/src/app/search-widget.css b/src/app/search-widget.css index 6b5a7ae..38812b8 100644 --- a/src/app/search-widget.css +++ b/src/app/search-widget.css @@ -20,8 +20,12 @@ display: none !important; } +.app .widgetCard-search .widgetHeader { + border-bottom: 0 !important; +} + /* Normalmodus: kein leerer Titelbereich */ -.app .widgetCard-search:not(.widgetCardEditMode) .widgetHeader { +.app .widgetCard-search:not(.widgetEditing) .widgetHeader { height: 0 !important; min-height: 0 !important; max-height: 0 !important; @@ -31,7 +35,7 @@ } /* Bearbeitungsmodus: Header bleibt fuer Griff und Menue vorhanden */ -.app .widgetCard-search.widgetCardEditMode .widgetHeader { +.app .widgetCard-search.widgetEditing .widgetHeader { height: 26px !important; min-height: 26px !important; max-height: 26px !important; @@ -68,7 +72,7 @@ } /* Normalmodus: Suchzeile in kompletter Widgetflaeche zentrieren */ -.app .widgetCard-search:not(.widgetCardEditMode) .widgetContent { +.app .widgetCard-search:not(.widgetEditing) .widgetContent { position: absolute !important; inset: 0 !important; width: auto !important; @@ -82,7 +86,7 @@ } /* Bearbeitungsmodus: unterhalb Header zentrieren, Resize-Ecke freihalten */ -.app .widgetCard-search.widgetCardEditMode .widgetContent { +.app .widgetCard-search.widgetEditing .widgetContent { position: absolute !important; inset: 26px 0 0 0 !important; width: auto !important; @@ -192,7 +196,7 @@ } /* Im Bearbeitungsmodus muss der Header als Menü-/Griff-Zone sichtbar bleiben */ -.app .widgetCard-search.widgetCardEditMode .widgetHeader { +.app .widgetCard-search.widgetEditing .widgetHeader { position: relative !important; z-index: 50 !important; height: 26px !important; @@ -205,7 +209,7 @@ } /* Menü explizit sichtbar und über dem Suchformular */ -.app .widgetCard-search.widgetCardEditMode .widgetMenu { +.app .widgetCard-search.widgetEditing .widgetMenu { display: block !important; position: absolute !important; top: 2px !important; @@ -216,7 +220,7 @@ pointer-events: auto !important; } -.app .widgetCard-search.widgetCardEditMode .widgetMenuButton { +.app .widgetCard-search.widgetEditing .widgetMenuButton { display: inline-flex !important; visibility: visible !important; opacity: 1 !important; @@ -225,7 +229,7 @@ /* Dropdown über allem und scrollbar */ .app .widgetCard-search.widgetCardMenuOpen, -.app .widgetCard-search.widgetCardEditMode.widgetCardMenuOpen { +.app .widgetCard-search.widgetEditing.widgetCardMenuOpen { overflow: visible !important; z-index: 2000 !important; } @@ -241,13 +245,13 @@ } /* Content darf das Menü nicht überdecken */ -.app .widgetCard-search.widgetCardEditMode .widgetContent { +.app .widgetCard-search.widgetEditing .widgetContent { z-index: 1 !important; pointer-events: auto !important; } /* FINAL FIX: Such-Widget behält einheitliche Widget-Chrome. - Ursache: vorherige Regeln haben den Header abhängig von widgetCardEditMode versteckt. + Ursache: vorherige Regeln haben den Header abhängig von widgetEditing versteckt. Diese Regeln nutzen den tatsächlich vorhandenen Menü-/Drag-Button als Edit-Indikator. */ /* Sobald Menü oder Griff existieren, ist das Widget im Bearbeitungszustand: diff --git a/src/components/DashboardGrid.tsx b/src/components/DashboardGrid.tsx index 6757ab8..b47d2fe 100644 --- a/src/components/DashboardGrid.tsx +++ b/src/components/DashboardGrid.tsx @@ -24,7 +24,7 @@ function clamp(value: number, min: number, max: number): number { function getWidgetMinimumSize(widget: DashboardGridWidget): { minW: number; minH: number } { if (widget.type === "search") { - return { minW: 8, minH: 5 }; + return { minW: 8, minH: 3 }; } if (widget.type === "clock") {