Bilder werden wieder angezeigt
This commit is contained in:
@@ -70,7 +70,7 @@ namespace ChatController.ChatKlassen
|
|||||||
OriginalImage = originalImage;
|
OriginalImage = originalImage;
|
||||||
OriginalImageName = imageName;
|
OriginalImageName = imageName;
|
||||||
|
|
||||||
if(MessageId == 0 && MessageType == ChatMessageType.Image && !(logo is null))
|
if(MessageId == 0 && MessageType == ChatMessageType.Image && false == logo is null)
|
||||||
{
|
{
|
||||||
PictureSource = logo;
|
PictureSource = logo;
|
||||||
PicturePlaceholderHeight = (int) logo.Height;
|
PicturePlaceholderHeight = (int) logo.Height;
|
||||||
|
|||||||
@@ -295,7 +295,7 @@ namespace ChatController
|
|||||||
|
|
||||||
var contact = _ContactList.FirstOrDefault(a => a.Contact.GroupId == pGroupId);
|
var contact = _ContactList.FirstOrDefault(a => a.Contact.GroupId == pGroupId);
|
||||||
|
|
||||||
if(!(contact is null))
|
if(false == contact is null)
|
||||||
{
|
{
|
||||||
notificationIcon = Utils.ImageSourceToIcon(contact.Contact.Image);
|
notificationIcon = Utils.ImageSourceToIcon(contact.Contact.Image);
|
||||||
}
|
}
|
||||||
@@ -396,7 +396,7 @@ namespace ChatController
|
|||||||
|
|
||||||
_ScrollPrueferAktivieren = false;
|
_ScrollPrueferAktivieren = false;
|
||||||
|
|
||||||
if(contact?.HasUnreadMessages ?? false)
|
if((bool) contact?.HasUnreadMessages)
|
||||||
{
|
{
|
||||||
contact.HasUnreadMessages = false;
|
contact.HasUnreadMessages = false;
|
||||||
|
|
||||||
@@ -404,22 +404,20 @@ namespace ChatController
|
|||||||
OnPropertyChanged(nameof(ContactList));
|
OnPropertyChanged(nameof(ContactList));
|
||||||
}
|
}
|
||||||
|
|
||||||
var currentContact = contact;
|
|
||||||
|
|
||||||
contact.IsNewMessage = false;
|
contact.IsNewMessage = false;
|
||||||
|
|
||||||
var shouldChangeIcon = _ContactList.Any(contactDependencyObject => contactDependencyObject?.Contact?.IsNewMessage ?? false);
|
var shouldChangeIcon = _ContactList.Any(contactDependencyObject => contactDependencyObject?.Contact?.IsNewMessage ?? false);
|
||||||
|
|
||||||
if(shouldChangeIcon && ContainingWindow != null)
|
if(shouldChangeIcon && false == ContainingWindow is null)
|
||||||
{
|
{
|
||||||
ContainingWindow.Icon = Utils.ConvertIconToImageSource(Resource.ownchat_favicon);
|
ContainingWindow.Icon = Utils.ConvertIconToImageSource(Resource.ownchat_favicon);
|
||||||
}
|
}
|
||||||
|
|
||||||
CurrentContact = currentContact;
|
CurrentContact = contact;
|
||||||
|
|
||||||
OnPropertyChanged(nameof(IsSendButtonEnabled));
|
OnPropertyChanged(nameof(IsSendButtonEnabled));
|
||||||
|
|
||||||
if(!(Clientlist is null))
|
if(false == Clientlist is null)
|
||||||
{
|
{
|
||||||
foreach(var obj in Clientlist.Items)
|
foreach(var obj in Clientlist.Items)
|
||||||
{
|
{
|
||||||
@@ -433,7 +431,7 @@ namespace ChatController
|
|||||||
_ChatMessages?.Clear();
|
_ChatMessages?.Clear();
|
||||||
OnPropertyChanged(nameof(_ChatMessages));
|
OnPropertyChanged(nameof(_ChatMessages));
|
||||||
|
|
||||||
Chat?.LoadChatMessagesForContactAsync(currentContact, GetFirstMessage(), chatMessages =>
|
Chat?.LoadChatMessagesForContactAsync(contact, GetFirstMessage(), chatMessages =>
|
||||||
{
|
{
|
||||||
this.Dispatch(() =>
|
this.Dispatch(() =>
|
||||||
{
|
{
|
||||||
@@ -656,7 +654,7 @@ namespace ChatController
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
StartWaitingImmediately("Skaliere Bild ...");
|
StartWaitingImmediately("Skaliere Bild...");
|
||||||
|
|
||||||
var scalingTask = new Task(() =>
|
var scalingTask = new Task(() =>
|
||||||
{
|
{
|
||||||
@@ -745,7 +743,7 @@ namespace ChatController
|
|||||||
{
|
{
|
||||||
_ChatMessageFileWrapper = value;
|
_ChatMessageFileWrapper = value;
|
||||||
|
|
||||||
OnPropertyChanged(nameof(ChatMessageFileWrapper));
|
OnPropertyChanged();
|
||||||
OnPropertyChanged(nameof(IsSendButtonEnabled));
|
OnPropertyChanged(nameof(IsSendButtonEnabled));
|
||||||
OnPropertyChanged(nameof(FilePreviewGridVisibility));
|
OnPropertyChanged(nameof(FilePreviewGridVisibility));
|
||||||
OnPropertyChanged(nameof(ChatListBoxVisibility));
|
OnPropertyChanged(nameof(ChatListBoxVisibility));
|
||||||
@@ -781,23 +779,6 @@ namespace ChatController
|
|||||||
|
|
||||||
private void Chatbox_OnKeyDownHandler(object sender, KeyEventArgs e)
|
private void Chatbox_OnKeyDownHandler(object sender, KeyEventArgs e)
|
||||||
{
|
{
|
||||||
//if (e.Key == Key.Return)
|
|
||||||
//{
|
|
||||||
// if(CurrentContact != null && !string.IsNullOrEmpty(Chatbox.Text))
|
|
||||||
// {
|
|
||||||
// Chat.AddNewMessage(Chatbox.Text, CurrentContact.GroupId);
|
|
||||||
|
|
||||||
// OnPropertyChanged(nameof(CurrentChatMessages));
|
|
||||||
|
|
||||||
// ChatListBox.Items.MoveCurrentToLast();
|
|
||||||
// ChatListBox.ScrollIntoView(ChatListBox.Items.CurrentItem);
|
|
||||||
|
|
||||||
// Chat.SendMessage(Chatbox.Text, CurrentContact.GroupId);
|
|
||||||
|
|
||||||
// Chatbox.Text = string.Empty;
|
|
||||||
// }
|
|
||||||
//}
|
|
||||||
|
|
||||||
OnPropertyChanged(nameof(IsBroadcastButtonEnabled));
|
OnPropertyChanged(nameof(IsBroadcastButtonEnabled));
|
||||||
OnPropertyChanged(nameof(IsSendButtonEnabled));
|
OnPropertyChanged(nameof(IsSendButtonEnabled));
|
||||||
}
|
}
|
||||||
@@ -934,13 +915,12 @@ namespace ChatController
|
|||||||
var userOid = Chat.ChatDaten.LoggedInUser.Response.User.Oid;
|
var userOid = Chat.ChatDaten.LoggedInUser.Response.User.Oid;
|
||||||
|
|
||||||
var senderId = contactDependencyObject.Contact.ReceivedMessage?.UserId;
|
var senderId = contactDependencyObject.Contact.ReceivedMessage?.UserId;
|
||||||
var receiverId = userOid;
|
|
||||||
var receiverGroupId = newContact.GroupId;
|
var receiverGroupId = newContact.GroupId;
|
||||||
var selectedGroupId = selectedContact?.GroupId;
|
var selectedGroupId = selectedContact?.GroupId;
|
||||||
|
|
||||||
if(senderId != receiverId && (_IsInBackground || receiverGroupId != selectedGroupId))
|
if(senderId != userOid && (_IsInBackground || receiverGroupId != selectedGroupId))
|
||||||
{
|
{
|
||||||
if(!(ContainingWindow is null))
|
if(false == ContainingWindow is null)
|
||||||
{
|
{
|
||||||
ContainingWindow.Icon = Utils.ConvertIconToImageSource(Resource.oC_favico_NewMessage);
|
ContainingWindow.Icon = Utils.ConvertIconToImageSource(Resource.oC_favico_NewMessage);
|
||||||
}
|
}
|
||||||
@@ -949,7 +929,7 @@ namespace ChatController
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Wenn der momentan ausgewählte Kontakt der aktuelle Kontakt in der Schleife ist, werden die Nachrichten nicht als ungelesen angezeigt, sonst schon.
|
// Wenn der momentan ausgewählte Kontakt der aktuelle Kontakt in der Schleife ist, werden die Nachrichten nicht als ungelesen angezeigt, sonst schon.
|
||||||
if(!(CurrentContact is null) && newContact.GroupId == CurrentContact.GroupId)
|
if(false == CurrentContact is null && newContact.GroupId == CurrentContact.GroupId)
|
||||||
{
|
{
|
||||||
contactDependencyObject.Contact.HasUnreadMessages = false;
|
contactDependencyObject.Contact.HasUnreadMessages = false;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -13,6 +13,7 @@ using System.Net.Http;
|
|||||||
using System.Runtime.CompilerServices;
|
using System.Runtime.CompilerServices;
|
||||||
using System.Threading;
|
using System.Threading;
|
||||||
using System.Threading.Tasks;
|
using System.Threading.Tasks;
|
||||||
|
using System.Web.UI.WebControls;
|
||||||
using System.Windows;
|
using System.Windows;
|
||||||
using System.Windows.Controls;
|
using System.Windows.Controls;
|
||||||
using System.Windows.Data;
|
using System.Windows.Data;
|
||||||
@@ -88,7 +89,7 @@ namespace ChatController.HauptKlassen
|
|||||||
// Führt zu doppelter neuester Nachricht, wenn man vorher eine verschickt hat!
|
// Führt zu doppelter neuester Nachricht, wenn man vorher eine verschickt hat!
|
||||||
public void LoadChatMessagesForContactAsync(Contact contact, ChatMessage previousMessage, Action<List<ChatMessage>> callback)
|
public void LoadChatMessagesForContactAsync(Contact contact, ChatMessage previousMessage, Action<List<ChatMessage>> callback)
|
||||||
{
|
{
|
||||||
if(!(contact is null))
|
if(false == contact is null)
|
||||||
{
|
{
|
||||||
LoadMessagesFromServerAsync(contact.GroupId, delegate
|
LoadMessagesFromServerAsync(contact.GroupId, delegate
|
||||||
{
|
{
|
||||||
@@ -946,14 +947,14 @@ namespace ChatController.HauptKlassen
|
|||||||
var clientZone = TimeZoneInfo.Local;
|
var clientZone = TimeZoneInfo.Local;
|
||||||
var formattedTime = TimeZoneInfo.ConvertTimeFromUtc(time, clientZone);
|
var formattedTime = TimeZoneInfo.ConvertTimeFromUtc(time, clientZone);
|
||||||
|
|
||||||
var isLoggedInUsersMessage = !(ChatDaten.Userid is null) && message.UserId == ChatDaten.Userid.Value;
|
var isLoggedInUsersMessage = false == ChatDaten.Userid is null && message.UserId == ChatDaten.Userid.Value;
|
||||||
var messageText = message.Text ?? (string.IsNullOrEmpty(message.File) ? string.Empty : message.OriginalFilename);
|
var messageText = message.Text ?? (string.IsNullOrEmpty(message.FileProtected) ? string.Empty : message.OriginalFilename);
|
||||||
|
|
||||||
if(!string.IsNullOrEmpty(message.File))
|
if(false == string.IsNullOrEmpty(message.FileProtected))
|
||||||
{
|
{
|
||||||
var message2Add = Constants.ImageFileExtensions.Contains(Path.GetExtension(message.File).ToUpperInvariant()) ? //SmallerImage ist null
|
var message2Add = Constants.ImageFileExtensions.Contains(Path.GetExtension(message.FileProtected).ToUpperInvariant()) ? //SmallerImage ist null
|
||||||
new ChatMessage(message.GroupId, message.Id, message.UserName, messageText, formattedTime, isLoggedInUsersMessage, message.FileSize, message.SmallerImage, message.File, message.OriginalFilename, null, null, ChatMessageType.Image, message.UserId) :
|
new ChatMessage(message.GroupId, message.Id, message.UserName, messageText, formattedTime, isLoggedInUsersMessage, message.FileSize, message.SmallerImage, message.FileProtected, message.OriginalFilename, null, null, ChatMessageType.Image, message.UserId) :
|
||||||
new ChatMessage(message.GroupId, message.Id, message.UserName, messageText, formattedTime, isLoggedInUsersMessage, 0, message.File, null, null, message.SmallerImage, null, ChatMessageType.Document, message.UserId);
|
new ChatMessage(message.GroupId, message.Id, message.UserName, messageText, formattedTime, isLoggedInUsersMessage, 0, message.FileProtected, null, null, message.SmallerImage, null, ChatMessageType.Document, message.UserId);
|
||||||
|
|
||||||
result.AddIfNotIn(message2Add);
|
result.AddIfNotIn(message2Add);
|
||||||
}
|
}
|
||||||
@@ -975,9 +976,7 @@ namespace ChatController.HauptKlassen
|
|||||||
chatMessages = new List<ChatMessage>();
|
chatMessages = new List<ChatMessage>();
|
||||||
}
|
}
|
||||||
|
|
||||||
var test = chatMessages.Any(a => a is null);
|
var messagesWithoutSeparators = chatMessages.Where(message => message != null && false == message.IsSeparator).OrderBy(message => message.SendTime).ToList();
|
||||||
|
|
||||||
var messagesWithoutSeparators = chatMessages.Where(message => !message.IsSeparator).OrderBy(message => message.SendTime).ToList();
|
|
||||||
|
|
||||||
var separators = new List<ChatMessage>();
|
var separators = new List<ChatMessage>();
|
||||||
|
|
||||||
@@ -985,7 +984,7 @@ namespace ChatController.HauptKlassen
|
|||||||
|
|
||||||
foreach(var message in messagesWithoutSeparators.OrderBy(message => message.SendTime))
|
foreach(var message in messagesWithoutSeparators.OrderBy(message => message.SendTime))
|
||||||
{
|
{
|
||||||
if(!message.Equals(previousMessage) && !(previousMessage is null))
|
if(false == message.Equals(previousMessage) && false == previousMessage is null)
|
||||||
{
|
{
|
||||||
if(message.SendTime.Date != previousMessage.SendTime.Date)
|
if(message.SendTime.Date != previousMessage.SendTime.Date)
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -3,10 +3,6 @@ using System.Collections.Generic;
|
|||||||
using System.Diagnostics;
|
using System.Diagnostics;
|
||||||
using System.Linq;
|
using System.Linq;
|
||||||
using System.Net;
|
using System.Net;
|
||||||
using System.Net.Http;
|
|
||||||
using System.Net.Security;
|
|
||||||
using System.Security.Cryptography.X509Certificates;
|
|
||||||
using System.Threading.Tasks;
|
|
||||||
using System.Web;
|
using System.Web;
|
||||||
using System.Windows;
|
using System.Windows;
|
||||||
using ChatController.Core;
|
using ChatController.Core;
|
||||||
|
|||||||
@@ -211,7 +211,7 @@ namespace ChatController
|
|||||||
}
|
}
|
||||||
|
|
||||||
var debugFile = @"C:\Users\Lyndon\Documents\ownchat-desktop-debug-info.txt";
|
var debugFile = @"C:\Users\Lyndon\Documents\ownchat-desktop-debug-info.txt";
|
||||||
if (File.Exists(debugFile))
|
if(File.Exists(debugFile))
|
||||||
{
|
{
|
||||||
using(var streamReader2 = new StreamReader(debugFile, true))
|
using(var streamReader2 = new StreamReader(debugFile, true))
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -1,5 +1,4 @@
|
|||||||
using System;
|
using Newtonsoft.Json;
|
||||||
using Newtonsoft.Json;
|
|
||||||
|
|
||||||
namespace ChatController.LoginKlassen
|
namespace ChatController.LoginKlassen
|
||||||
{
|
{
|
||||||
@@ -50,6 +49,9 @@ namespace ChatController.LoginKlassen
|
|||||||
[JsonProperty("file")]
|
[JsonProperty("file")]
|
||||||
public string File { get; set; }
|
public string File { get; set; }
|
||||||
|
|
||||||
|
[JsonProperty("file_protected")]
|
||||||
|
public string FileProtected { get; set; }
|
||||||
|
|
||||||
[JsonProperty("original_filename")]
|
[JsonProperty("original_filename")]
|
||||||
public string OriginalFilename { get; set; }
|
public string OriginalFilename { get; set; }
|
||||||
|
|
||||||
|
|||||||
@@ -5,7 +5,6 @@ using System.Runtime.CompilerServices;
|
|||||||
using System.Windows.Media;
|
using System.Windows.Media;
|
||||||
using System.Windows.Media.Imaging;
|
using System.Windows.Media.Imaging;
|
||||||
using ChatController.Annotations;
|
using ChatController.Annotations;
|
||||||
using ChatController.Core;
|
|
||||||
|
|
||||||
namespace ChatController.Utilities
|
namespace ChatController.Utilities
|
||||||
{
|
{
|
||||||
@@ -20,7 +19,7 @@ namespace ChatController.Utilities
|
|||||||
set
|
set
|
||||||
{
|
{
|
||||||
_OriginalFilePath = value;
|
_OriginalFilePath = value;
|
||||||
OnPropertyChanged(nameof(OriginalFilePath));
|
OnPropertyChanged();
|
||||||
OnPropertyChanged(nameof(FileName));
|
OnPropertyChanged(nameof(FileName));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -32,7 +31,7 @@ namespace ChatController.Utilities
|
|||||||
set
|
set
|
||||||
{
|
{
|
||||||
_ScaledFilePath = value;
|
_ScaledFilePath = value;
|
||||||
OnPropertyChanged(nameof(ScaledFilePath));
|
OnPropertyChanged();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -44,7 +43,7 @@ namespace ChatController.Utilities
|
|||||||
private set
|
private set
|
||||||
{
|
{
|
||||||
_ChatMessageImageSource = value;
|
_ChatMessageImageSource = value;
|
||||||
OnPropertyChanged(nameof(ChatMessageImageSource));
|
OnPropertyChanged();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -55,7 +54,7 @@ namespace ChatController.Utilities
|
|||||||
|
|
||||||
var uri = new Uri(scaledFilePath);
|
var uri = new Uri(scaledFilePath);
|
||||||
|
|
||||||
if (Constants.ImageFileExtensions.Contains(Path.GetExtension(scaledFilePath).ToUpperInvariant()) && uri.IsFile)
|
if(Constants.ImageFileExtensions.Contains(Path.GetExtension(scaledFilePath).ToUpperInvariant()) && uri.IsFile)
|
||||||
{
|
{
|
||||||
var bitmap = new BitmapImage(uri);
|
var bitmap = new BitmapImage(uri);
|
||||||
bitmap.Freeze();
|
bitmap.Freeze();
|
||||||
|
|||||||
@@ -36,6 +36,8 @@ namespace ChatController.Utilities
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private static readonly object _Lock = new object();
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Lädt ein Bild aus einer Nachricht herunter.
|
/// Lädt ein Bild aus einer Nachricht herunter.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@@ -80,7 +82,7 @@ namespace ChatController.Utilities
|
|||||||
request.AddHeader(Constants.Token, AuthToken);
|
request.AddHeader(Constants.Token, AuthToken);
|
||||||
request.AddHeader(Constants.CustomerId, Tenant);
|
request.AddHeader(Constants.CustomerId, Tenant);
|
||||||
|
|
||||||
client.ExecuteAsync(request, null);
|
client.ExecuteAsync(request, (a,b)=>{});
|
||||||
}
|
}
|
||||||
|
|
||||||
private static Rotation GetRotationFromExifTag(int value)
|
private static Rotation GetRotationFromExifTag(int value)
|
||||||
@@ -110,7 +112,7 @@ namespace ChatController.Utilities
|
|||||||
|
|
||||||
var cachedImage = cache.GetImageSourceFromCache(key, uri, cacheCategory);
|
var cachedImage = cache.GetImageSourceFromCache(key, uri, cacheCategory);
|
||||||
|
|
||||||
if(!(cachedImage is null))
|
if(false == cachedImage is null)
|
||||||
{
|
{
|
||||||
callback?.Invoke(cachedImage);
|
callback?.Invoke(cachedImage);
|
||||||
return;
|
return;
|
||||||
|
|||||||
Reference in New Issue
Block a user