Switch to absolute time for now

main
Talon 2024-08-24 18:18:09 +02:00
parent 7dbb36ddb0
commit 3648cc5ab9
1 changed files with 13 additions and 4 deletions

View File

@ -51,7 +51,7 @@ export class MainView extends View {
this.syncMessages();
this.updateInterval = setInterval(() => {
this.updateVisibleMessageShownTimestamps();
}, 1000);
}, 10000);
setTimeout(() => this.attemptToSendUnsentMessages(), 2000);
state.events.registerHandler<MessageUpdated>("message-updated", (message) => {
@ -67,7 +67,7 @@ export class MainView extends View {
state.save();
const renderedMessage = this.messageElementMap.get(existing.id);
if (renderedMessage) {
(renderedMessage as ListItem).setText(`${existing.content}; ${this.convertIsoTimeStringToRelative(existing.createdAt)}`);
(renderedMessage as ListItem).setText(`${existing.content}; ${this.convertIsoTimeStringToFriendly(existing.createdAt)}`);
}
}
});
@ -254,7 +254,7 @@ export class MainView extends View {
existing.fileSize = message.fileSize;
const renderedMessage = this.messageElementMap.get(message.id);
if (renderedMessage) {
(renderedMessage as ListItem).setText(`${message.content}; ${this.convertIsoTimeStringToRelative(message.createdAt)}`);
(renderedMessage as ListItem).setText(`${message.content}; ${this.convertIsoTimeStringToFriendly(message.createdAt)}`);
}
}
}
@ -275,7 +275,7 @@ export class MainView extends View {
}
private renderMessage(message: IMessage): UINode {
const itm = new ListItem(`${message.content}; ${this.convertIsoTimeStringToRelative(message.createdAt)}`);
const itm = new ListItem(`${message.content}; ${this.convertIsoTimeStringToFriendly(message.createdAt)}`);
itm.setUserData(message.id);
itm.onClick(() => {
new MessageDialog(message).open();
@ -443,6 +443,15 @@ export class MainView extends View {
}
}
private convertIsoTimeStringToFriendly(isoTimeString: string): string {
const date = new Date(isoTimeString);
const now = new Date();
if (date.getDate() === now.getDate() && date.getMonth() === now.getMonth() && date.getFullYear() === now.getFullYear()) {
return date.toLocaleTimeString();
} else {
return date.toLocaleString();
}
}
private updateVisibleMessageShownTimestamps() {
const lowerIndex = Math.max(this.messageList.getFocus() - 10, 0);
const upperIndex = Math.min(this.messageList.getFocus() + 10, this.messageList.children.length);