Attempt to fix new messages button
This commit is contained in:
@@ -171,6 +171,8 @@
|
|||||||
const onScroll = () => {
|
const onScroll = () => {
|
||||||
showScrollButton = Math.abs(element?.scrollTop || 0) > 1500
|
showScrollButton = Math.abs(element?.scrollTop || 0) > 1500
|
||||||
|
|
||||||
|
const newMessages = document.getElementById("new-messages")
|
||||||
|
|
||||||
if (!newMessages || newMessagesSeen) {
|
if (!newMessages || newMessagesSeen) {
|
||||||
showFixedNewMessages = false
|
showFixedNewMessages = false
|
||||||
} else {
|
} else {
|
||||||
@@ -185,7 +187,7 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
const scrollToNewMessages = () =>
|
const scrollToNewMessages = () =>
|
||||||
newMessages?.scrollIntoView({behavior: "smooth", block: "center"})
|
document.getElementById("new-messages")?.scrollIntoView({behavior: "smooth", block: "center"})
|
||||||
|
|
||||||
const scrollToBottom = () => element?.scrollTo({top: 0, behavior: "smooth"})
|
const scrollToBottom = () => element?.scrollTo({top: 0, behavior: "smooth"})
|
||||||
|
|
||||||
@@ -195,7 +197,6 @@
|
|||||||
let share = $state(popKey<TrustedEvent | undefined>("share"))
|
let share = $state(popKey<TrustedEvent | undefined>("share"))
|
||||||
let parent: TrustedEvent | undefined = $state()
|
let parent: TrustedEvent | undefined = $state()
|
||||||
let element: HTMLElement | undefined = $state()
|
let element: HTMLElement | undefined = $state()
|
||||||
let newMessages: HTMLElement | undefined = $state()
|
|
||||||
let chatCompose: HTMLElement | undefined = $state()
|
let chatCompose: HTMLElement | undefined = $state()
|
||||||
let dynamicPadding: HTMLElement | undefined = $state()
|
let dynamicPadding: HTMLElement | undefined = $state()
|
||||||
let newMessagesSeen = false
|
let newMessagesSeen = false
|
||||||
@@ -391,7 +392,7 @@
|
|||||||
{#each elements as { type, id, value, showPubkey } (id)}
|
{#each elements as { type, id, value, showPubkey } (id)}
|
||||||
{#if type === "new-messages"}
|
{#if type === "new-messages"}
|
||||||
<div
|
<div
|
||||||
bind:this={newMessages}
|
{id}
|
||||||
class="flex items-center py-2 text-xs transition-colors"
|
class="flex items-center py-2 text-xs transition-colors"
|
||||||
class:opacity-0={showFixedNewMessages}>
|
class:opacity-0={showFixedNewMessages}>
|
||||||
<div class="h-px flex-grow bg-primary"></div>
|
<div class="h-px flex-grow bg-primary"></div>
|
||||||
|
|||||||
@@ -98,6 +98,8 @@
|
|||||||
const onScroll = () => {
|
const onScroll = () => {
|
||||||
showScrollButton = Math.abs(element?.scrollTop || 0) > 1500
|
showScrollButton = Math.abs(element?.scrollTop || 0) > 1500
|
||||||
|
|
||||||
|
const newMessages = document.getElementById("new-messages")
|
||||||
|
|
||||||
if (!newMessages || newMessagesSeen) {
|
if (!newMessages || newMessagesSeen) {
|
||||||
showFixedNewMessages = false
|
showFixedNewMessages = false
|
||||||
} else {
|
} else {
|
||||||
@@ -112,7 +114,7 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
const scrollToNewMessages = () =>
|
const scrollToNewMessages = () =>
|
||||||
newMessages?.scrollIntoView({behavior: "smooth", block: "center"})
|
document.getElementById("new-messages")?.scrollIntoView({behavior: "smooth", block: "center"})
|
||||||
|
|
||||||
const scrollToBottom = () => element?.scrollTo({top: 0, behavior: "smooth"})
|
const scrollToBottom = () => element?.scrollTo({top: 0, behavior: "smooth"})
|
||||||
|
|
||||||
@@ -120,7 +122,6 @@
|
|||||||
let share = $state(popKey<TrustedEvent | undefined>("share"))
|
let share = $state(popKey<TrustedEvent | undefined>("share"))
|
||||||
let parent: TrustedEvent | undefined = $state()
|
let parent: TrustedEvent | undefined = $state()
|
||||||
let element: HTMLElement | undefined = $state()
|
let element: HTMLElement | undefined = $state()
|
||||||
let newMessages: HTMLElement | undefined = $state()
|
|
||||||
let chatCompose: HTMLElement | undefined = $state()
|
let chatCompose: HTMLElement | undefined = $state()
|
||||||
let dynamicPadding: HTMLElement | undefined = $state()
|
let dynamicPadding: HTMLElement | undefined = $state()
|
||||||
let newMessagesSeen = false
|
let newMessagesSeen = false
|
||||||
@@ -275,7 +276,7 @@
|
|||||||
{#each elements as { type, id, value, showPubkey } (id)}
|
{#each elements as { type, id, value, showPubkey } (id)}
|
||||||
{#if type === "new-messages"}
|
{#if type === "new-messages"}
|
||||||
<div
|
<div
|
||||||
bind:this={newMessages}
|
{id}
|
||||||
class="flex items-center py-2 text-xs transition-colors"
|
class="flex items-center py-2 text-xs transition-colors"
|
||||||
class:opacity-0={showFixedNewMessages}>
|
class:opacity-0={showFixedNewMessages}>
|
||||||
<div class="h-px flex-grow bg-primary"></div>
|
<div class="h-px flex-grow bg-primary"></div>
|
||||||
|
|||||||
Reference in New Issue
Block a user