Username change now dirty reactive in ui

This commit is contained in:
Patrick Hellebrand
2021-09-23 14:02:42 +02:00
committed by Felix Hartmann (PEA3-Fe-FI)
parent 7286b211bf
commit 43d8b2919c
3 changed files with 23 additions and 17 deletions

View File

@@ -26,6 +26,7 @@ namespace PolyChat
private ObservableCollection<ChatPartner> Partners;
private ChatPartner selectedPartner = null;
private string username;
public MainPage()
{
this.InitializeComponent();
@@ -80,6 +81,14 @@ namespace PolyChat
public async void OnOpenNewChatDialog(object sender = null, RoutedEventArgs e = null)
{
OnIncomingMessage(
"1.1.1.1",
new JObject(
new JProperty("type", "username"),
new JProperty("content", "Cloudflare")
).ToString(),
DateTime.Now
);
NewChatDialog dialog = new NewChatDialog();
var result = await dialog.ShowAsync();
if (result == ContentDialogResult.Primary)
@@ -138,7 +147,10 @@ namespace PolyChat
{
case "username":
Debug.WriteLine($"! username change for {sendingPartner.Code} -> {content}");
sendingPartner.SetName(Name);
sendingPartner.Name = content;
int index = Partners.IndexOf(sendingPartner);
Partners.Remove(sendingPartner);
Partners.Insert(index, sendingPartner);
break;
default:
sendingPartner.AddMessage(new ChatMessage(origin, type, content, timeStamp));
@@ -159,7 +171,7 @@ namespace PolyChat
origin,
item["type"].ToString(),
item["content"].ToString()//,
//DateTime.Parse(item["timestamp"].ToString())
//DateTime.Parse(item["timestamp"].ToString())
)
);
}