Compare commits

..

No commits in common. "0f9a76503c5a2bfe8169c74509ddc84f6d829c0c" and "bb6db43392d3328646cef2b237d724c108803b7a" have entirely different histories.

4 changed files with 5 additions and 25 deletions

View File

@ -317,13 +317,6 @@
<div class="tab-pane" data-tab="improvements" id="ov-pane-improvements"></div>
<div class="tab-pane" data-tab="backups" id="ov-pane-backups"></div>
<div class="tab-pane" data-tab="migrate" id="ov-pane-migrate">
<!-- In-content header (mirrors the per-app Config tab's .config-title:
icon + title + description sit inside the pane, above the sub-tabs).
The generic fleet header is hidden for this tab (.ov-migrate-active). -->
<div class="config-title">
<h3>🔀 Migrate</h3>
<p>Move apps in from another LibrePortal, and manage the peers you share backup locations with.</p>
</div>
<!-- Cross-host area: nested segmented sub-tabs (Config-tab design). -->
<div class="tabs-wrapper ov-subtabs">
<div class="tabs-list">

View File

@ -135,8 +135,7 @@
/* The Backups tab mounts the real BackupPage. Its own page-header replaces the
generic fleet header, and its left sidebar is restyled into a horizontal
nested tab strip so the whole thing reads as tabs-within-tabs. */
#overview-view.ov-backups-active .overview-header,
#overview-view.ov-migrate-active .overview-header { display: none; }
#overview-view.ov-backups-active .overview-header { display: none; }
#overview-view #ov-pane-backups .backup-layout { display: block; }
#overview-view #ov-pane-backups .backup-layout > .sidebar {
@ -165,7 +164,7 @@
min-width: 0;
align-items: center;
justify-content: center;
gap: 6px;
gap: 8px;
margin: 0;
padding: 12px 14px;
white-space: nowrap;

View File

@ -117,15 +117,10 @@ class OverviewManager {
_applyTab(id) {
if (this.tabs) this.tabs.switch(id);
// Backups embeds the full backup center (its own header + nested sub-tab
// strip) and Migrate carries its own in-content .config-title header above
// its sub-tabs — both supply their own heading, so hide the generic fleet
// header for them.
// The Backups tab embeds the full backup center, which brings its own header
// and a nested sub-tab strip — hide the generic fleet header for it.
const root = document.getElementById('overview-view');
if (root) {
root.classList.toggle('ov-backups-active', id === 'backups');
root.classList.toggle('ov-migrate-active', id === 'migrate');
}
if (root) root.classList.toggle('ov-backups-active', id === 'backups');
this.updateHeader(id);
this.renderTab(id);
this.current = id;

View File

@ -526,14 +526,7 @@ html[data-theme="nebula"]::after {
min-width: 0;
text-align: center;
white-space: nowrap;
/* Lay the icon + label out as flex children with a fixed gap so spacing is
identical whether or not the markup has whitespace between the two spans
(the per-app Config sub-tabs rely on source whitespace; the Migrate
sub-tabs don't this makes both render the same). */
display: flex;
align-items: center;
justify-content: center;
gap: 6px;
}
/* Task Status Indicator */