Commit 55227173 authored by Margaux Clerc's avatar Margaux Clerc
Browse files

Clean & fix

parent 5c65112e
......@@ -15,7 +15,7 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
*/
using System;
using System.Diagnostics;
using Windows.UI.Xaml;
using Windows.UI.Xaml.Controls;
namespace Linphone.Controls
......@@ -23,7 +23,6 @@ namespace Linphone.Controls
public partial class AddressBox : UserControl
{
public String Text
{
get { return address.Text; }
......@@ -45,15 +44,16 @@ namespace Linphone.Controls
this.DataContext = this;
}
private void backspace_Hold_1(object sender, Windows.UI.Xaml.RoutedEventArgs e)
private void backspace_Hold_1(object sender, RoutedEventArgs e)
{
address.Text = "";
}
private void backspace_Click_1(object sender, Windows.UI.Xaml.RoutedEventArgs e)
private void backspace_Click_1(object sender, RoutedEventArgs e)
{
if (address.Text.Length > 0)
address.Text = address.Text.Substring(0, address.Text.Length - 1);
}
private void address_TextChanged(object sender, TextChangedEventArgs e)
......
......@@ -6,215 +6,12 @@
xmlns:controls="using:Linphone.Controls"
mc:Ignorable="d">
<UserControl.Resources>
<Style x:Key="AccentLongButtonStyle"
TargetType="Button">
<Setter Property="Margin" Value="0" />
<Setter Property="Padding" Value="0" />
<Setter Property="BorderThickness" Value="0" />
<Setter Property="HorizontalContentAlignment" Value="Stretch" />
<Setter Property="VerticalContentAlignment" Value="Center" />
<Setter Property="VerticalAlignment" Value="Stretch" />
<Setter Property="HorizontalAlignment" Value="Stretch" />
<Setter Property="Foreground" Value="{ThemeResource SystemChromeWhiteColor}" />
<Setter Property="Background" Value="{ThemeResource SystemControlBackgroundAccentBrush}" />
<Setter Property="MinWidth" Value="0" />
<Setter Property="Height" Value="72" />
<Setter Property="IsTextScaleFactorEnabled" Value="False" />
</Style>
<Style x:Key="ToggleButtonStyle"
TargetType="ToggleButton">
<Setter Property="Margin" Value="0" />
<Setter Property="Padding" Value="0" />
<Setter Property="BorderThickness" Value="0" />
<Setter Property="HorizontalContentAlignment" Value="Stretch" />
<Setter Property="VerticalContentAlignment" Value="Center" />
<Setter Property="VerticalAlignment" Value="Stretch" />
<Setter Property="HorizontalAlignment" Value="Stretch" />
<Setter Property="Foreground" Value="Black" />
<Setter Property="Background" Value="Transparent" />
<Setter Property="MinWidth" Value="0" />
<Setter Property="Height" Value="72" />
<Setter Property="IsTextScaleFactorEnabled" Value="False" />
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="ToggleButton">
<Grid x:Name="RootGrid" Background="{TemplateBinding Background}">
<VisualStateManager.VisualStateGroups>
<VisualStateGroup x:Name="CommonStates">
<VisualState x:Name="Normal">
<Storyboard>
<PointerUpThemeAnimation Storyboard.TargetName="RootGrid" />
</Storyboard>
</VisualState>
<VisualState x:Name="Pressed">
<Storyboard>
<ObjectAnimationUsingKeyFrames Storyboard.TargetName="RootGrid"
Storyboard.TargetProperty="Background">
<DiscreteObjectKeyFrame KeyTime="0" Value="{ThemeResource SystemControlBackgroundBaseMediumLowBrush}" />
</ObjectAnimationUsingKeyFrames>
<ObjectAnimationUsingKeyFrames Storyboard.TargetName="ContentPresenter"
Storyboard.TargetProperty="BorderBrush">
<DiscreteObjectKeyFrame KeyTime="0" Value="{ThemeResource SystemControlHighlightTransparentBrush}" />
</ObjectAnimationUsingKeyFrames>
<ObjectAnimationUsingKeyFrames Storyboard.TargetName="ContentPresenter"
Storyboard.TargetProperty="Foreground">
<DiscreteObjectKeyFrame KeyTime="0" Value="{ThemeResource SystemControlHighlightBaseHighBrush}" />
</ObjectAnimationUsingKeyFrames>
<PointerDownThemeAnimation Storyboard.TargetName="RootGrid" />
</Storyboard>
</VisualState>
<VisualState x:Name="Checked">
<Storyboard>
<ObjectAnimationUsingKeyFrames Storyboard.TargetName="RootGrid"
Storyboard.TargetProperty="Opacity">
<DiscreteObjectKeyFrame KeyTime="0" Value="0.7" />
</ObjectAnimationUsingKeyFrames>
<ObjectAnimationUsingKeyFrames Storyboard.TargetName="RootGrid"
Storyboard.TargetProperty="Background">
<DiscreteObjectKeyFrame KeyTime="0" Value="{ThemeResource SystemControlHighlightAccentBrush}" />
</ObjectAnimationUsingKeyFrames>
<ObjectAnimationUsingKeyFrames Storyboard.TargetName="ContentPresenter"
Storyboard.TargetProperty="Foreground">
<DiscreteObjectKeyFrame KeyTime="0" Value="{ThemeResource SystemControlHighlightAltChromeWhiteBrush}" />
</ObjectAnimationUsingKeyFrames>
<ObjectAnimationUsingKeyFrames Storyboard.TargetName="ContentPresenter"
Storyboard.TargetProperty="BorderBrush">
<DiscreteObjectKeyFrame KeyTime="0" Value="{ThemeResource SystemControlHighlightAltTransparentBrush}" />
</ObjectAnimationUsingKeyFrames>
<PointerUpThemeAnimation Storyboard.TargetName="RootGrid" />
</Storyboard>
</VisualState>
<VisualState x:Name="CheckedPointerOver">
<Storyboard>
<ObjectAnimationUsingKeyFrames Storyboard.TargetName="RootGrid"
Storyboard.TargetProperty="Background">
<DiscreteObjectKeyFrame KeyTime="0" Value="{ThemeResource SystemControlHighlightAccentBrush}" />
</ObjectAnimationUsingKeyFrames>
<ObjectAnimationUsingKeyFrames Storyboard.TargetName="ContentPresenter"
Storyboard.TargetProperty="BorderBrush">
<DiscreteObjectKeyFrame KeyTime="0" Value="{ThemeResource SystemControlHighlightBaseMediumLowBrush}" />
</ObjectAnimationUsingKeyFrames>
<ObjectAnimationUsingKeyFrames Storyboard.TargetName="ContentPresenter"
Storyboard.TargetProperty="Foreground">
<DiscreteObjectKeyFrame KeyTime="0" Value="{ThemeResource SystemControlHighlightAltChromeWhiteBrush}" />
</ObjectAnimationUsingKeyFrames>
<PointerUpThemeAnimation Storyboard.TargetName="RootGrid" />
</Storyboard>
</VisualState>
<VisualState x:Name="CheckedPressed">
<Storyboard>
<ObjectAnimationUsingKeyFrames Storyboard.TargetName="RootGrid"
Storyboard.TargetProperty="Background">
<DiscreteObjectKeyFrame KeyTime="0" Value="{ThemeResource SystemControlHighlightBaseMediumLowBrush}" />
</ObjectAnimationUsingKeyFrames>
<ObjectAnimationUsingKeyFrames Storyboard.TargetName="ContentPresenter"
Storyboard.TargetProperty="BorderBrush">
<DiscreteObjectKeyFrame KeyTime="0" Value="Transparent" />
</ObjectAnimationUsingKeyFrames>
<PointerDownThemeAnimation Storyboard.TargetName="RootGrid" />
</Storyboard>
</VisualState>
<VisualState x:Name="Disabled">
<Storyboard>
<ObjectAnimationUsingKeyFrames Storyboard.TargetName="RootGrid"
Storyboard.TargetProperty="Background">
<DiscreteObjectKeyFrame KeyTime="0" Value="Transparent" />
</ObjectAnimationUsingKeyFrames>
<ObjectAnimationUsingKeyFrames Storyboard.TargetName="ContentPresenter"
Storyboard.TargetProperty="Foreground">
<DiscreteObjectKeyFrame KeyTime="0" Value="{ThemeResource SystemControlDisabledBaseMediumLowBrush}" />
</ObjectAnimationUsingKeyFrames>
<ObjectAnimationUsingKeyFrames Storyboard.TargetName="ContentPresenter"
Storyboard.TargetProperty="BorderBrush">
<DiscreteObjectKeyFrame KeyTime="0" Value="{ThemeResource SystemControlDisabledTransparentBrush}" />
</ObjectAnimationUsingKeyFrames>
</Storyboard>
</VisualState>
</VisualStateGroup>
</VisualStateManager.VisualStateGroups>
<ContentPresenter x:Name="ContentPresenter"
BorderBrush="{TemplateBinding BorderBrush}"
BorderThickness="{TemplateBinding BorderThickness}"
Content="{TemplateBinding Content}"
ContentTransitions="{TemplateBinding ContentTransitions}"
ContentTemplate="{TemplateBinding ContentTemplate}"
Padding="{TemplateBinding Padding}"
HorizontalContentAlignment="{TemplateBinding HorizontalContentAlignment}"
VerticalContentAlignment="{TemplateBinding VerticalContentAlignment}"
AutomationProperties.AccessibilityView="Raw"/>
</Grid>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<Style x:Key="ButtonStyle"
TargetType="Button">
<Setter Property="Margin" Value="0" />
<Setter Property="Padding" Value="0" />
<Setter Property="BorderThickness" Value="0" />
<Setter Property="HorizontalContentAlignment" Value="Stretch" />
<Setter Property="VerticalContentAlignment" Value="Center" />
<Setter Property="VerticalAlignment" Value="Stretch" />
<Setter Property="HorizontalAlignment" Value="Stretch" />
<Setter Property="Foreground" Value="Black" />
<Setter Property="Background" Value="Transparent" />
<Setter Property="MinWidth" Value="0" />
<Setter Property="Height" Value="72" />
<Setter Property="IsTextScaleFactorEnabled" Value="False" />
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="Button">
<Grid x:Name="RootGrid" Background="{TemplateBinding Background}">
<VisualStateManager.VisualStateGroups>
<VisualStateGroup x:Name="CommonStates">
<VisualState x:Name="Disabled">
<Storyboard>
<ObjectAnimationUsingKeyFrames Storyboard.TargetName="RootGrid"
Storyboard.TargetProperty="Background">
<DiscreteObjectKeyFrame KeyTime="0" Value="Transparent" />
</ObjectAnimationUsingKeyFrames>
<ObjectAnimationUsingKeyFrames Storyboard.TargetName="ContentPresenter"
Storyboard.TargetProperty="Foreground">
<DiscreteObjectKeyFrame KeyTime="0" Value="{ThemeResource SystemControlDisabledBaseMediumLowBrush}" />
</ObjectAnimationUsingKeyFrames>
<ObjectAnimationUsingKeyFrames Storyboard.TargetName="ContentPresenter"
Storyboard.TargetProperty="BorderBrush">
<DiscreteObjectKeyFrame KeyTime="0" Value="{ThemeResource SystemControlDisabledTransparentBrush}" />
</ObjectAnimationUsingKeyFrames>
</Storyboard>
</VisualState>
</VisualStateGroup>
</VisualStateManager.VisualStateGroups>
<ContentPresenter x:Name="ContentPresenter"
BorderBrush="{TemplateBinding BorderBrush}"
BorderThickness="{TemplateBinding BorderThickness}"
Content="{TemplateBinding Content}"
ContentTransitions="{TemplateBinding ContentTransitions}"
ContentTemplate="{TemplateBinding ContentTemplate}"
Padding="{TemplateBinding Padding}"
HorizontalContentAlignment="{TemplateBinding HorizontalContentAlignment}"
VerticalContentAlignment="{TemplateBinding VerticalContentAlignment}"
AutomationProperties.AccessibilityView="Raw"/>
</Grid>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<SolidColorBrush x:Key="SystemControlDisabledAccentBrush" Color="Transparent" />
</UserControl.Resources>
<Grid x:Name="LayoutRoot" Background="{ThemeResource ApplicationPageBackgroundThemeBrush}">
<Grid.RowDefinitions>
<RowDefinition Height="*"></RowDefinition>
<RowDefinition Height="Auto"></RowDefinition>
<RowDefinition Height="72"></RowDefinition>
<RowDefinition Height="72"></RowDefinition>
<RowDefinition Height="72"></RowDefinition>
<RowDefinition Height="Auto"></RowDefinition>
<RowDefinition Height="Auto"></RowDefinition>
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
......@@ -225,7 +22,7 @@
<ToggleButton
x:Name="video"
Grid.Row="2"
Grid.Row="1"
Grid.Column="0"
Style="{StaticResource ToggleButtonStyle}"
BorderThickness="0"
......@@ -255,13 +52,12 @@
<Button
x:Name="camera"
Grid.Row="2"
Grid.Row="1"
Grid.Column="1"
BorderThickness="0"
Style="{StaticResource ButtonStyle}"
Style="{StaticResource CallButton}"
Click="camera_Click_1"
IsEnabled="True"
Visibility="{Binding CameraButtonVisibility}">
IsEnabled="{Binding CameraButtonEnabled}">
<Button.ContentTemplate>
<DataTemplate>
<Grid>
......@@ -286,7 +82,7 @@
<ToggleButton
x:Name="stats"
Grid.Row="3"
Grid.Row="2"
Grid.Column="2"
Style="{StaticResource ToggleButtonStyle}"
BorderThickness="0"
......@@ -346,7 +142,7 @@
<ToggleButton
x:Name="pause"
Grid.Row="3"
Grid.Row="2"
Grid.Column="0"
BorderThickness="0"
Style="{StaticResource ToggleButtonStyle}"
......@@ -376,7 +172,7 @@
<ToggleButton
x:Name="microphone"
Grid.Row="3"
Grid.Row="2"
Grid.Column="1"
BorderThickness="0"
Style="{StaticResource ToggleButtonStyle}"
......@@ -405,7 +201,7 @@
<ToggleButton
x:Name="speaker"
Grid.Row="2"
Grid.Row="1"
Grid.Column="3"
BorderThickness="0"
Style="{StaticResource ToggleButtonStyle}"
......@@ -434,7 +230,7 @@
<Button
x:Name="hangUp"
Grid.Row="4"
Grid.Row="3"
Style="{StaticResource AccentLongButtonStyle}"
Grid.Column="0"
Grid.ColumnSpan="2"
......@@ -465,7 +261,7 @@
<ToggleButton
x:Name="dialpad"
Grid.Row="4"
Grid.Row="3"
Grid.Column="2"
Style="{StaticResource ToggleButtonStyle}"
BorderThickness="0"
......@@ -493,7 +289,7 @@
</ToggleButton>
<!-- Statistics panel -->
<Grid x:Name="statsPanel" Grid.Row="0" Grid.RowSpan="3" Grid.ColumnSpan="3" Visibility="Collapsed" Background="{ThemeResource ApplicationPageBackgroundThemeBrush}">
<Grid x:Name="statsPanel" Grid.Row="0" Grid.RowSpan="2" Grid.ColumnSpan="3" Visibility="Collapsed" Background="{ThemeResource ApplicationPageBackgroundThemeBrush}">
<Grid.RowDefinitions>
<RowDefinition Height="Auto"></RowDefinition>
<RowDefinition Height="Auto"></RowDefinition>
......
......@@ -14,32 +14,15 @@ along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
*/
using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Windows;
using Linphone.Model;
using Windows.UI.Xaml.Controls;
using Windows.UI.Xaml;
using Windows.UI.Xaml.Media.Imaging;
namespace Linphone.Controls
{
public partial class CallControlsP : UserControl
{
private const string speakerOn = "/Assets/Incall_Icons/speaker_on.png";
private const string speakerOff = "/Assets/Incall_Icons/speaker_off.png";
private const string bluetoothOn = "/Assets/Incall_Icons/bluetooth_on.png";
private const string bluetoothOff = "/Assets/Incall_Icons/bluetooth_off.png";
private const string videoOn = "/Assets/Incall_Icons/video_on.png";
private const string videoOff = "/Assets/Incall_Icons/video_off.png";
private const string pauseOn = "/Assets/Incall_Icons/pause.png";
private const string pauseOff = "/Assets/Incall_Icons/play.png";
private const string micOn = "/Assets/Incall_Icons/micro_on.png";
private const string micOff = "/Assets/Incall_Icons/micro_off.png";
public delegate void HangUpClickEventHandler(object sender);
public event HangUpClickEventHandler HangUpClick;
......@@ -67,26 +50,33 @@ namespace Linphone.Controls
public delegate void BluetoothClickEventHandler(object sender, bool isBluetoothOn);
public event DialpadClickEventHandler BluetoothClick;
/// <summary>
/// Public constructor
/// </summary>
public CallControlsP()
{
InitializeComponent();
microphone.IsChecked = LinphoneManager.Instance.Core.IsMicEnabled;
video.IsEnabled = LinphoneManager.Instance.Core.IsVideoSupported;
camera.IsEnabled = LinphoneManager.Instance.Core.IsVideoSupported && LinphoneManager.Instance.NumberOfCameras > 1;
}
#region Button enabled/disabled
public void enabledDialpad(bool isDialpadShown)
{
dialpad.Visibility = isDialpadShown ? Visibility.Visible : Visibility.Collapsed;
}
public void enabledVideo(bool isDialpadShown)
public void enabledVideo(bool isVideoEnabled)
{
video.IsEnabled = isVideoEnabled;
}
public void enabledPause(bool isPauseEnabled)
{
video.IsEnabled = isDialpadShown;
pause.IsEnabled = isPauseEnabled;
}
#endregion
#region Click Event
private void hangUp_Click(object sender, RoutedEventArgs e)
{
HangUpClick(this);
......@@ -95,42 +85,32 @@ namespace Linphone.Controls
private void bluetooth_Click_1(object sender, RoutedEventArgs e)
{
bool isBluetoothToggled = (bool)bluetooth.IsChecked;
//bluetoothImg.Source = new BitmapImage(new Uri(isBluetoothToggled ? bluetoothOn : bluetoothOff, UriKind.RelativeOrAbsolute));
BluetoothClick(this, isBluetoothToggled);
}
private void speaker_Click_1(object sender, RoutedEventArgs e)
{
bool isSpeakerToggled = (bool)speaker.IsChecked;
if (SpeakerClick(this, isSpeakerToggled)) {
//speakerImg.Source = new BitmapImage(new Uri((bool)speaker.IsChecked ? speakerOn : speakerOff, UriKind.RelativeOrAbsolute));
}
SpeakerClick(this, isSpeakerToggled);
}
private void microphone_Click_1(object sender, RoutedEventArgs e)
{
bool isMicToggled = (bool)microphone.IsChecked;
//microImg.Source = new BitmapImage(new Uri(isMicToggled ? micOff : micOn, UriKind.RelativeOrAbsolute));
MuteClick(this, isMicToggled);
}
public void enabledPause(bool v)
{
pause.IsEnabled = true;
}
private void stats_Click_1(object sender, RoutedEventArgs e)
{
bool areStatsVisible = (bool)stats.IsChecked;
stats.IsChecked = areStatsVisible;
statsPanel.Visibility = areStatsVisible ? Visibility.Visible : Visibility.Collapsed;
StatsClick(this, areStatsVisible);
StatsClick(this, areStatsVisible);
}
private void video_Click_1(object sender, RoutedEventArgs e)
{
bool isVideoToggled = (bool)video.IsChecked;
// videoImg.Source = new BitmapImage(new Uri((bool)video.IsChecked ? videoOn : videoOff, UriKind.RelativeOrAbsolute));
video.IsChecked = isVideoToggled;
VideoClick(this, isVideoToggled);
}
......@@ -145,14 +125,14 @@ namespace Linphone.Controls
bool isDialpadChecked = (bool)dialpad.IsChecked;
dialpad.IsChecked = isDialpadChecked;
numpad.Visibility = isDialpadChecked ? Visibility.Visible : Visibility.Collapsed;
//DialpadClick(this, isDialpadChecked);
DialpadClick(this, isDialpadChecked);
}
private void pause_Click_1(object sender, RoutedEventArgs e)
{
bool isPauseToggled = (bool)pause.IsChecked;
//pauseImg.Source = new BitmapImage(new Uri(isPauseToggled ? pauseOn : pauseOff, UriKind.RelativeOrAbsolute));
PauseClick(this, isPauseToggled);
}
#endregion
}
}
......@@ -15,11 +15,8 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
*/
using BelledonneCommunications.Linphone.Native;
using Linphone.Model;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Windows;
using Windows.UI.Xaml.Controls;
using Windows.UI.Xaml.Documents;
......@@ -54,7 +51,7 @@ namespace Linphone.Controls
{
get
{
return FormatText();
return Utils.FormatText(ChatMessage.Text);
}
}
......@@ -65,8 +62,7 @@ namespace Linphone.Controls
{
get
{
DateTime date = new DateTime(ChatMessage.Time * TimeSpan.TicksPerSecond, DateTimeKind.Utc).AddYears(1969).ToLocalTime();
return FormatDate(date);
return Utils.FormatDate(ChatMessage.Time);
}
}
......@@ -78,50 +74,5 @@ namespace Linphone.Controls
this.InitializeComponent();
ChatMessage = message;
}
private Paragraph FormatText()
{
Paragraph paragraph = new Paragraph();
if (ChatMessage != null)
{
string text = ChatMessage.Text;
if (text.Contains("http://") || text.Contains("https://"))
{
string[] split = text.Split(new string[] { " " }, StringSplitOptions.RemoveEmptyEntries);
foreach (string word in split)
{
if (word.StartsWith("http://") || word.StartsWith("https://"))
{
Hyperlink link = new Hyperlink();
link.NavigateUri = new Uri(word);
//link.Inlines.Add(word);
//link.TargetName = "_blank";
paragraph.Inlines.Add(link);
}
else
{
//paragraph.Inlines.Add(word);
}
//paragraph.Inlines.Add();
}
}
else
{
// paragraph.Inlines.Add(text);
}
}
return paragraph;
}
private string FormatDate(DateTime date)
{
DateTime now = DateTime.Now;
if (now.Year == date.Year && now.Month == date.Month && now.Day == date.Day)
return String.Format("{0:HH:mm}", date);
else if (now.Year == date.Year)
return String.Format("{0:ddd d MMM, HH:mm}", date);
else
return String.Format("{0:ddd d MMM yyyy, HH:mm}", date);
}
}
}
......@@ -6,20 +6,6 @@
xmlns:linphone="using:Linphone.Controls"
mc:Ignorable="d">
<UserControl.Resources>
<Style TargetType="TextBlock" x:Key="TimestampStyle">
<Setter Property="Foreground" Value="White"/>
<Setter Property="FontSize" Value="14"/>
<Setter Property="Opacity" Value="0.5"/>
<Setter Property="Margin" Value="0,0,5,5"/>
</Style>
<Style TargetType="TextBlock" x:Key="MessageStyle">
<Setter Property="Foreground" Value="White"/>
<Setter Property="Margin" Value="5,5,5,3"/>
</Style>
</UserControl.Resources>
<Grid Margin="5,0,100,5">
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
......@@ -41,10 +27,11 @@
Grid.RowSpan="2"
Grid.Row="1"/>
<TextBlock
<RichTextBlock
Grid.Row="1"
x:Name="Message"
TextWrapping="Wrap"
IsTextSelectionEnabled="True"
Style="{StaticResource MessageStyle}"
TextAlignment="Left"/>
......
......@@ -15,31 +15,19 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
*/
using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Windows;
using Linphone.Model;
using Linphone.Views;
using Linphone.Controls;
using BelledonneCommunications.Linphone.Native;
using Windows.UI.Xaml;
using Windows.UI.Xaml.Media.Imaging;
using Windows.UI.Xaml.Controls;
using Windows.UI.Xaml.Media.Imaging;
namespace Linphone.Controls
{
/// <summary>
/// Control to display received chat messages.
/// </summary>
public partial class IncomingChatBubble : UserControl
{
private ChatMessage _message;