0
0
Fork 0
mirror of https://github.com/discourse/discourse.git synced 2026-08-06 08:06:54 +08:00
discourse/themes/horizon/scss/compatibility.scss
Kris 9cd9ba64db
FEATURE: livestreams as a persistent event option (#41096)
Previously livestreams were driven by a `livestream` tag and separate
`livestream enabled`
and `livestream_chat_allowed_groups` site settings. Now that we're
integrating livestream into events we don't really need these anymore.

This change makes livestream a toggle on any event with a supplied URL.
If chat is disabled we explain why livestream can't be enabled.


Livestream becomes an attribute of an event rather than relying on a
tag.

When a URL is included and livestream is toggled on, the link oneboxes
with the event



<img width="800" alt="image"
src="https://github.com/user-attachments/assets/893671f1-202c-4023-80a8-f9b6f8285988"
/>



<img width="500" alt="image"
src="https://github.com/user-attachments/assets/3a56f038-f4c7-4c68-a0cd-026c47327ce5"
/>

<img width="2434" height="1606" alt="image"
src="https://github.com/user-attachments/assets/436c54fa-529e-4b8c-903a-5ecf3b6afe84"
/>

---------

Co-authored-by: Martin Brennan <martin@discourse.org>
2026-06-26 12:30:21 -04:00

73 lines
1.6 KiB
SCSS
Vendored

@use "lib/viewport";
.custom-homepage-columns {
.header-wrapper {
@include viewport.from(lg) {
margin-bottom: 1.25em;
}
}
.topic-list .topic-list-item {
height: auto;
&:nth-child(odd) {
background: var(--topic-list-item-background-color);
}
}
}
.b-header {
.nav-pills > li > a:hover {
.discourse-no-touch & {
color: var(--secondary);
}
}
.nav-pills > li > a:hover::after {
.discourse-no-touch & {
background: var(--secondary);
}
}
}
// theme component: https://github.com/discourse/discourse-minimal-category-boxes
.custom-category-boxes-container {
@include viewport.until(sm) {
padding-inline: var(--space-4);
box-sizing: border-box;
}
}
@include viewport.from(md) {
#main-outlet {
div[class^="category-title-header"] {
width: calc(100% - (2 * var(--space-4)));
border-radius: var(--d-border-radius-large);
max-width: calc(1000px - 3rem) !important;
}
.list-container div[class^="category-title-header"] {
width: 100%;
}
}
}
// livestream plugin: https://github.com/discourse/discourse-livestream
.livestream-topic.chat-enabled.archetype-regular {
#custom-chat-container {
margin-left: 0;
border-top-left-radius: var(--d-border-radius-large);
border-top-right-radius: var(--d-border-radius-large);
border: 0;
}
.container.posts {
grid-template-columns: auto auto;
}
}
// TC: Blog Style
body:not(.d-toc-installed).blog-post .container.posts,
body.d-toc-installed.blog-post .container.posts {
grid-template-columns: var(--blog-width) 0;
}