discourse/app/assets/stylesheets/mobile/topic.scss
Martin Brennan c0c7c237aa
FIX: Clean up topic-timer-info CSS classes, add edit button, and improve UI (#12080)
This PR adds an edit button to the topic timer info message which opens the modal.

Also, I have cleaned up a few more places where we were referencing "topic status update" which is what these were called prior to being called topic timers.

The category settings for auto-close topic hours has now also been modified to use the new relative-time-picker component.

Finally, the relative-time-picker input step and min is dynamic based on mins/other intervals selected, see https://review.discourse.org/t/feature-relative-time-input-for-timers-and-bookmarks-and-promote-auto-close-after-last-post-timer-12063/19204/7?u=martin
2021-02-16 12:07:30 +10:00

252 lines
4.2 KiB
SCSS

.post-info a {
color: var(--primary-medium);
}
.topic-meta-data-inside {
float: right;
margin-top: -38px;
margin-right: 5px;
}
.post-info {
display: inline-block;
}
#topic-title {
margin: 0 60px 10px 0;
h1 {
font-size: $font-up-3;
line-height: $line-height-medium;
a {
color: var(--primary);
vertical-align: middle;
word-wrap: break-word;
}
}
.title-category-wrapper {
margin-top: 5px;
}
}
.topic-timer-info {
padding-left: 10px;
border-top: 1px solid var(--primary-low);
padding-top: 10px;
h3 {
margin: 0;
display: flex;
button {
align-self: flex-start;
}
}
}
#topic-progress-wrapper {
position: fixed;
right: 1em;
bottom: 0;
z-index: z("timeline");
&:not(.docked) {
margin-bottom: env(safe-area-inset-bottom);
}
html.rtl & {
/**
* This should be the other way around, but it has to be "wrong" here
* because our RTL CSS is generated using the `rtlit` gem which flips
* left to right and right to left, so this will be corrected when it
* goes through rtlit.
*/
left: unset;
right: 1em;
}
}
#topic-progress-expanded {
border: 1px solid var(--primary-low);
padding: 5px;
background: var(--secondary);
position: absolute;
bottom: 34px;
width: 135px;
button.full {
width: 100%;
margin-bottom: 5px;
.d-icon {
display: block;
margin-top: 2px;
margin-bottom: 2px;
font-size: $font-up-2;
}
}
.jump-form {
input[type="text"] {
float: left;
width: 45px;
height: 20px;
text-align: center;
font-size: $font-up-1;
}
button.btn {
float: right !important;
width: 55px;
}
}
button.btn.jump-prompt {
margin: 0;
}
button.btn.jump-bottom {
margin-top: 5px;
margin-bottom: 0;
}
}
#topic-progress {
position: relative;
&.hidden {
display: none;
}
background-color: var(--secondary);
color: var(--tertiary);
border: 1px solid var(--tertiary-low);
width: 145px;
height: 42px;
/* as a big ol' click target, don't let text inside be selected */
@include unselectable;
.nums {
position: relative;
top: 12px;
width: 100%;
text-align: center;
z-index: z("base");
}
h4 {
display: inline;
font-size: $font-up-2;
line-height: $line-height-small;
}
.d-icon {
position: absolute;
right: 8px;
bottom: 9px;
z-index: z("base");
}
.bg {
position: absolute;
top: 0;
bottom: 0;
width: 0;
border-right: 1px solid var(--tertiary-low);
background-color: var(--tertiary-low);
transition: width 0.75s;
}
}
.topic-error {
padding: 18px;
width: 90%;
margin-left: auto;
margin-right: auto;
font-size: $font-up-4;
line-height: $line-height-medium;
.topic-retry {
display: block;
margin-top: 20px;
margin-left: auto;
margin-right: auto;
}
}
#topic-progress-wrapper.docked {
position: absolute;
}
.topic-post:last-of-type {
padding-bottom: 40px;
}
sup sup,
sub sup,
sup sub,
sub sub {
top: 0;
}
// inline editing of title on mobile
#topic-title .title-wrapper {
position: relative;
float: none;
width: 100%;
input#edit-title {
width: 100%;
}
.select-kit.combo-box.category-chooser {
width: 100%;
margin-top: 0;
}
}
// make mobile timeline top and bottom dates easier to select
.topic-timeline {
.start-date,
.now-date {
font-size: $font-up-1;
padding: 5px;
}
.topic-category {
margin-bottom: 0.5rem;
}
}
.edit-topic-timer-modal {
.future-date-input {
.alert-info {
margin: 0 -10px -10px -10px;
padding: 10px;
}
}
.btn.pull-right {
margin-right: 0;
}
.modal-body {
width: 375px;
}
}
.topic-footer-main-buttons {
display: flex;
align-items: center;
flex-wrap: wrap;
}
@media screen and (max-height: 600px) {
.topic-admin-popup-menu {
box-sizing: border-box;
padding: 0.25em;
width: unset;
ul {
display: grid;
grid-template-columns: 1fr 1fr 1fr;
@media screen and (max-width: 550px) {
grid-template-columns: 1fr 1fr;
}
.popup-menu-btn {
@include ellipsis;
}
li {
border: 0;
min-width: 0;
}
}
}
}