mtxchat port to xous-ipc 0.10

This commit is contained in:
bunnie 2024-09-23 17:00:53 +08:00
parent c699e06c5a
commit 048e8d8373
3 changed files with 13 additions and 22 deletions

View file

@ -353,17 +353,12 @@ impl<'a> MtxChat<'a> {
};
if let Ok(payloads) = builder.build() {
self.unset_debug(TOKEN_KEY);
if let Ok(content) = payloads.content()[0].content.as_str() {
self.set(USER_NAME_KEY, content).expect("failed to save username");
self.new_username = content.ne(&old_username);
}
if let Ok(content) = payloads.content()[1].content.as_str() {
self.set(USER_DOMAIN_KEY, content).expect("failed to save server");
}
if let Ok(content) = payloads.content()[2].content.as_str() {
if content.ne(HIDE) {
self.set(PASSWORD_KEY, content).expect("failed to save password");
}
self.set(USER_NAME_KEY, payloads.content()[0].content.as_str()).expect("failed to save username");
self.new_username = payloads.content()[0].content.as_str().ne(&old_username);
self.set(USER_DOMAIN_KEY, payloads.content()[1].content.as_str()).expect("failed to save server");
if payloads.content()[2].content.as_str().ne(HIDE) {
self.set(PASSWORD_KEY, payloads.content()[2].content.as_str())
.expect("failed to save password");
}
if let Some(user_name) = &self.user_name {
if let Some(user_domain) = &self.user_domain {
@ -448,13 +443,9 @@ impl<'a> MtxChat<'a> {
self.unset_debug(ROOM_ID_KEY);
self.unset_debug(SINCE_KEY);
self.unset_debug(FILTER_KEY);
if let Ok(content) = payloads.content()[0].content.as_str() {
self.set(ROOM_NAME_KEY, content).expect("failed to save server");
self.new_room = content.ne(&old_room);
}
if let Ok(content) = payloads.content()[1].content.as_str() {
self.set(ROOM_DOMAIN_KEY, content).expect("failed to save server");
}
self.set(ROOM_NAME_KEY, payloads.content()[0].content.as_str()).expect("failed to save server");
self.new_room = payloads.content()[0].content.as_str().ne(&old_room);
self.set(ROOM_DOMAIN_KEY, payloads.content()[1].content.as_str()).expect("failed to save server");
}
log::info!("# ROOM_NAME_KEY set '{}' => clearing ROOM_ID_KEY, SINCE_KEY, FILTER_KEY", ROOM_NAME_KEY);
}

View file

@ -7,7 +7,7 @@ use url::Url;
use xous::CID;
use xous_ipc::Buffer;
use crate::{get_username, web, MTX_LONG_TIMEOUT_MS};
use crate::{MTX_LONG_TIMEOUT_MS, get_username, web};
pub fn listen(
url: &mut Url,
@ -37,7 +37,7 @@ pub fn listen(
let sender = event.sender.unwrap_or("anon".to_string());
let body = event.body.unwrap_or("...".to_string());
let post = chat::Post {
dialogue_id: String::from(&dialogue_id),
dialogue_id: String::from(dialogue_id),
author: String::from(&get_username(&sender)),
timestamp: event.ts.unwrap_or(0),
text: String::from(&body),

View file

@ -4,7 +4,7 @@
mod api;
use api::*;
use chat::{Chat, Event, POST_TEXT_MAX};
use chat::{Chat, Event};
use gam::{MenuItem, MenuPayload};
use locales::t;
use mtxchat::MtxChat;
@ -132,7 +132,7 @@ fn wrapped_main() -> ! {
}
Some(MtxchatOp::Post) => {
let buffer = unsafe { Buffer::from_memory_message(msg.body.memory_message().unwrap()) };
let s = buffer.to_original::<String<{ POST_TEXT_MAX }>, _>().unwrap();
let s = buffer.to_original::<String, _>().unwrap();
if s.len() > 0 {
// capture input instead of calling here, so message can drop and calling server is
// released