diff --git a/public/index.php b/public/index.php index b2e5042..72807f1 100644 --- a/public/index.php +++ b/public/index.php @@ -2249,7 +2249,30 @@ $csrfField = Csrf::field(); .btn-autorefresh { background: rgba(255,255,255,0.04); border: 1px solid var(--border-glass); color: var(--text-main); font-size: 0.75rem; font-weight: 700; padding: 0.5rem 0.85rem; border-radius: 8px; cursor: pointer; display: flex; align-items: center; gap: 0.5rem; transition: all 0.2s; font-family: 'Roboto Mono', monospace; } .btn-autorefresh.active { background: rgba(18,212,138,0.15); border-color: var(--success); color: var(--success); } - .main-content { padding: 1.75rem 2rem; max-width: 1600px; } + /* + Die Obergrenze lag bei 1600px. Auf einem breiten Schirm blieb rechts + ein leerer Streifen, waehrend die Tabellen links zusammengedrueckt + standen - besonders im Bugtracker, wo eine Zeile acht Spalten hat. + + Ganz ohne Grenze wird es allerdings unlesbar: Bei 3400px wandert das + Auge von der Item-Nummer bis zur Statusspalte quer ueber den Tisch. + 2400px ist der Kompromiss - fuellt jeden ueblichen Schirm und + bremst erst darueber. + */ + /* + min-width:0 ist der unscheinbare Teil und der wichtigere. + + body ist ein Flex-Container (Seitenleiste + Inhalt), .main-content + also ein Flex-Element - und die haben von Haus aus min-width:auto, + weigern sich also, unter ihre Inhaltsbreite zu schrumpfen. Folge: + Eine breite Tabelle schob den ganzen Inhaltsbereich auf, statt in + ihrem eigenen Behaelter zu scrollen, und die SEITE lief quer. Damit + wandert beim Scrollen auch die Seitenleiste aus dem Bild. + + Mit min-width:0 gibt .main-content nach, und .tabelle-scroll tut, + wofuer es da ist. + */ + .main-content { padding: 1.75rem 2rem; max-width: 2400px; min-width: 0; } /* Stats & KPI Grid */ .stats-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 1.25rem; margin-bottom: 1.75rem; } @@ -2350,6 +2373,49 @@ $csrfField = Csrf::field(); */ .hilfe { cursor: help; border-bottom: 1px dotted rgba(255,255,255,0.28); } + /* --------------------------------------------------------------- + Breite Datentabellen (Bugtracker, Fehlerstrom) + + Ohne table-layout:fixed verteilt der Browser die Breite nach + Inhalt. Eine einzige lange Exception-Meldung oder ein Dateipfad + wie "public/api/bugtracker/v1/manage/index.php:407" zog damit die + Titelspalte auf und quetschte alle anderen zusammen - je Zeile + anders, weshalb die Spalten von oben nach unten wanderten. + + Mit fester Verteilung stehen die schmalen Spalten still, und die + Titelspalte bekommt, was uebrig ist. Sie muss dafuer kuerzen + koennen - siehe .zelle-titel. + --------------------------------------------------------------- */ + .tabelle-scroll { overflow-x: auto; } + table.tabelle-fest { table-layout: fixed; min-width: 1180px; } + table.tabelle-fest td { overflow-wrap: anywhere; } + + /* + Der Titel wird nach zwei Zeilen abgeschnitten, nicht nach einer: + Eine Exception-Meldung ist in der ersten Zeile oft nur Namensraum + und sagt noch nichts. Der vollstaendige Text haengt im title=. + */ + .zelle-titel .titel { + display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; + overflow: hidden; color: #fff; font-weight: 700; + } + .zelle-titel .meta { + font-size: 0.75rem; color: var(--text-muted); margin-top: 0.25rem; + display: flex; flex-wrap: wrap; gap: 0.4rem; align-items: center; + overflow: hidden; + } + /* Ein langer Dateipfad darf die Zeile nicht in die Hoehe treiben. */ + .zelle-titel .meta .badge { max-width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } + + /* + Die Knoepfe brachen um, weil die Zelle enger wurde als ihr Inhalt - + daher das Verschobene im Screenshot: Stift oben, Lupe und Haken in + der Zeile darunter. Sie bleiben jetzt in einer Reihe, und die Spalte + ist breit genug dafuer. + */ + .zelle-aktionen { white-space: nowrap; } + .zelle-aktionen > div { display: flex; gap: 0.3rem; flex-wrap: nowrap; } + .tab-content, .subtab-content { display: none; } .tab-content.active, .subtab-content.active { display: block; } @@ -4667,17 +4733,26 @@ chmod +x update-agent - + +
+
- - + + - - - - - + + + + + @@ -4735,9 +4810,9 @@ chmod +x update-agent - -
ID / TypUmgebungID / TypUmgebung Projekt & TitelBuildSchweregradAnzahlStatusAktionenBuildSchweregradAnzahlStatusAktionen
#
- -
+
+
+
Projekt: Von: @@ -4770,9 +4845,9 @@ chmod +x update-agent
-
- +
+
+ @@ -4792,6 +4867,7 @@ chmod +x update-agent
+ 1): ?>
@@ -5003,16 +5079,20 @@ chmod +x update-agent
- + +
+
- + - - - - - + + + + + @@ -5045,9 +5125,13 @@ chmod +x update-agent ?> - -
KlasseKlasse FehlerProjekt / UmgebungBuildAnzahlZuletztAktionenProjekt / UmgebungBuildAnzahlZuletztAktionen
- -
+
+ +
+
🔇 stummgeschaltet @@ -5074,8 +5158,8 @@ chmod +x update-agent
-
+
+
@@ -5095,6 +5179,7 @@ chmod +x update-agent
+ 1): ?>