diff --git a/UWPX_UI/App.xaml b/UWPX_UI/App.xaml
new file mode 100644
index 000000000..5215a550f
--- /dev/null
+++ b/UWPX_UI/App.xaml
@@ -0,0 +1,76 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/UWPX_UI/App.xaml.cs b/UWPX_UI/App.xaml.cs
new file mode 100644
index 000000000..4334b0f14
--- /dev/null
+++ b/UWPX_UI/App.xaml.cs
@@ -0,0 +1,100 @@
+using System;
+using System.Collections.Generic;
+using System.IO;
+using System.Linq;
+using System.Runtime.InteropServices.WindowsRuntime;
+using Windows.ApplicationModel;
+using Windows.ApplicationModel.Activation;
+using Windows.Foundation;
+using Windows.Foundation.Collections;
+using Windows.UI.Xaml;
+using Windows.UI.Xaml.Controls;
+using Windows.UI.Xaml.Controls.Primitives;
+using Windows.UI.Xaml.Data;
+using Windows.UI.Xaml.Input;
+using Windows.UI.Xaml.Media;
+using Windows.UI.Xaml.Navigation;
+
+namespace UWPX_UI
+{
+ ///
+ /// Provides application-specific behavior to supplement the default Application class.
+ ///
+ sealed partial class App : Application
+ {
+ ///
+ /// Initializes the singleton application object. This is the first line of authored code
+ /// executed, and as such is the logical equivalent of main() or WinMain().
+ ///
+ public App()
+ {
+ this.InitializeComponent();
+ this.Suspending += OnSuspending;
+ }
+
+ ///
+ /// Invoked when the application is launched normally by the end user. Other entry points
+ /// will be used such as when the application is launched to open a specific file.
+ ///
+ /// Details about the launch request and process.
+ protected override void OnLaunched(LaunchActivatedEventArgs e)
+ {
+ Frame rootFrame = Window.Current.Content as Frame;
+
+ // Do not repeat app initialization when the Window already has content,
+ // just ensure that the window is active
+ if (rootFrame == null)
+ {
+ // Create a Frame to act as the navigation context and navigate to the first page
+ rootFrame = new Frame();
+
+ rootFrame.NavigationFailed += OnNavigationFailed;
+
+ if (e.PreviousExecutionState == ApplicationExecutionState.Terminated)
+ {
+ //TODO: Load state from previously suspended application
+ }
+
+ // Place the frame in the current Window
+ Window.Current.Content = rootFrame;
+ }
+
+ if (e.PrelaunchActivated == false)
+ {
+ if (rootFrame.Content == null)
+ {
+ // When the navigation stack isn't restored navigate to the first page,
+ // configuring the new page by passing required information as a navigation
+ // parameter
+ rootFrame.Navigate(typeof(MainPage), e.Arguments);
+ }
+ // Ensure the current window is active
+ Window.Current.Activate();
+ }
+ }
+
+ ///
+ /// Invoked when Navigation to a certain page fails
+ ///
+ /// The Frame which failed navigation
+ /// Details about the navigation failure
+ void OnNavigationFailed(object sender, NavigationFailedEventArgs e)
+ {
+ throw new Exception("Failed to load Page " + e.SourcePageType.FullName);
+ }
+
+ ///
+ /// Invoked when application execution is being suspended. Application state is saved
+ /// without knowing whether the application will be terminated or resumed with the contents
+ /// of memory still intact.
+ ///
+ /// The source of the suspend request.
+ /// Details about the suspend request.
+ private void OnSuspending(object sender, SuspendingEventArgs e)
+ {
+ var deferral = e.SuspendingOperation.GetDeferral();
+ //TODO: Save application state and stop any background activity
+ deferral.Complete();
+ }
+ }
+}
diff --git a/UWPX_UI/Assets/BadgeLogo.scale-100.png b/UWPX_UI/Assets/BadgeLogo.scale-100.png
new file mode 100644
index 000000000..0b7316597
Binary files /dev/null and b/UWPX_UI/Assets/BadgeLogo.scale-100.png differ
diff --git a/UWPX_UI/Assets/BadgeLogo.scale-125.png b/UWPX_UI/Assets/BadgeLogo.scale-125.png
new file mode 100644
index 000000000..6af282cf3
Binary files /dev/null and b/UWPX_UI/Assets/BadgeLogo.scale-125.png differ
diff --git a/UWPX_UI/Assets/BadgeLogo.scale-150.png b/UWPX_UI/Assets/BadgeLogo.scale-150.png
new file mode 100644
index 000000000..fc2df177c
Binary files /dev/null and b/UWPX_UI/Assets/BadgeLogo.scale-150.png differ
diff --git a/UWPX_UI/Assets/BadgeLogo.scale-200.png b/UWPX_UI/Assets/BadgeLogo.scale-200.png
new file mode 100644
index 000000000..ce4479bdc
Binary files /dev/null and b/UWPX_UI/Assets/BadgeLogo.scale-200.png differ
diff --git a/UWPX_UI/Assets/BadgeLogo.scale-400.png b/UWPX_UI/Assets/BadgeLogo.scale-400.png
new file mode 100644
index 000000000..bf675712a
Binary files /dev/null and b/UWPX_UI/Assets/BadgeLogo.scale-400.png differ
diff --git a/UWPX_UI/Assets/LargeTile.scale-100.png b/UWPX_UI/Assets/LargeTile.scale-100.png
new file mode 100644
index 000000000..07dc5ff60
Binary files /dev/null and b/UWPX_UI/Assets/LargeTile.scale-100.png differ
diff --git a/UWPX_UI/Assets/LargeTile.scale-125.png b/UWPX_UI/Assets/LargeTile.scale-125.png
new file mode 100644
index 000000000..030793117
Binary files /dev/null and b/UWPX_UI/Assets/LargeTile.scale-125.png differ
diff --git a/UWPX_UI/Assets/LargeTile.scale-150.png b/UWPX_UI/Assets/LargeTile.scale-150.png
new file mode 100644
index 000000000..026aabaaf
Binary files /dev/null and b/UWPX_UI/Assets/LargeTile.scale-150.png differ
diff --git a/UWPX_UI/Assets/LargeTile.scale-200.png b/UWPX_UI/Assets/LargeTile.scale-200.png
new file mode 100644
index 000000000..73d44bf0e
Binary files /dev/null and b/UWPX_UI/Assets/LargeTile.scale-200.png differ
diff --git a/UWPX_UI/Assets/LargeTile.scale-400.png b/UWPX_UI/Assets/LargeTile.scale-400.png
new file mode 100644
index 000000000..03149879f
Binary files /dev/null and b/UWPX_UI/Assets/LargeTile.scale-400.png differ
diff --git a/UWPX_UI/Assets/SmallTile.scale-100.png b/UWPX_UI/Assets/SmallTile.scale-100.png
new file mode 100644
index 000000000..a7da704bb
Binary files /dev/null and b/UWPX_UI/Assets/SmallTile.scale-100.png differ
diff --git a/UWPX_UI/Assets/SmallTile.scale-125.png b/UWPX_UI/Assets/SmallTile.scale-125.png
new file mode 100644
index 000000000..605d22e2a
Binary files /dev/null and b/UWPX_UI/Assets/SmallTile.scale-125.png differ
diff --git a/UWPX_UI/Assets/SmallTile.scale-150.png b/UWPX_UI/Assets/SmallTile.scale-150.png
new file mode 100644
index 000000000..d12066487
Binary files /dev/null and b/UWPX_UI/Assets/SmallTile.scale-150.png differ
diff --git a/UWPX_UI/Assets/SmallTile.scale-200.png b/UWPX_UI/Assets/SmallTile.scale-200.png
new file mode 100644
index 000000000..cd4f17bc7
Binary files /dev/null and b/UWPX_UI/Assets/SmallTile.scale-200.png differ
diff --git a/UWPX_UI/Assets/SmallTile.scale-400.png b/UWPX_UI/Assets/SmallTile.scale-400.png
new file mode 100644
index 000000000..ae957d5c7
Binary files /dev/null and b/UWPX_UI/Assets/SmallTile.scale-400.png differ
diff --git a/UWPX_UI/Assets/SplashScreen.scale-100.png b/UWPX_UI/Assets/SplashScreen.scale-100.png
new file mode 100644
index 000000000..0dd70c216
Binary files /dev/null and b/UWPX_UI/Assets/SplashScreen.scale-100.png differ
diff --git a/UWPX_UI/Assets/SplashScreen.scale-125.png b/UWPX_UI/Assets/SplashScreen.scale-125.png
new file mode 100644
index 000000000..e5b89a179
Binary files /dev/null and b/UWPX_UI/Assets/SplashScreen.scale-125.png differ
diff --git a/UWPX_UI/Assets/SplashScreen.scale-150.png b/UWPX_UI/Assets/SplashScreen.scale-150.png
new file mode 100644
index 000000000..d4d07c66f
Binary files /dev/null and b/UWPX_UI/Assets/SplashScreen.scale-150.png differ
diff --git a/UWPX_UI/Assets/SplashScreen.scale-200.png b/UWPX_UI/Assets/SplashScreen.scale-200.png
new file mode 100644
index 000000000..6b1178e38
Binary files /dev/null and b/UWPX_UI/Assets/SplashScreen.scale-200.png differ
diff --git a/UWPX_UI/Assets/SplashScreen.scale-400.png b/UWPX_UI/Assets/SplashScreen.scale-400.png
new file mode 100644
index 000000000..8d3808540
Binary files /dev/null and b/UWPX_UI/Assets/SplashScreen.scale-400.png differ
diff --git a/UWPX_UI/Assets/Square150x150Logo.scale-100.png b/UWPX_UI/Assets/Square150x150Logo.scale-100.png
new file mode 100644
index 000000000..4d4f7a6dc
Binary files /dev/null and b/UWPX_UI/Assets/Square150x150Logo.scale-100.png differ
diff --git a/UWPX_UI/Assets/Square150x150Logo.scale-125.png b/UWPX_UI/Assets/Square150x150Logo.scale-125.png
new file mode 100644
index 000000000..24002f6b6
Binary files /dev/null and b/UWPX_UI/Assets/Square150x150Logo.scale-125.png differ
diff --git a/UWPX_UI/Assets/Square150x150Logo.scale-150.png b/UWPX_UI/Assets/Square150x150Logo.scale-150.png
new file mode 100644
index 000000000..627048481
Binary files /dev/null and b/UWPX_UI/Assets/Square150x150Logo.scale-150.png differ
diff --git a/UWPX_UI/Assets/Square150x150Logo.scale-200.png b/UWPX_UI/Assets/Square150x150Logo.scale-200.png
new file mode 100644
index 000000000..82c552a38
Binary files /dev/null and b/UWPX_UI/Assets/Square150x150Logo.scale-200.png differ
diff --git a/UWPX_UI/Assets/Square150x150Logo.scale-400.png b/UWPX_UI/Assets/Square150x150Logo.scale-400.png
new file mode 100644
index 000000000..db8264fb2
Binary files /dev/null and b/UWPX_UI/Assets/Square150x150Logo.scale-400.png differ
diff --git a/UWPX_UI/Assets/Square44x44Logo.altform-unplated_targetsize-16.png b/UWPX_UI/Assets/Square44x44Logo.altform-unplated_targetsize-16.png
new file mode 100644
index 000000000..6c1eb37cc
Binary files /dev/null and b/UWPX_UI/Assets/Square44x44Logo.altform-unplated_targetsize-16.png differ
diff --git a/UWPX_UI/Assets/Square44x44Logo.altform-unplated_targetsize-24.png b/UWPX_UI/Assets/Square44x44Logo.altform-unplated_targetsize-24.png
new file mode 100644
index 000000000..33051a964
Binary files /dev/null and b/UWPX_UI/Assets/Square44x44Logo.altform-unplated_targetsize-24.png differ
diff --git a/UWPX_UI/Assets/Square44x44Logo.altform-unplated_targetsize-256.png b/UWPX_UI/Assets/Square44x44Logo.altform-unplated_targetsize-256.png
new file mode 100644
index 000000000..4a1526c85
Binary files /dev/null and b/UWPX_UI/Assets/Square44x44Logo.altform-unplated_targetsize-256.png differ
diff --git a/UWPX_UI/Assets/Square44x44Logo.altform-unplated_targetsize-32.png b/UWPX_UI/Assets/Square44x44Logo.altform-unplated_targetsize-32.png
new file mode 100644
index 000000000..fc86188a4
Binary files /dev/null and b/UWPX_UI/Assets/Square44x44Logo.altform-unplated_targetsize-32.png differ
diff --git a/UWPX_UI/Assets/Square44x44Logo.altform-unplated_targetsize-48.png b/UWPX_UI/Assets/Square44x44Logo.altform-unplated_targetsize-48.png
new file mode 100644
index 000000000..67271c2e2
Binary files /dev/null and b/UWPX_UI/Assets/Square44x44Logo.altform-unplated_targetsize-48.png differ
diff --git a/UWPX_UI/Assets/Square44x44Logo.scale-100.png b/UWPX_UI/Assets/Square44x44Logo.scale-100.png
new file mode 100644
index 000000000..e4beecdfc
Binary files /dev/null and b/UWPX_UI/Assets/Square44x44Logo.scale-100.png differ
diff --git a/UWPX_UI/Assets/Square44x44Logo.scale-125.png b/UWPX_UI/Assets/Square44x44Logo.scale-125.png
new file mode 100644
index 000000000..8a7a54635
Binary files /dev/null and b/UWPX_UI/Assets/Square44x44Logo.scale-125.png differ
diff --git a/UWPX_UI/Assets/Square44x44Logo.scale-150.png b/UWPX_UI/Assets/Square44x44Logo.scale-150.png
new file mode 100644
index 000000000..d77ce0283
Binary files /dev/null and b/UWPX_UI/Assets/Square44x44Logo.scale-150.png differ
diff --git a/UWPX_UI/Assets/Square44x44Logo.scale-200.png b/UWPX_UI/Assets/Square44x44Logo.scale-200.png
new file mode 100644
index 000000000..12e409755
Binary files /dev/null and b/UWPX_UI/Assets/Square44x44Logo.scale-200.png differ
diff --git a/UWPX_UI/Assets/Square44x44Logo.scale-400.png b/UWPX_UI/Assets/Square44x44Logo.scale-400.png
new file mode 100644
index 000000000..bd13ec4b6
Binary files /dev/null and b/UWPX_UI/Assets/Square44x44Logo.scale-400.png differ
diff --git a/UWPX_UI/Assets/Square44x44Logo.targetsize-16.png b/UWPX_UI/Assets/Square44x44Logo.targetsize-16.png
new file mode 100644
index 000000000..c2bd8dca8
Binary files /dev/null and b/UWPX_UI/Assets/Square44x44Logo.targetsize-16.png differ
diff --git a/UWPX_UI/Assets/Square44x44Logo.targetsize-24.png b/UWPX_UI/Assets/Square44x44Logo.targetsize-24.png
new file mode 100644
index 000000000..7bf655767
Binary files /dev/null and b/UWPX_UI/Assets/Square44x44Logo.targetsize-24.png differ
diff --git a/UWPX_UI/Assets/Square44x44Logo.targetsize-256.png b/UWPX_UI/Assets/Square44x44Logo.targetsize-256.png
new file mode 100644
index 000000000..f5541d979
Binary files /dev/null and b/UWPX_UI/Assets/Square44x44Logo.targetsize-256.png differ
diff --git a/UWPX_UI/Assets/Square44x44Logo.targetsize-32.png b/UWPX_UI/Assets/Square44x44Logo.targetsize-32.png
new file mode 100644
index 000000000..004d99a86
Binary files /dev/null and b/UWPX_UI/Assets/Square44x44Logo.targetsize-32.png differ
diff --git a/UWPX_UI/Assets/Square44x44Logo.targetsize-48.png b/UWPX_UI/Assets/Square44x44Logo.targetsize-48.png
new file mode 100644
index 000000000..ecbf8544f
Binary files /dev/null and b/UWPX_UI/Assets/Square44x44Logo.targetsize-48.png differ
diff --git a/UWPX_UI/Assets/StoreLogo.scale-100.png b/UWPX_UI/Assets/StoreLogo.scale-100.png
new file mode 100644
index 000000000..34a7283bd
Binary files /dev/null and b/UWPX_UI/Assets/StoreLogo.scale-100.png differ
diff --git a/UWPX_UI/Assets/StoreLogo.scale-125.png b/UWPX_UI/Assets/StoreLogo.scale-125.png
new file mode 100644
index 000000000..290eb96a1
Binary files /dev/null and b/UWPX_UI/Assets/StoreLogo.scale-125.png differ
diff --git a/UWPX_UI/Assets/StoreLogo.scale-150.png b/UWPX_UI/Assets/StoreLogo.scale-150.png
new file mode 100644
index 000000000..e749a65e4
Binary files /dev/null and b/UWPX_UI/Assets/StoreLogo.scale-150.png differ
diff --git a/UWPX_UI/Assets/StoreLogo.scale-200.png b/UWPX_UI/Assets/StoreLogo.scale-200.png
new file mode 100644
index 000000000..86b3a427c
Binary files /dev/null and b/UWPX_UI/Assets/StoreLogo.scale-200.png differ
diff --git a/UWPX_UI/Assets/StoreLogo.scale-400.png b/UWPX_UI/Assets/StoreLogo.scale-400.png
new file mode 100644
index 000000000..9de41014f
Binary files /dev/null and b/UWPX_UI/Assets/StoreLogo.scale-400.png differ
diff --git a/UWPX_UI/Assets/Wide310x150Logo.scale-100.png b/UWPX_UI/Assets/Wide310x150Logo.scale-100.png
new file mode 100644
index 000000000..065ba0153
Binary files /dev/null and b/UWPX_UI/Assets/Wide310x150Logo.scale-100.png differ
diff --git a/UWPX_UI/Assets/Wide310x150Logo.scale-125.png b/UWPX_UI/Assets/Wide310x150Logo.scale-125.png
new file mode 100644
index 000000000..0e7d873b9
Binary files /dev/null and b/UWPX_UI/Assets/Wide310x150Logo.scale-125.png differ
diff --git a/UWPX_UI/Assets/Wide310x150Logo.scale-150.png b/UWPX_UI/Assets/Wide310x150Logo.scale-150.png
new file mode 100644
index 000000000..a5b2b3632
Binary files /dev/null and b/UWPX_UI/Assets/Wide310x150Logo.scale-150.png differ
diff --git a/UWPX_UI/Assets/Wide310x150Logo.scale-200.png b/UWPX_UI/Assets/Wide310x150Logo.scale-200.png
new file mode 100644
index 000000000..0dd70c216
Binary files /dev/null and b/UWPX_UI/Assets/Wide310x150Logo.scale-200.png differ
diff --git a/UWPX_UI/Assets/Wide310x150Logo.scale-400.png b/UWPX_UI/Assets/Wide310x150Logo.scale-400.png
new file mode 100644
index 000000000..6b1178e38
Binary files /dev/null and b/UWPX_UI/Assets/Wide310x150Logo.scale-400.png differ
diff --git a/UWPX_UI/Assets/uri_activation_icon.png b/UWPX_UI/Assets/uri_activation_icon.png
new file mode 100644
index 000000000..2b49dada4
Binary files /dev/null and b/UWPX_UI/Assets/uri_activation_icon.png differ
diff --git a/UWPX_UI/MainPage.xaml b/UWPX_UI/MainPage.xaml
new file mode 100644
index 000000000..9842b86fa
--- /dev/null
+++ b/UWPX_UI/MainPage.xaml
@@ -0,0 +1,14 @@
+
+
+
+
+
+
diff --git a/UWPX_UI/MainPage.xaml.cs b/UWPX_UI/MainPage.xaml.cs
new file mode 100644
index 000000000..c7e6fcc9f
--- /dev/null
+++ b/UWPX_UI/MainPage.xaml.cs
@@ -0,0 +1,30 @@
+using System;
+using System.Collections.Generic;
+using System.IO;
+using System.Linq;
+using System.Runtime.InteropServices.WindowsRuntime;
+using Windows.Foundation;
+using Windows.Foundation.Collections;
+using Windows.UI.Xaml;
+using Windows.UI.Xaml.Controls;
+using Windows.UI.Xaml.Controls.Primitives;
+using Windows.UI.Xaml.Data;
+using Windows.UI.Xaml.Input;
+using Windows.UI.Xaml.Media;
+using Windows.UI.Xaml.Navigation;
+
+// The Blank Page item template is documented at https://go.microsoft.com/fwlink/?LinkId=402352&clcid=0x409
+
+namespace UWPX_UI
+{
+ ///
+ /// An empty page that can be used on its own or navigated to within a Frame.
+ ///
+ public sealed partial class MainPage : Page
+ {
+ public MainPage()
+ {
+ this.InitializeComponent();
+ }
+ }
+}
diff --git a/UWPX_UI/Package.appxmanifest b/UWPX_UI/Package.appxmanifest
new file mode 100644
index 000000000..3f0b15cd3
--- /dev/null
+++ b/UWPX_UI/Package.appxmanifest
@@ -0,0 +1,40 @@
+
+
+
+
+
+ UWPX Alpha
+ Fabian Sauter
+ Assets\StoreLogo.png
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Assets\uri_activation_icon.png
+ XMPP
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/UWPX_UI/Properties/AssemblyInfo.cs b/UWPX_UI/Properties/AssemblyInfo.cs
new file mode 100644
index 000000000..2ee1a151a
--- /dev/null
+++ b/UWPX_UI/Properties/AssemblyInfo.cs
@@ -0,0 +1,29 @@
+using System.Reflection;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+// General Information about an assembly is controlled through the following
+// set of attributes. Change these attribute values to modify the information
+// associated with an assembly.
+[assembly: AssemblyTitle("UWPX_UI")]
+[assembly: AssemblyDescription("")]
+[assembly: AssemblyConfiguration("")]
+[assembly: AssemblyCompany("")]
+[assembly: AssemblyProduct("UWPX_UI")]
+[assembly: AssemblyCopyright("Copyright © 2018")]
+[assembly: AssemblyTrademark("")]
+[assembly: AssemblyCulture("")]
+
+// Version information for an assembly consists of the following four values:
+//
+// Major Version
+// Minor Version
+// Build Number
+// Revision
+//
+// You can specify all the values or you can default the Build and Revision Numbers
+// by using the '*' as shown below:
+// [assembly: AssemblyVersion("1.0.*")]
+[assembly: AssemblyVersion("1.0.0.0")]
+[assembly: AssemblyFileVersion("1.0.0.0")]
+[assembly: ComVisible(false)]
\ No newline at end of file
diff --git a/UWPX_UI/Properties/Default.rd.xml b/UWPX_UI/Properties/Default.rd.xml
new file mode 100644
index 000000000..af00722cd
--- /dev/null
+++ b/UWPX_UI/Properties/Default.rd.xml
@@ -0,0 +1,31 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/UWPX_UI/UWPX_UI.csproj b/UWPX_UI/UWPX_UI.csproj
new file mode 100644
index 000000000..b455ad6a9
--- /dev/null
+++ b/UWPX_UI/UWPX_UI.csproj
@@ -0,0 +1,254 @@
+
+
+
+
+ Debug
+ x86
+ {B7BC7072-3C07-4817-AA4C-89C7DC1E2E3C}
+ AppContainerExe
+ Properties
+ UWPX_UI
+ UWPX_UI
+ en-US
+ UAP
+ 10.0.17763.0
+ 10.0.15063.0
+ 14
+ 512
+ {A5A43C5B-DE2A-4C0C-9213-0A381AF9435A};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}
+ true
+ UWP XMPP Client_StoreKey.pfx
+ 5A79DAA0779BE03863D69413EE6E87B990B25073
+
+
+ true
+ bin\x86\Debug\
+ DEBUG;TRACE;NETFX_CORE;WINDOWS_UWP
+ ;2008
+ full
+ x86
+ false
+ prompt
+ true
+
+
+ bin\x86\Release\
+ TRACE;NETFX_CORE;WINDOWS_UWP
+ true
+ ;2008
+ pdbonly
+ x86
+ false
+ prompt
+ true
+ true
+
+
+ true
+ bin\ARM\Debug\
+ DEBUG;TRACE;NETFX_CORE;WINDOWS_UWP
+ ;2008
+ full
+ ARM
+ false
+ prompt
+ true
+
+
+ bin\ARM\Release\
+ TRACE;NETFX_CORE;WINDOWS_UWP
+ true
+ ;2008
+ pdbonly
+ ARM
+ false
+ prompt
+ true
+ true
+
+
+ true
+ bin\ARM64\Debug\
+ DEBUG;TRACE;NETFX_CORE;WINDOWS_UWP
+ ;2008
+ full
+ ARM64
+ false
+ prompt
+ true
+ true
+
+
+ bin\ARM64\Release\
+ TRACE;NETFX_CORE;WINDOWS_UWP
+ true
+ ;2008
+ pdbonly
+ ARM64
+ false
+ prompt
+ true
+ true
+
+
+ true
+ bin\x64\Debug\
+ DEBUG;TRACE;NETFX_CORE;WINDOWS_UWP
+ ;2008
+ full
+ x64
+ false
+ prompt
+ true
+
+
+ bin\x64\Release\
+ TRACE;NETFX_CORE;WINDOWS_UWP
+ true
+ ;2008
+ pdbonly
+ x64
+ false
+ prompt
+ true
+ true
+
+
+ PackageReference
+
+
+
+ App.xaml
+
+
+ MainPage.xaml
+
+
+
+
+
+ Designer
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ MSBuild:Compile
+ Designer
+
+
+ MSBuild:Compile
+ Designer
+
+
+
+
+ 1.11.0
+
+
+ 1.11.0
+
+
+ 1.11.0
+
+
+ 1.11.0
+
+
+ 6.2.3
+
+
+ 4.0.0
+
+
+ 4.0.0
+
+
+ 4.0.0
+
+
+ 4.0.0
+
+
+ 2.0.181018003
+
+
+ 0.1.2
+
+
+
+
+
+
+
+ {e44b7351-2905-4ae7-8b56-5a5854cbbcf3}
+ UWPX_UI_Context
+
+
+
+ 14.0
+
+
+
+
\ No newline at end of file
diff --git a/UWPX_UI_Context/Classes/UiUtils.cs b/UWPX_UI_Context/Classes/UiUtils.cs
new file mode 100644
index 000000000..03e3a9446
--- /dev/null
+++ b/UWPX_UI_Context/Classes/UiUtils.cs
@@ -0,0 +1,63 @@
+using Windows.UI.Xaml;
+using Windows.UI.Xaml.Media;
+using XMPP_API.Classes;
+
+namespace UWPX_UI_Context.Classes
+{
+ static class UiUtils
+ {
+ //--------------------------------------------------------Attributes:-----------------------------------------------------------------\\
+ #region --Attributes--
+
+
+ #endregion
+ //--------------------------------------------------------Set-, Get- Methods:---------------------------------------------------------\\
+ #region --Set-, Get- Methods--
+ public static SolidColorBrush getPresenceBrush(Presence presence)
+ {
+ switch (presence)
+ {
+ case Presence.Online:
+ return (SolidColorBrush)Application.Current.Resources["PresenceOnline"];
+
+ case Presence.Chat:
+ return (SolidColorBrush)Application.Current.Resources["PresenceChat"];
+
+ case Presence.Away:
+ return (SolidColorBrush)Application.Current.Resources["PresenceAway"];
+
+ case Presence.Xa:
+ return (SolidColorBrush)Application.Current.Resources["PresenceXa"];
+
+ case Presence.Dnd:
+ return (SolidColorBrush)Application.Current.Resources["PresenceDnd"];
+
+ default:
+ return (SolidColorBrush)Application.Current.Resources["PresenceUnavailable"];
+
+ }
+ }
+
+ #endregion
+ //--------------------------------------------------------Misc Methods:---------------------------------------------------------------\\
+ #region --Misc Methods (Public)--
+
+
+ #endregion
+
+ #region --Misc Methods (Private)--
+
+
+ #endregion
+
+ #region --Misc Methods (Protected)--
+
+
+ #endregion
+ //--------------------------------------------------------Events:---------------------------------------------------------------------\\
+ #region --Events--
+
+
+ #endregion
+ }
+}
diff --git a/UWPX_UI_Context/Classes/ValueConverter/PresenceBrushValueConverter.cs b/UWPX_UI_Context/Classes/ValueConverter/PresenceBrushValueConverter.cs
new file mode 100644
index 000000000..32343ef44
--- /dev/null
+++ b/UWPX_UI_Context/Classes/ValueConverter/PresenceBrushValueConverter.cs
@@ -0,0 +1,57 @@
+using System;
+using Windows.UI.Xaml.Data;
+using XMPP_API.Classes;
+
+namespace UWPX_UI_Context.Classes.ValueConverter
+{
+ public sealed class PresenceBrushValueConverter : IValueConverter
+ {
+ //--------------------------------------------------------Attributes:-----------------------------------------------------------------\\
+ #region --Attributes--
+
+
+ #endregion
+ //--------------------------------------------------------Constructor:----------------------------------------------------------------\\
+ #region --Constructors--
+
+
+ #endregion
+ //--------------------------------------------------------Set-, Get- Methods:---------------------------------------------------------\\
+ #region --Set-, Get- Methods--
+
+
+ #endregion
+ //--------------------------------------------------------Misc Methods:---------------------------------------------------------------\\
+ #region --Misc Methods (Public)--
+ public object Convert(object value, Type targetType, object parameter, string language)
+ {
+ if (value is Presence p)
+ {
+ return UiUtils.getPresenceBrush(p);
+ }
+ return UiUtils.getPresenceBrush(Presence.Unavailable);
+ }
+
+ public object ConvertBack(object value, Type targetType, object parameter, string language)
+ {
+ throw new NotImplementedException();
+ }
+
+ #endregion
+
+ #region --Misc Methods (Private)--
+
+
+ #endregion
+
+ #region --Misc Methods (Protected)--
+
+
+ #endregion
+ //--------------------------------------------------------Events:---------------------------------------------------------------------\\
+ #region --Events--
+
+
+ #endregion
+ }
+}
diff --git a/UWPX_UI_Context/Properties/AssemblyInfo.cs b/UWPX_UI_Context/Properties/AssemblyInfo.cs
new file mode 100644
index 000000000..3e4a957f8
--- /dev/null
+++ b/UWPX_UI_Context/Properties/AssemblyInfo.cs
@@ -0,0 +1,29 @@
+using System.Reflection;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+// General Information about an assembly is controlled through the following
+// set of attributes. Change these attribute values to modify the information
+// associated with an assembly.
+[assembly: AssemblyTitle("UWPX_UI_Context")]
+[assembly: AssemblyDescription("")]
+[assembly: AssemblyConfiguration("")]
+[assembly: AssemblyCompany("")]
+[assembly: AssemblyProduct("UWPX_UI_Context")]
+[assembly: AssemblyCopyright("Copyright © 2018")]
+[assembly: AssemblyTrademark("")]
+[assembly: AssemblyCulture("")]
+
+// Version information for an assembly consists of the following four values:
+//
+// Major Version
+// Minor Version
+// Build Number
+// Revision
+//
+// You can specify all the values or you can default the Build and Revision Numbers
+// by using the '*' as shown below:
+// [assembly: AssemblyVersion("1.0.*")]
+[assembly: AssemblyVersion("1.0.0.0")]
+[assembly: AssemblyFileVersion("1.0.0.0")]
+[assembly: ComVisible(false)]
\ No newline at end of file
diff --git a/UWPX_UI_Context/UWPX_UI_Context.csproj b/UWPX_UI_Context/UWPX_UI_Context.csproj
new file mode 100644
index 000000000..ac57c9b67
--- /dev/null
+++ b/UWPX_UI_Context/UWPX_UI_Context.csproj
@@ -0,0 +1,154 @@
+
+
+
+
+ Debug
+ AnyCPU
+ {E44B7351-2905-4AE7-8B56-5A5854CBBCF3}
+ winmdobj
+ Properties
+ UWPX_UI_Context
+ UWPX_UI_Context
+ en-US
+ UAP
+ 10.0.17763.0
+ 10.0.15063.0
+ 14
+ 512
+ {A5A43C5B-DE2A-4C0C-9213-0A381AF9435A};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}
+ false
+
+
+ AnyCPU
+ true
+ full
+ false
+ bin\Debug\
+ DEBUG;TRACE;NETFX_CORE;WINDOWS_UWP
+ prompt
+ 4
+
+
+ AnyCPU
+ pdbonly
+ true
+ bin\Release\
+ TRACE;NETFX_CORE;WINDOWS_UWP
+ prompt
+ 4
+
+
+ x86
+ true
+ bin\x86\Debug\
+ DEBUG;TRACE;NETFX_CORE;WINDOWS_UWP
+ ;2008
+ full
+ false
+ prompt
+
+
+ x86
+ bin\x86\Release\
+ TRACE;NETFX_CORE;WINDOWS_UWP
+ true
+ ;2008
+ pdbonly
+ false
+ prompt
+
+
+ ARM
+ true
+ bin\ARM\Debug\
+ DEBUG;TRACE;NETFX_CORE;WINDOWS_UWP
+ ;2008
+ full
+ false
+ prompt
+
+
+ ARM
+ bin\ARM\Release\
+ TRACE;NETFX_CORE;WINDOWS_UWP
+ true
+ ;2008
+ pdbonly
+ false
+ prompt
+
+
+ ARM64
+ true
+ bin\ARM64\Debug\
+ DEBUG;TRACE;NETFX_CORE;WINDOWS_UWP
+ ;2008
+ full
+ false
+ prompt
+
+
+ ARM64
+ bin\ARM64\Release\
+ TRACE;NETFX_CORE;WINDOWS_UWP
+ true
+ ;2008
+ pdbonly
+ false
+ prompt
+
+
+ x64
+ true
+ bin\x64\Debug\
+ DEBUG;TRACE;NETFX_CORE;WINDOWS_UWP
+ ;2008
+ full
+ false
+ prompt
+
+
+ x64
+ bin\x64\Release\
+ TRACE;NETFX_CORE;WINDOWS_UWP
+ true
+ ;2008
+ pdbonly
+ false
+ prompt
+
+
+ PackageReference
+
+
+
+
+
+
+
+
+ 6.2.3
+
+
+
+
+
+
+
+
+ {899FB043-AF8B-4294-95B6-1482C79459AC}
+ XMPP_API
+
+
+
+ 14.0
+
+
+
+
\ No newline at end of file
diff --git a/UWP_XMPP_Client.sln b/UWP_XMPP_Client.sln
index f80f1d843..2d72f6a02 100644
--- a/UWP_XMPP_Client.sln
+++ b/UWP_XMPP_Client.sln
@@ -21,14 +21,20 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Component_Tests", "Componen
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "AES_GCM", "AES_GCM\AES_GCM.vcxproj", "{6FE90C15-0D01-4659-A760-109A38EC892A}"
EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "UWPX_UI", "UWPX_UI\UWPX_UI.csproj", "{B7BC7072-3C07-4817-AA4C-89C7DC1E2E3C}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "UWPX_UI_Context", "UWPX_UI_Context\UWPX_UI_Context.csproj", "{E44B7351-2905-4AE7-8B56-5A5854CBBCF3}"
+EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
Debug|ARM = Debug|ARM
+ Debug|ARM64 = Debug|ARM64
Debug|x64 = Debug|x64
Debug|x86 = Debug|x86
Release|Any CPU = Release|Any CPU
Release|ARM = Release|ARM
+ Release|ARM64 = Release|ARM64
Release|x64 = Release|x64
Release|x86 = Release|x86
EndGlobalSection
@@ -37,6 +43,9 @@ Global
{5E365F20-1835-4E4D-8A8B-9F805CD06DE7}.Debug|ARM.ActiveCfg = Debug|ARM
{5E365F20-1835-4E4D-8A8B-9F805CD06DE7}.Debug|ARM.Build.0 = Debug|ARM
{5E365F20-1835-4E4D-8A8B-9F805CD06DE7}.Debug|ARM.Deploy.0 = Debug|ARM
+ {5E365F20-1835-4E4D-8A8B-9F805CD06DE7}.Debug|ARM64.ActiveCfg = Debug|Any CPU
+ {5E365F20-1835-4E4D-8A8B-9F805CD06DE7}.Debug|ARM64.Build.0 = Debug|Any CPU
+ {5E365F20-1835-4E4D-8A8B-9F805CD06DE7}.Debug|ARM64.Deploy.0 = Debug|Any CPU
{5E365F20-1835-4E4D-8A8B-9F805CD06DE7}.Debug|x64.ActiveCfg = Debug|x64
{5E365F20-1835-4E4D-8A8B-9F805CD06DE7}.Debug|x64.Build.0 = Debug|x64
{5E365F20-1835-4E4D-8A8B-9F805CD06DE7}.Debug|x64.Deploy.0 = Debug|x64
@@ -47,6 +56,9 @@ Global
{5E365F20-1835-4E4D-8A8B-9F805CD06DE7}.Release|ARM.ActiveCfg = Release|ARM
{5E365F20-1835-4E4D-8A8B-9F805CD06DE7}.Release|ARM.Build.0 = Release|ARM
{5E365F20-1835-4E4D-8A8B-9F805CD06DE7}.Release|ARM.Deploy.0 = Release|ARM
+ {5E365F20-1835-4E4D-8A8B-9F805CD06DE7}.Release|ARM64.ActiveCfg = Release|Any CPU
+ {5E365F20-1835-4E4D-8A8B-9F805CD06DE7}.Release|ARM64.Build.0 = Release|Any CPU
+ {5E365F20-1835-4E4D-8A8B-9F805CD06DE7}.Release|ARM64.Deploy.0 = Release|Any CPU
{5E365F20-1835-4E4D-8A8B-9F805CD06DE7}.Release|x64.ActiveCfg = Release|x64
{5E365F20-1835-4E4D-8A8B-9F805CD06DE7}.Release|x64.Build.0 = Release|x64
{5E365F20-1835-4E4D-8A8B-9F805CD06DE7}.Release|x64.Deploy.0 = Release|x64
@@ -57,6 +69,8 @@ Global
{899FB043-AF8B-4294-95B6-1482C79459AC}.Debug|Any CPU.Build.0 = Debug|Any CPU
{899FB043-AF8B-4294-95B6-1482C79459AC}.Debug|ARM.ActiveCfg = Debug|ARM
{899FB043-AF8B-4294-95B6-1482C79459AC}.Debug|ARM.Build.0 = Debug|ARM
+ {899FB043-AF8B-4294-95B6-1482C79459AC}.Debug|ARM64.ActiveCfg = Debug|Any CPU
+ {899FB043-AF8B-4294-95B6-1482C79459AC}.Debug|ARM64.Build.0 = Debug|Any CPU
{899FB043-AF8B-4294-95B6-1482C79459AC}.Debug|x64.ActiveCfg = Debug|x64
{899FB043-AF8B-4294-95B6-1482C79459AC}.Debug|x64.Build.0 = Debug|x64
{899FB043-AF8B-4294-95B6-1482C79459AC}.Debug|x86.ActiveCfg = Debug|x86
@@ -65,6 +79,8 @@ Global
{899FB043-AF8B-4294-95B6-1482C79459AC}.Release|Any CPU.Build.0 = Release|Any CPU
{899FB043-AF8B-4294-95B6-1482C79459AC}.Release|ARM.ActiveCfg = Release|ARM
{899FB043-AF8B-4294-95B6-1482C79459AC}.Release|ARM.Build.0 = Release|ARM
+ {899FB043-AF8B-4294-95B6-1482C79459AC}.Release|ARM64.ActiveCfg = Release|Any CPU
+ {899FB043-AF8B-4294-95B6-1482C79459AC}.Release|ARM64.Build.0 = Release|Any CPU
{899FB043-AF8B-4294-95B6-1482C79459AC}.Release|x64.ActiveCfg = Release|x64
{899FB043-AF8B-4294-95B6-1482C79459AC}.Release|x64.Build.0 = Release|x64
{899FB043-AF8B-4294-95B6-1482C79459AC}.Release|x86.ActiveCfg = Release|x86
@@ -73,6 +89,8 @@ Global
{53BB5463-9646-4F79-BE97-3D73473AAD92}.Debug|Any CPU.Build.0 = Debug|Any CPU
{53BB5463-9646-4F79-BE97-3D73473AAD92}.Debug|ARM.ActiveCfg = Debug|ARM
{53BB5463-9646-4F79-BE97-3D73473AAD92}.Debug|ARM.Build.0 = Debug|ARM
+ {53BB5463-9646-4F79-BE97-3D73473AAD92}.Debug|ARM64.ActiveCfg = Debug|Any CPU
+ {53BB5463-9646-4F79-BE97-3D73473AAD92}.Debug|ARM64.Build.0 = Debug|Any CPU
{53BB5463-9646-4F79-BE97-3D73473AAD92}.Debug|x64.ActiveCfg = Debug|x64
{53BB5463-9646-4F79-BE97-3D73473AAD92}.Debug|x64.Build.0 = Debug|x64
{53BB5463-9646-4F79-BE97-3D73473AAD92}.Debug|x86.ActiveCfg = Debug|x86
@@ -81,6 +99,8 @@ Global
{53BB5463-9646-4F79-BE97-3D73473AAD92}.Release|Any CPU.Build.0 = Release|Any CPU
{53BB5463-9646-4F79-BE97-3D73473AAD92}.Release|ARM.ActiveCfg = Release|ARM
{53BB5463-9646-4F79-BE97-3D73473AAD92}.Release|ARM.Build.0 = Release|ARM
+ {53BB5463-9646-4F79-BE97-3D73473AAD92}.Release|ARM64.ActiveCfg = Release|Any CPU
+ {53BB5463-9646-4F79-BE97-3D73473AAD92}.Release|ARM64.Build.0 = Release|Any CPU
{53BB5463-9646-4F79-BE97-3D73473AAD92}.Release|x64.ActiveCfg = Release|x64
{53BB5463-9646-4F79-BE97-3D73473AAD92}.Release|x64.Build.0 = Release|x64
{53BB5463-9646-4F79-BE97-3D73473AAD92}.Release|x86.ActiveCfg = Release|x86
@@ -89,6 +109,8 @@ Global
{2343CA08-3D0A-4412-A0ED-E8E68E0E208B}.Debug|Any CPU.Build.0 = Debug|Any CPU
{2343CA08-3D0A-4412-A0ED-E8E68E0E208B}.Debug|ARM.ActiveCfg = Debug|ARM
{2343CA08-3D0A-4412-A0ED-E8E68E0E208B}.Debug|ARM.Build.0 = Debug|ARM
+ {2343CA08-3D0A-4412-A0ED-E8E68E0E208B}.Debug|ARM64.ActiveCfg = Debug|Any CPU
+ {2343CA08-3D0A-4412-A0ED-E8E68E0E208B}.Debug|ARM64.Build.0 = Debug|Any CPU
{2343CA08-3D0A-4412-A0ED-E8E68E0E208B}.Debug|x64.ActiveCfg = Debug|x64
{2343CA08-3D0A-4412-A0ED-E8E68E0E208B}.Debug|x64.Build.0 = Debug|x64
{2343CA08-3D0A-4412-A0ED-E8E68E0E208B}.Debug|x86.ActiveCfg = Debug|x86
@@ -97,6 +119,8 @@ Global
{2343CA08-3D0A-4412-A0ED-E8E68E0E208B}.Release|Any CPU.Build.0 = Release|Any CPU
{2343CA08-3D0A-4412-A0ED-E8E68E0E208B}.Release|ARM.ActiveCfg = Release|ARM
{2343CA08-3D0A-4412-A0ED-E8E68E0E208B}.Release|ARM.Build.0 = Release|ARM
+ {2343CA08-3D0A-4412-A0ED-E8E68E0E208B}.Release|ARM64.ActiveCfg = Release|Any CPU
+ {2343CA08-3D0A-4412-A0ED-E8E68E0E208B}.Release|ARM64.Build.0 = Release|Any CPU
{2343CA08-3D0A-4412-A0ED-E8E68E0E208B}.Release|x64.ActiveCfg = Release|x64
{2343CA08-3D0A-4412-A0ED-E8E68E0E208B}.Release|x64.Build.0 = Release|x64
{2343CA08-3D0A-4412-A0ED-E8E68E0E208B}.Release|x86.ActiveCfg = Release|x86
@@ -105,6 +129,8 @@ Global
{CB58CE53-8E53-49C8-9936-15FE2EA6A7EB}.Debug|Any CPU.Build.0 = Debug|Any CPU
{CB58CE53-8E53-49C8-9936-15FE2EA6A7EB}.Debug|ARM.ActiveCfg = Debug|ARM
{CB58CE53-8E53-49C8-9936-15FE2EA6A7EB}.Debug|ARM.Build.0 = Debug|ARM
+ {CB58CE53-8E53-49C8-9936-15FE2EA6A7EB}.Debug|ARM64.ActiveCfg = Debug|Any CPU
+ {CB58CE53-8E53-49C8-9936-15FE2EA6A7EB}.Debug|ARM64.Build.0 = Debug|Any CPU
{CB58CE53-8E53-49C8-9936-15FE2EA6A7EB}.Debug|x64.ActiveCfg = Debug|x64
{CB58CE53-8E53-49C8-9936-15FE2EA6A7EB}.Debug|x64.Build.0 = Debug|x64
{CB58CE53-8E53-49C8-9936-15FE2EA6A7EB}.Debug|x86.ActiveCfg = Debug|x86
@@ -113,6 +139,8 @@ Global
{CB58CE53-8E53-49C8-9936-15FE2EA6A7EB}.Release|Any CPU.Build.0 = Release|Any CPU
{CB58CE53-8E53-49C8-9936-15FE2EA6A7EB}.Release|ARM.ActiveCfg = Release|ARM
{CB58CE53-8E53-49C8-9936-15FE2EA6A7EB}.Release|ARM.Build.0 = Release|ARM
+ {CB58CE53-8E53-49C8-9936-15FE2EA6A7EB}.Release|ARM64.ActiveCfg = Release|Any CPU
+ {CB58CE53-8E53-49C8-9936-15FE2EA6A7EB}.Release|ARM64.Build.0 = Release|Any CPU
{CB58CE53-8E53-49C8-9936-15FE2EA6A7EB}.Release|x64.ActiveCfg = Release|x64
{CB58CE53-8E53-49C8-9936-15FE2EA6A7EB}.Release|x64.Build.0 = Release|x64
{CB58CE53-8E53-49C8-9936-15FE2EA6A7EB}.Release|x86.ActiveCfg = Release|x86
@@ -121,6 +149,8 @@ Global
{A8DA7BD0-DC43-4F30-AB1E-3FCF942274E4}.Debug|Any CPU.Build.0 = Debug|Any CPU
{A8DA7BD0-DC43-4F30-AB1E-3FCF942274E4}.Debug|ARM.ActiveCfg = Debug|ARM
{A8DA7BD0-DC43-4F30-AB1E-3FCF942274E4}.Debug|ARM.Build.0 = Debug|ARM
+ {A8DA7BD0-DC43-4F30-AB1E-3FCF942274E4}.Debug|ARM64.ActiveCfg = Debug|Any CPU
+ {A8DA7BD0-DC43-4F30-AB1E-3FCF942274E4}.Debug|ARM64.Build.0 = Debug|Any CPU
{A8DA7BD0-DC43-4F30-AB1E-3FCF942274E4}.Debug|x64.ActiveCfg = Debug|x64
{A8DA7BD0-DC43-4F30-AB1E-3FCF942274E4}.Debug|x64.Build.0 = Debug|x64
{A8DA7BD0-DC43-4F30-AB1E-3FCF942274E4}.Debug|x86.ActiveCfg = Debug|x86
@@ -129,6 +159,8 @@ Global
{A8DA7BD0-DC43-4F30-AB1E-3FCF942274E4}.Release|Any CPU.Build.0 = Release|Any CPU
{A8DA7BD0-DC43-4F30-AB1E-3FCF942274E4}.Release|ARM.ActiveCfg = Release|ARM
{A8DA7BD0-DC43-4F30-AB1E-3FCF942274E4}.Release|ARM.Build.0 = Release|ARM
+ {A8DA7BD0-DC43-4F30-AB1E-3FCF942274E4}.Release|ARM64.ActiveCfg = Release|Any CPU
+ {A8DA7BD0-DC43-4F30-AB1E-3FCF942274E4}.Release|ARM64.Build.0 = Release|Any CPU
{A8DA7BD0-DC43-4F30-AB1E-3FCF942274E4}.Release|x64.ActiveCfg = Release|x64
{A8DA7BD0-DC43-4F30-AB1E-3FCF942274E4}.Release|x64.Build.0 = Release|x64
{A8DA7BD0-DC43-4F30-AB1E-3FCF942274E4}.Release|x86.ActiveCfg = Release|x86
@@ -137,6 +169,8 @@ Global
{60938C69-A2D7-4C27-8B73-84C203BD4787}.Debug|Any CPU.Build.0 = Debug|Any CPU
{60938C69-A2D7-4C27-8B73-84C203BD4787}.Debug|ARM.ActiveCfg = Debug|ARM
{60938C69-A2D7-4C27-8B73-84C203BD4787}.Debug|ARM.Build.0 = Debug|ARM
+ {60938C69-A2D7-4C27-8B73-84C203BD4787}.Debug|ARM64.ActiveCfg = Debug|Any CPU
+ {60938C69-A2D7-4C27-8B73-84C203BD4787}.Debug|ARM64.Build.0 = Debug|Any CPU
{60938C69-A2D7-4C27-8B73-84C203BD4787}.Debug|x64.ActiveCfg = Debug|x64
{60938C69-A2D7-4C27-8B73-84C203BD4787}.Debug|x64.Build.0 = Debug|x64
{60938C69-A2D7-4C27-8B73-84C203BD4787}.Debug|x86.ActiveCfg = Debug|x86
@@ -145,6 +179,8 @@ Global
{60938C69-A2D7-4C27-8B73-84C203BD4787}.Release|Any CPU.Build.0 = Release|Any CPU
{60938C69-A2D7-4C27-8B73-84C203BD4787}.Release|ARM.ActiveCfg = Release|ARM
{60938C69-A2D7-4C27-8B73-84C203BD4787}.Release|ARM.Build.0 = Release|ARM
+ {60938C69-A2D7-4C27-8B73-84C203BD4787}.Release|ARM64.ActiveCfg = Release|Any CPU
+ {60938C69-A2D7-4C27-8B73-84C203BD4787}.Release|ARM64.Build.0 = Release|Any CPU
{60938C69-A2D7-4C27-8B73-84C203BD4787}.Release|x64.ActiveCfg = Release|x64
{60938C69-A2D7-4C27-8B73-84C203BD4787}.Release|x64.Build.0 = Release|x64
{60938C69-A2D7-4C27-8B73-84C203BD4787}.Release|x86.ActiveCfg = Release|x86
@@ -153,6 +189,7 @@ Global
{0C3E37F5-FF21-41B5-8C9F-492A5536471C}.Debug|ARM.ActiveCfg = Debug|ARM
{0C3E37F5-FF21-41B5-8C9F-492A5536471C}.Debug|ARM.Build.0 = Debug|ARM
{0C3E37F5-FF21-41B5-8C9F-492A5536471C}.Debug|ARM.Deploy.0 = Debug|ARM
+ {0C3E37F5-FF21-41B5-8C9F-492A5536471C}.Debug|ARM64.ActiveCfg = Debug|x86
{0C3E37F5-FF21-41B5-8C9F-492A5536471C}.Debug|x64.ActiveCfg = Debug|x64
{0C3E37F5-FF21-41B5-8C9F-492A5536471C}.Debug|x64.Build.0 = Debug|x64
{0C3E37F5-FF21-41B5-8C9F-492A5536471C}.Debug|x64.Deploy.0 = Debug|x64
@@ -163,6 +200,7 @@ Global
{0C3E37F5-FF21-41B5-8C9F-492A5536471C}.Release|ARM.ActiveCfg = Release|ARM
{0C3E37F5-FF21-41B5-8C9F-492A5536471C}.Release|ARM.Build.0 = Release|ARM
{0C3E37F5-FF21-41B5-8C9F-492A5536471C}.Release|ARM.Deploy.0 = Release|ARM
+ {0C3E37F5-FF21-41B5-8C9F-492A5536471C}.Release|ARM64.ActiveCfg = Release|x86
{0C3E37F5-FF21-41B5-8C9F-492A5536471C}.Release|x64.ActiveCfg = Release|x64
{0C3E37F5-FF21-41B5-8C9F-492A5536471C}.Release|x64.Build.0 = Release|x64
{0C3E37F5-FF21-41B5-8C9F-492A5536471C}.Release|x64.Deploy.0 = Release|x64
@@ -172,6 +210,7 @@ Global
{6FE90C15-0D01-4659-A760-109A38EC892A}.Debug|Any CPU.ActiveCfg = Debug|Win32
{6FE90C15-0D01-4659-A760-109A38EC892A}.Debug|ARM.ActiveCfg = Debug|ARM
{6FE90C15-0D01-4659-A760-109A38EC892A}.Debug|ARM.Build.0 = Debug|ARM
+ {6FE90C15-0D01-4659-A760-109A38EC892A}.Debug|ARM64.ActiveCfg = Debug|Win32
{6FE90C15-0D01-4659-A760-109A38EC892A}.Debug|x64.ActiveCfg = Debug|x64
{6FE90C15-0D01-4659-A760-109A38EC892A}.Debug|x64.Build.0 = Debug|x64
{6FE90C15-0D01-4659-A760-109A38EC892A}.Debug|x86.ActiveCfg = Debug|Win32
@@ -179,10 +218,57 @@ Global
{6FE90C15-0D01-4659-A760-109A38EC892A}.Release|Any CPU.ActiveCfg = Release|Win32
{6FE90C15-0D01-4659-A760-109A38EC892A}.Release|ARM.ActiveCfg = Release|ARM
{6FE90C15-0D01-4659-A760-109A38EC892A}.Release|ARM.Build.0 = Release|ARM
+ {6FE90C15-0D01-4659-A760-109A38EC892A}.Release|ARM64.ActiveCfg = Release|Win32
{6FE90C15-0D01-4659-A760-109A38EC892A}.Release|x64.ActiveCfg = Release|x64
{6FE90C15-0D01-4659-A760-109A38EC892A}.Release|x64.Build.0 = Release|x64
{6FE90C15-0D01-4659-A760-109A38EC892A}.Release|x86.ActiveCfg = Release|Win32
{6FE90C15-0D01-4659-A760-109A38EC892A}.Release|x86.Build.0 = Release|Win32
+ {B7BC7072-3C07-4817-AA4C-89C7DC1E2E3C}.Debug|Any CPU.ActiveCfg = Debug|x86
+ {B7BC7072-3C07-4817-AA4C-89C7DC1E2E3C}.Debug|ARM.ActiveCfg = Debug|ARM
+ {B7BC7072-3C07-4817-AA4C-89C7DC1E2E3C}.Debug|ARM.Build.0 = Debug|ARM
+ {B7BC7072-3C07-4817-AA4C-89C7DC1E2E3C}.Debug|ARM.Deploy.0 = Debug|ARM
+ {B7BC7072-3C07-4817-AA4C-89C7DC1E2E3C}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {B7BC7072-3C07-4817-AA4C-89C7DC1E2E3C}.Debug|ARM64.Build.0 = Debug|ARM64
+ {B7BC7072-3C07-4817-AA4C-89C7DC1E2E3C}.Debug|ARM64.Deploy.0 = Debug|ARM64
+ {B7BC7072-3C07-4817-AA4C-89C7DC1E2E3C}.Debug|x64.ActiveCfg = Debug|x64
+ {B7BC7072-3C07-4817-AA4C-89C7DC1E2E3C}.Debug|x64.Build.0 = Debug|x64
+ {B7BC7072-3C07-4817-AA4C-89C7DC1E2E3C}.Debug|x64.Deploy.0 = Debug|x64
+ {B7BC7072-3C07-4817-AA4C-89C7DC1E2E3C}.Debug|x86.ActiveCfg = Debug|x86
+ {B7BC7072-3C07-4817-AA4C-89C7DC1E2E3C}.Debug|x86.Build.0 = Debug|x86
+ {B7BC7072-3C07-4817-AA4C-89C7DC1E2E3C}.Debug|x86.Deploy.0 = Debug|x86
+ {B7BC7072-3C07-4817-AA4C-89C7DC1E2E3C}.Release|Any CPU.ActiveCfg = Release|x86
+ {B7BC7072-3C07-4817-AA4C-89C7DC1E2E3C}.Release|ARM.ActiveCfg = Release|ARM
+ {B7BC7072-3C07-4817-AA4C-89C7DC1E2E3C}.Release|ARM.Build.0 = Release|ARM
+ {B7BC7072-3C07-4817-AA4C-89C7DC1E2E3C}.Release|ARM.Deploy.0 = Release|ARM
+ {B7BC7072-3C07-4817-AA4C-89C7DC1E2E3C}.Release|ARM64.ActiveCfg = Release|ARM64
+ {B7BC7072-3C07-4817-AA4C-89C7DC1E2E3C}.Release|ARM64.Build.0 = Release|ARM64
+ {B7BC7072-3C07-4817-AA4C-89C7DC1E2E3C}.Release|ARM64.Deploy.0 = Release|ARM64
+ {B7BC7072-3C07-4817-AA4C-89C7DC1E2E3C}.Release|x64.ActiveCfg = Release|x64
+ {B7BC7072-3C07-4817-AA4C-89C7DC1E2E3C}.Release|x64.Build.0 = Release|x64
+ {B7BC7072-3C07-4817-AA4C-89C7DC1E2E3C}.Release|x64.Deploy.0 = Release|x64
+ {B7BC7072-3C07-4817-AA4C-89C7DC1E2E3C}.Release|x86.ActiveCfg = Release|x86
+ {B7BC7072-3C07-4817-AA4C-89C7DC1E2E3C}.Release|x86.Build.0 = Release|x86
+ {B7BC7072-3C07-4817-AA4C-89C7DC1E2E3C}.Release|x86.Deploy.0 = Release|x86
+ {E44B7351-2905-4AE7-8B56-5A5854CBBCF3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {E44B7351-2905-4AE7-8B56-5A5854CBBCF3}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {E44B7351-2905-4AE7-8B56-5A5854CBBCF3}.Debug|ARM.ActiveCfg = Debug|ARM
+ {E44B7351-2905-4AE7-8B56-5A5854CBBCF3}.Debug|ARM.Build.0 = Debug|ARM
+ {E44B7351-2905-4AE7-8B56-5A5854CBBCF3}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {E44B7351-2905-4AE7-8B56-5A5854CBBCF3}.Debug|ARM64.Build.0 = Debug|ARM64
+ {E44B7351-2905-4AE7-8B56-5A5854CBBCF3}.Debug|x64.ActiveCfg = Debug|x64
+ {E44B7351-2905-4AE7-8B56-5A5854CBBCF3}.Debug|x64.Build.0 = Debug|x64
+ {E44B7351-2905-4AE7-8B56-5A5854CBBCF3}.Debug|x86.ActiveCfg = Debug|x86
+ {E44B7351-2905-4AE7-8B56-5A5854CBBCF3}.Debug|x86.Build.0 = Debug|x86
+ {E44B7351-2905-4AE7-8B56-5A5854CBBCF3}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {E44B7351-2905-4AE7-8B56-5A5854CBBCF3}.Release|Any CPU.Build.0 = Release|Any CPU
+ {E44B7351-2905-4AE7-8B56-5A5854CBBCF3}.Release|ARM.ActiveCfg = Release|ARM
+ {E44B7351-2905-4AE7-8B56-5A5854CBBCF3}.Release|ARM.Build.0 = Release|ARM
+ {E44B7351-2905-4AE7-8B56-5A5854CBBCF3}.Release|ARM64.ActiveCfg = Release|ARM64
+ {E44B7351-2905-4AE7-8B56-5A5854CBBCF3}.Release|ARM64.Build.0 = Release|ARM64
+ {E44B7351-2905-4AE7-8B56-5A5854CBBCF3}.Release|x64.ActiveCfg = Release|x64
+ {E44B7351-2905-4AE7-8B56-5A5854CBBCF3}.Release|x64.Build.0 = Release|x64
+ {E44B7351-2905-4AE7-8B56-5A5854CBBCF3}.Release|x86.ActiveCfg = Release|x86
+ {E44B7351-2905-4AE7-8B56-5A5854CBBCF3}.Release|x86.Build.0 = Release|x86
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE