Auto-scroll checkbox
This commit is contained in:
parent
5c311da521
commit
ea4c597cbd
|
@ -64,6 +64,15 @@ body {
|
||||||
grid-column: 2;
|
grid-column: 2;
|
||||||
grid-row: 2;
|
grid-row: 2;
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
|
position: relative;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Auto-scroll checkbox in the corner */
|
||||||
|
.chat-column >.autoscroll-field {
|
||||||
|
position: absolute;
|
||||||
|
z-index: 39; /* just below modal shadow */
|
||||||
|
right: 6px;
|
||||||
|
bottom: 4px;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Footer row: message entry box */
|
/* Footer row: message entry box */
|
||||||
|
|
|
@ -120,6 +120,7 @@ const app = Vue.createApp({
|
||||||
// }
|
// }
|
||||||
},
|
},
|
||||||
historyScrollbox: null,
|
historyScrollbox: null,
|
||||||
|
autoscroll: true, // scroll to bottom on new messages
|
||||||
DMs: {},
|
DMs: {},
|
||||||
|
|
||||||
// Responsive CSS controls for mobile.
|
// Responsive CSS controls for mobile.
|
||||||
|
@ -1083,6 +1084,8 @@ const app = Vue.createApp({
|
||||||
},
|
},
|
||||||
|
|
||||||
scrollHistory() {
|
scrollHistory() {
|
||||||
|
if (!this.autoscroll) return;
|
||||||
|
|
||||||
window.requestAnimationFrame(() => {
|
window.requestAnimationFrame(() => {
|
||||||
this.historyScrollbox.scroll({
|
this.historyScrollbox.scroll({
|
||||||
top: this.historyScrollbox.scrollHeight,
|
top: this.historyScrollbox.scrollHeight,
|
||||||
|
|
|
@ -425,6 +425,15 @@
|
||||||
|
|
||||||
<!-- Middle Column: Chat Room/History -->
|
<!-- Middle Column: Chat Room/History -->
|
||||||
<div class="chat-column">
|
<div class="chat-column">
|
||||||
|
<div class="autoscroll-field tag">
|
||||||
|
<label class="checkbox is-size-6" title="Automatically scroll when new chat messages come in.">
|
||||||
|
<input type="checkbox"
|
||||||
|
v-model="autoscroll"
|
||||||
|
:value="true">
|
||||||
|
Auto-scroll
|
||||||
|
</label>
|
||||||
|
</div>
|
||||||
|
|
||||||
<div class="card grid-card">
|
<div class="card grid-card">
|
||||||
<header class="card-header has-background-link">
|
<header class="card-header has-background-link">
|
||||||
<div class="columns is-mobile card-header-title has-text-light">
|
<div class="columns is-mobile card-header-title has-text-light">
|
||||||
|
|
Loading…
Reference in New Issue
Block a user