feat: Leiste trägt die Röhre vom Server, Einklappen ist umkehrbar
Zwei Sachen, die beim Benutzen aufgefallen sind.
- "leiste ausblenden" war eine Einbahnstraße: die Leiste verschwand ganz und
liess sich nur über die Entwicklerkonsole zurückholen. Jetzt bleibt ein
3px-Strich stehen, ein Klick darauf holt sie wieder. ?honeybar=1 an der
Adresse ist der Notausgang, falls der Strich übersehen wird.
- Die Leiste hatte ihre Farben fest eingetragen und blieb bernsteinfarben,
auch wenn der Schreibtisch auf grün stand. Genau dieser Bruch liess sie wie
etwas Angeklebtes wirken. /api/apps liefert deshalb jetzt {apps, settings};
die Leiste setzt Röhre, Glühen und Scanlines danach.
Dass das auch über Site-Grenzen geht, war so nicht erwartet: der Schlüssel
für die App-Liste trägt das Aussehen einfach mit.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
1 parent
1c3218939b
commit
5ed4e30179
5 files changed
+191
-41
No files matched your search
@@ -540,3 +540,33 @@ func TestSchlüsselGiltAuchHinterDemProxy(t *testing.T) {
|
||||
t.Errorf("richtiger Schlüssel: %d, erwartet 200", code)
|
||||
}
|
||||
}
|
||||
|
||||
// Die Leiste stellt genau eine Anfrage — sie muss Liste und Aussehen bringen.
|
||||
func TestAppListeBringtDasAussehenMit(t *testing.T) {
|
||||
s := proxyServer(t, Config{ProxyAuth: true, AppsKey: "geheim123"})
|
||||
if err := s.store.SetSettings(localSub, map[string]string{"phosphor": "green", "glow": "off"}); err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
if err := s.store.SetApps([]App{{ID: "aether", Name: "AETHER", URL: "https://cloud.example.test"}}); err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
req := httptest.NewRequest("GET", "/api/apps", nil)
|
||||
req.Header.Set("X-HoneyOS-Key", "geheim123")
|
||||
rec := httptest.NewRecorder()
|
||||
s.routes().ServeHTTP(rec, req)
|
||||
|
||||
var got struct {
|
||||
Apps []App
|
||||
Settings map[string]string
|
||||
}
|
||||
if err := json.Unmarshal(rec.Body.Bytes(), &got); err != nil {
|
||||
t.Fatalf("Antwort nicht lesbar: %v — %s", err, rec.Body)
|
||||
}
|
||||
if len(got.Apps) != 1 || got.Apps[0].ID != "aether" {
|
||||
t.Errorf("Liste fehlt: %+v", got.Apps)
|
||||
}
|
||||
if got.Settings["phosphor"] != "green" || got.Settings["glow"] != "off" {
|
||||
t.Errorf("Aussehen fehlt: %+v", got.Settings)
|
||||
}
|
||||
}
|
||||
Reference in new issue
Block a user