Wichtig
Detail
Wichtig
Detail
Detail
#27122
Umkonfigurieren und Exportieren eines geerbten (modularen) Layouts wird nicht übernommen
Top-Logic wird modular entwickelt, d. h. jedes Modul hat seine eigenen Quellen und Ressourcen (bspw. Layouts, Anwendungskonfiguration, etc.). Für das Deployment werden diese Daten gemerged und zusammen bereitgestellt.
Der Entwickler hingegen arbeitet mit den unaufbereiteten Daten. Während der Laufzeit einer Anwendung kann der Zugriff auf bspw. das aktuellste Layout "träge" werden, da schließlich im Worst-Case in jedem Modul, für jedes Theme nachgesehen werden muss, ob die entsprechende Datei existiert.
Top-Logic besitzt deswegen einen Cache für das Dateisystem (s. tl:IDEFileSystemCache). Für einen relativen Pfad zu webapp besitzt der Cache alle Path Objekte zu existierenden Dateien der entsprechenden Module (sortiert bzgl. der Modulabhängigkeiten). Dadurch vermeidet man bei jedem Zugriff im Worst-Case in allen Modulen nach der passenden Datei zu suchen.
Beim Erstellen einer neuen Datei (bspw. eines Layouts) wird der Pfad dem Cache hinzugefügt. Beim Einfügen des Pfades an der richtigen Position im Cache existiert ein Fehler, da dort ein Path Objekt mit einem absoluten Pfad aufgelöst wird (s. resolve-API). Das ist falsch, die API sollte nur mit einem relativen Pfad verwendet werden.
Test
- mainTabbar.layout.xml aus tl-demo löschen (hängt von #27109 ab, da hier die Hautreiterleiste modularisiert wurde).
- Anmelden und Hauptreiterleiste konfigurieren, indem Tabs ausgesucht werden.
- Layouts exportieren.
- Neu anmelden ohne Neustart.
- Fehler: Es werden keine Tabs angezeigt (erst wieder nach Neustart).