Fixed saved date on messages.

Hotfix for empty message_history setting.

Signed-off-by: Armored Dragon <publicmail@armoreddragon.com>
This commit is contained in:
Armored Dragon 2024-05-21 16:46:41 -05:00
parent 66fd21777c
commit 391a33d149
No known key found for this signature in database
GPG key ID: C7207ACC3382AD8B
2 changed files with 20 additions and 8 deletions

View file

@ -21,7 +21,7 @@
var chat_overlay_window; var chat_overlay_window;
var app_button; var app_button;
const channels = ["domain", "local"]; const channels = ["domain", "local"];
var message_history = Settings.getValue("ArmoredChat-Messages", []); var message_history = Settings.getValue("ArmoredChat-Messages", []) || [];
var max_local_distance = 20; // Maximum range for the local chat var max_local_distance = 20; // Maximum range for the local chat
var pal_data = AvatarManager.getPalData().data; var pal_data = AvatarManager.getPalData().data;
@ -119,6 +119,7 @@
hour12: false, hour12: false,
}); });
saved_message.dateString = new Date().toLocaleDateString(undefined, { saved_message.dateString = new Date().toLocaleDateString(undefined, {
year: "numeric",
month: "long", month: "long",
day: "numeric", day: "numeric",
}); });
@ -210,11 +211,13 @@
function _loadSettings() { function _loadSettings() {
settings = Settings.getValue("ArmoredChat-Config", settings); settings = Settings.getValue("ArmoredChat-Config", settings);
// Load message history if (message_history) {
message_history.forEach((message) => { // Load message history
delete message.action; message_history.forEach((message) => {
_emitEvent({ type: "show_message", ...message }); delete message.action;
}); _emitEvent({ type: "show_message", ...message });
});
}
// Send current settings to the app // Send current settings to the app
_emitEvent({ type: "initial_settings", settings: settings }); _emitEvent({ type: "initial_settings", settings: settings });

View file

@ -150,11 +150,11 @@ Rectangle {
id: listview id: listview
delegate: Loader { delegate: Loader {
width: parent.width
property int delegateIndex: index property int delegateIndex: index
property string delegateText: model.text property string delegateText: model.text
property string delegateUsername: model.username property string delegateUsername: model.username
property string delegateDate: model.date property string delegateDate: model.date
width: parent.width // FIXME: Causes warning, but required for style?
sourceComponent: { sourceComponent: {
if (model.type === "chat") { if (model.type === "chat") {
@ -165,6 +165,12 @@ Rectangle {
} }
} }
ScrollBar.vertical: ScrollBar {
id: chat_scrollbar
height: 100
size: 0.05
}
model: getChannel(pageVal) model: getChannel(pageVal)
} }
@ -437,9 +443,12 @@ Rectangle {
} }
function scrollToBottom() { function scrollToBottom() {
if (listview.count == 0) return;
// if (chat_scrollbar.visualPosition > 0.85) {
listview.positionViewAtIndex(listview.count - 1, ListView.End); listview.positionViewAtIndex(listview.count - 1, ListView.End);
listview.positionViewAtEnd(); listview.positionViewAtEnd();
listview.contentY = listview.contentY + 50; listview.contentY = listview.contentY + 50;
// }
} }
@ -485,7 +494,7 @@ Rectangle {
switch (message.type){ switch (message.type){
case "show_message": case "show_message":
addMessage(message.displayName, message.message, `[ ${time} - ${date} ]`, message.channel, "chat"); addMessage(message.displayName, message.message, `[ ${message.timeString || time} - ${message.dateString || date} ]`, message.channel, "chat");
break; break;
case "avatar_connected": case "avatar_connected":
addMessage("SYSTEM", message.message, `[ ${time} - ${date} ]`, "domain", "notification"); addMessage("SYSTEM", message.message, `[ ${time} - ${date} ]`, "domain", "notification");