From 97f87b9dcdd5df6b1c5c5fc5d552c7758effa3d7 Mon Sep 17 00:00:00 2001 From: Meik Date: Thu, 5 Mar 2026 17:25:56 +0100 Subject: [PATCH] fix(ui): consolidate mainwindow corner/clip fixes --- AGENTS.md | 1 + Changelog.md | 9 ++- MainWindow.xaml | 86 ++++++++++++++----------- MainWindow.xaml.cs | 153 +++++++++++++++++++++++++++++++++++++++++++++ 4 files changed, 213 insertions(+), 36 deletions(-) diff --git a/AGENTS.md b/AGENTS.md index 0756b27..9407133 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -8,3 +8,4 @@ 4. Relevante Änderungen sind immer tageweise in `Changelog.md` zu dokumentieren. 5. Korrekturschleifen oder reine Nachbesserungen dürfen nicht als eigene Changelog-Einträge auftauchen. 6. `Releasenotes.md` ist vor Veröffentlichung oder auf explizite Anforderung aus dem `Changelog.md` zu synchronisieren. +7. Für Pushes ist standardmäßig `git pushr` (Retry/Backoff) zu verwenden; falls nicht verfügbar, ist `git push` mit manuellen Wiederholungen durchzuführen. diff --git a/Changelog.md b/Changelog.md index b97d51f..1285780 100644 --- a/Changelog.md +++ b/Changelog.md @@ -5,7 +5,13 @@ - Komplettes visuelles Redesign der Hauptoberfläche mit modernerem Layout und konsistenter Typografie. - Navigation, Content und Header farblich auf dynamische Konfigurationsfarben umgestellt. - Einheitliche Button-Optik für Primary-Actions, Top-Bar-Actions und dialogbezogene Aktionen. -- Außenrahmen der Haupt-GUI als durchgehender Outline-Rahmen umgesetzt, damit die Kontur auch über die Rundungen konsistent sichtbar bleibt. +- Außenrahmen der Haupt-GUI als durchgehende Border auf der Hauptfläche umgesetzt, damit die Kontur über alle Rundungen konsistent bleibt. +- Eckradius von WindowChrome, Hauptfläche und innerem Inhalts-Clip abgestimmt, damit Inhalte in allen vier Ecken innerhalb des Rahmens bleiben. +- Hauptlayout von festen `Window.ActualWidth`-Bindings entkoppelt, damit Header/Content nicht über die gerundete Innenfläche hinausragen. +- Feste Hauptlayout-Höhen (Navigation/Content) auf die verfügbare Innenhöhe abgestimmt und Clipping im Dock-Bereich aktiviert, damit keine Inhalte in die Rundungsbereiche überlaufen. +- Initialisierung des Rounded-Clips auf den finalen Layout-Zeitpunkt erweitert (Loaded/Render), damit die Rundungsbegrenzung stabil greift. +- MainWindow-Ecküberstände beseitigt: Navigation-Rail unten links an den Fensterradius angepasst, Content-Bereich im `DockPanel` als Fill-Element geführt, zusätzlicher Surface-Clip auf Radius `20` gesetzt, den gesamten `MainWindowContentRoot` als konstanten `1px`-Inset innerhalb des Rahmens geführt, den Body-Host per Geometrie mit zum Innenradius passenden gerundeten unteren Ecken begrenzt, eine On-Top-Corner-Maske (`Rectangle - RoundedRectangle`) ergänzt, eine explizite On-Top-Rahmenkontur als `Path` ergänzt, die linke Rail-Kante ohne eigene Außenlinie geführt (kein Doppelrahmen links) und zusätzlich per Win32-Window-Region (`SetWindowRgn`) die Fensterkontur selbst auf Rundung begrenzt (WPF-Typen für Geometriepunkte/-größen explizit qualifiziert, um Mehrdeutigkeiten mit `System.Drawing` zu vermeiden). +- Sichtbarkeit des Main-Contents wiederhergestellt: Navigations-/Content-Host auf feste Breitenaufteilung (`75 + 425`) umgestellt, damit das Inhaltspanel nicht mehr durch einen Zero-Width-Viewport abgeschnitten wird. ### Navigation und Interaktion - Navigation-Buttons neu ausgerichtet (horizontal/vertikal), Icons vergrößert und Zustände vereinheitlicht. @@ -49,6 +55,7 @@ - Mehrdeutigkeitsfehler (`Brushes`) behoben. - Vor erfolgreichem Konfig-Ladevorgang wird die Oberfläche analog Offline-Zustand eingeschränkt (nur Info-Navigation und Info-Panel sichtbar). - Header-Verbindungsindikator für Offline/Verbindungsaufbau als größerer farbiger Status-Badge (rot/orange) sichtbarer umgesetzt, mit Tooltip versehen und so positioniert, dass er nicht von Action-Buttons überdeckt wird. +- AGENTS-Prozessregel ergänzt: Pushes standardmäßig über `git pushr` mit Retry/Backoff ausführen (Fallback: manuelle Wiederholungen mit `git push`). ### Lokalisierung - DE/EN-Ressourcen sprachlich bereinigt und vereinheitlicht. diff --git a/MainWindow.xaml b/MainWindow.xaml index 1533a7f..bbca6a1 100644 --- a/MainWindow.xaml +++ b/MainWindow.xaml @@ -12,7 +12,7 @@ WindowStyle="None" AllowsTransparency="False" ResizeMode="NoResize" - Background="Transparent" + Background="{DynamicResource backgroundColor}" Loaded="Window_Loaded" Icon="Resources/icons/logo_CustomerPanel.ico" KeyDown="App_KeyDown" @@ -346,27 +346,28 @@ + Background="Transparent"> - - + + HorizontalAlignment="Stretch"> - - + + + + +