[Port] gitea#29982 Introduce .secondary-nav and handle .page-content spacing universally

Fixes: https://github.com/go-gitea/gitea/issues/29981. Introduce
`.secondary-nav` as a universal way for styling and margin adjustments
inside `.page-content`.

If the first child of `.page-content` is `.secondary-nav`, we add margin
below it, otherwise we add padding to the first child. Notable changes:

- `--color-header-wrapper` is replaced with `--color-secondary-nav-bg`.
- `navbar` class is removed.

Co-authored-by: Giteabot <teabot@gitea.io>
Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>

---

Conflict resolution: Trivial conflict & changed selector to reflect new
classes.
Ref: https://codeberg.org/forgejo/forgejo/issues/2776
(cherry picked from commit 3ccda41a539b8ba7841919ee12dc2877ddc03818)
This commit is contained in:
silverwind 2024-03-23 00:54:09 +01:00 committed by Gusted
parent 18d13000e9
commit 1ee494a045
No known key found for this signature in database
GPG key ID: FD821B732837125F
18 changed files with 43 additions and 47 deletions

View file

@ -749,9 +749,16 @@ img.ui.avatar,
padding-bottom: 80px;
}
.page-content.new:is(.repo,.migrate,.org),
.page-content.profile:is(.user,.organization) {
padding-top: 15px;
/* add margin below .secondary nav when it is the first child */
.page-content > :first-child.secondary-nav {
margin-bottom: 14px;
}
/* add padding to all content when there is no .secondary.nav. this uses padding instead of
margin because with the negative margin on .ui.grid we would have to set margin-top: 0,
but that does not work universally for all pages */
.page-content > :first-child:not(.secondary-nav) {
padding-top: 14px;
}
/* overwrite semantic width of containers inside the main page content div (div with class "page-content") */
@ -1337,7 +1344,6 @@ strong.attention-caution, svg.attention-caution {
}
overflow-menu {
margin-bottom: 15px !important;
border-bottom: 1px solid var(--color-secondary) !important;
display: flex;
}
@ -1351,6 +1357,10 @@ overflow-menu .overflow-menu-items .item {
margin-bottom: 0 !important; /* reset fomantic's margin, because the active menu has special bottom border */
}
overflow-menu .ui.label {
margin-left: 7px !important; /* save some space */
}
.activity-bar-graph {
background-color: var(--color-primary);
color: var(--color-primary-contrast);

View file

@ -77,22 +77,22 @@
margin: 0 1px; /* Accommodate for Semantic's 1px hacks on .attached elements */
}
.dashboard .dashboard-navbar {
padding: 4px 12px;
.dashboard .secondary-nav {
padding: 1px 12px; /* match .overflow-menu-items in height */
}
.dashboard .dashboard-navbar .right.menu {
.dashboard .secondary-nav .right.menu {
gap: .35714286em;
}
.dashboard .dashboard-navbar .right.menu div.item {
.dashboard .secondary-nav .right.menu div.item {
padding-left: 0.5rem;
}
.dashboard .dashboard-navbar .org-visibility .label {
.dashboard .secondary-nav .org-visibility .label {
margin-left: 5px;
}
.dashboard .dashboard-navbar .ui.dropdown {
.dashboard .secondary-nav .ui.dropdown {
max-width: 100%;
}

View file

@ -1,10 +1,8 @@
.explore .navbar {
margin-bottom: 15px !important;
background-color: var(--color-header-wrapper) !important;
.explore .secondary-nav {
border-width: 1px !important;
}
.explore .navbar .svg {
.explore .secondary-nav .svg {
width: 16px;
text-align: center;
margin-right: 5px;

View file

@ -136,3 +136,7 @@
justify-content: center;
z-index: 1; /* prevent menu button background from overlaying icon */
}
.secondary-nav {
background: var(--color-secondary-nav-bg) !important; /* important because of .ui.secondary.menu */
}

View file

@ -4,16 +4,6 @@
user-select: none;
}
.repository .navbar {
display: flex;
justify-content: space-between;
}
.repository .navbar .ui.label {
margin-left: 7px;
padding: 3px 5px;
}
.repository .owner.dropdown {
min-width: 40% !important;
}

View file

@ -1,4 +1,8 @@
.header-wrapper .fork-flag {
.repository .secondary-nav {
padding-top: 12px;
}
.repository .secondary-nav .fork-flag {
margin-top: 0.5rem;
font-size: 12px;
}
@ -63,8 +67,3 @@
.repo-buttons .ui.labeled.button.disabled > .button {
pointer-events: none !important;
}
.repository .header-wrapper {
padding-top: 12px;
background-color: var(--color-header-wrapper);
}

View file

@ -197,7 +197,6 @@
--color-input-toggle-background: #2e353b;
--color-input-border: var(--color-secondary);
--color-input-border-hover: var(--color-secondary-dark-1);
--color-header-wrapper: #181c20;
--color-light: #00001728;
--color-light-mimic-enabled: rgba(0, 0, 0, calc(40 / 255 * 222 / 255 / var(--opacity-disabled)));
--color-light-border: #e8e8ff28;
@ -227,6 +226,7 @@
--color-nav-bg: #16191c;
--color-nav-hover-bg: var(--color-secondary-light-1);
--color-nav-text: var(--color-text);
--color-secondary-nav-bg: #181c20;
--color-label-text: var(--color-text);
--color-label-bg: #73828e4b;
--color-label-hover-bg: #73828ea0;

View file

@ -197,7 +197,6 @@
--color-input-toggle-background: #d0d7de;
--color-input-border: var(--color-secondary);
--color-input-border-hover: var(--color-secondary-dark-1);
--color-header-wrapper: #f9fafb;
--color-light: #00001706;
--color-light-mimic-enabled: rgba(0, 0, 0, calc(6 / 255 * 222 / 255 / var(--opacity-disabled)));
--color-light-border: #0000171d;
@ -227,6 +226,7 @@
--color-nav-bg: #f6f7fa;
--color-nav-hover-bg: var(--color-secondary-light-1);
--color-nav-text: var(--color-text);
--color-secondary-nav-bg: #f9fafb;
--color-label-text: var(--color-text);
--color-label-bg: #949da64b;
--color-label-hover-bg: #949da6a0;

View file

@ -125,10 +125,6 @@
border: 1px solid var(--color-secondary);
}
#notification_div {
padding-top: 15px;
}
#notification_table {
background: var(--color-box-body);
border: 1px solid var(--color-secondary);